软件维护:
软件维护的概念
软件维护活动
程序修改的步骤以及修改的副作用
可维护性
提高可维护性的方法
本章要点
①了解软件质量定义和软件质量度量
②软件维护的类型与策略
③软件维护的过程与管理方法
④软件可维护性的概念
⑤了解提高可维护性的方法
软件维护的概念:
软件维护的定义:在软件运行/维护阶段对软件产产品进行的修改就是所谓的维护
三种维护:改正性维护、适应性维护、完善性维护
影响维护工作量的因素:在软件的维护过程中,需要花费大量的工作量,从而直接影响了软件维护的成本
维护的问题:
① 理解别人写的程序困难,困难程度随软件配置成分减少而迅速增加
② 要维护的软件往往没有合适的文档或资料不全
③ 绝大多数软件设计时没有考虑将来的修改
④ 软件维护不是一项吸引人的工作
⑤ 软件人员经常流动,维护不能依靠原开发人员
⑥ 追踪软件的建立过程非常困难,或根本做不到
软件维护的策略:改正性维护、适应性维护、完善性维护
改正性维护:目的是改正在开发周期间未能发现的遗留错误,并加以改正,大约占总维护量的20%。
适应性维护:指软件适应运行环境的改变而进行的一类维护,包括—因硬件或支持软件改变引起的变化 ---将软件移植到新机器上 ---软件使用对象的较少改变
完善性维护:指提高软件性能和软件可维护而对软件修改的过程,是软件维护中最主要部分,约占50%
预防性维护:为了给未来的改变奠定更好的基础而修改软件的维护活动,这项维护相对来说少些
维护成本:有形的软件维护成本是花费了多少钱,无形的维护成本有更大的影响
维护工作量的模型:M=P+K*e的(c-d)次方
M是维护中消耗的总工作量
P是上面描述的生产性工作量
K是一个经验常数
C是因缺乏好的设计和文档而导致复杂性的度量
D是对软件熟悉程度的度量
软件维护的活动:为了有效的进行软件维护,应事先就开始做组织工作
维护机构:除了较大的软件开发公司外,通常在软件维护工作方面,并不保持一个正式的组织机构
软件维护申请报告:维护申请报告或称软件问题报告,由申请维护的用户填写。
如果申请的是适应性维护或完善性维护,用户必须提出一份修改说明书,列出所有希望的修改