自己做的腾讯充值网站,wordpress DUX文章加挂产品,北京丰台区网站建设公司,看房网文章目录8.1 软件维护的定义8.2 软件维护的特点8.3 软件维护过程8.4 软件的可维护性8.5 预防性维护8.6 软件再工程过程维护的基本任务:保证软件在一个相当长的时期能够正常运行软件工程的主要目的就是要提高软件的可维护性,减少软件维护所需要的工作量&a… 文章目录
- 8.1 软件维护的定义
 - 8.2 软件维护的特点
 - 8.3 软件维护过程
 - 8.4 软件的可维护性
 - 8.5 预防性维护
 - 8.6 软件再工程过程
 
  
 
 
- 维护的基本任务:保证软件在一个相当长的时期能够正常运行
 - 软件工程的主要目的就是要提高软件的可维护性,减少软件维护所需要的工作量,降低软件系统的总成本。
 
 
8.1 软件维护的定义
 
- 定义 
- 软件维护是在软件已经交付使用后,为了改正错误或满足新的需要而修改软件的过程。
 
  - 分类 
- (1)改正性维护;
 - (2)适应性维护;
 - (3)完善性维护;
 - (4)预防性维护。
 
  
 
8.2 软件维护的特点
 
- 结构化维护与非结构化维护差别巨大 
- 结构化维护(有一个完整的软件配置)
 - 非结构化维护(内部文档不足)
 
  - 维护的代价高昂 
- 软件维护中无形的代价有: 
- (1)软件维护的费用高昂。
 - (2)因为可用的资源必须供维护任务使用,以致耽误甚至丧失了开发的良机。
 - (3)生产率的大幅度下降。
 
  
  - 维护的问题很多 
- (1)理解别人写的程序非常困难,而且困难程度随着软件配置成分的减少而迅速增加。
 - (2)需要维护的软件往往没有合格的文档,或者文档资料显著不足。
 - (3)当要求对软件进行维护时,不能指望由开发人员给人们仔细说明软件。
 - (4)绝大多数软件在设计时没有考虑将来的修改。
 - (5)软件维护不是一项吸引人的工作。
 
  
 
8.3 软件维护过程
 
- 定义 
- 维护过程本质上是修改和压缩了的软件定义和开发过程。
 
  - 具体过程 
- (1)建立维护组织;
 - (2)书写维护报告;
 - (3)规定维护的事件流;  
 
  - (4)保存维护记录;
 - (5)评价维护活动。
 
 
8.4 软件的可维护性
 
- 定义 
- 可维护性指的是维护人员理解、改正、改动或改进这个软件的难易程度。
 
  - 决定软件可维护性的因素 
- (1)可理解性;
 - (2)可测试性;
 - (3)可修改性;
 - (4)可移植性;
 - (5)可重用性。
 
  - 文档 
- (1)重要性 
- 文档是影响软件可维护性的决定因素,文档比程序代码更重要。
 - 只有和程序代码完全一致的文档才是真正有价值的文档。
 
  - (2)分类  
 
  
 
8.5 预防性维护
 
- 定义 
- 预防性维护指的是把今天的方法学应用到昨天的系统上,以支持明天的需求。
 
  - 实质  
 
 
8.6 软件再工程过程
 
- 典型软件再工程模型 
- 典型的软件再工程过程模型如图所示。
 
- 【注意】在某些情况下这些活动以线性顺序发生,但也并非总是这样。
 
  - 六类活动 
- (1)库存目录分析;
 - (2)文档重构;
 - (3)逆向工程:分析程序,在高于源代码的抽象层次上表示程序的过程。;
 - (4)代码重构;
 - (5)数据重构;
 - (6)正向工程:不仅从现有程序中恢复设计信息,而且使用革新和改造使用信息去改变或重构现有系统。