background image

1.4 维护成本

有形的软件维护成本是花费了多少钱,无形的维护成本有更大的影响:一些合理的修

复或修改请求不能及时安排,使得客户不满意;变更的结果引入新的故障,使得软件整体
质量下降;把软件人员抽调到维护工作中,干扰了软件开发工作。

软件维护的代价是降低了生产率,在做老程序的维护时非常明显。例如,开发每一行源

代码耗资

25 美元,维护每一行源代码需要耗资 1000 美元。维护工作量包括生产性活动

(如分析和评价、设计修改和实现)和 轮转 活动(如力图理解代码在做什么、试图判明数
据结构、接口特性、性能界限等)。

维护工作量的模型:

    

其中

是维护中消耗的总工作量,是上面描述的生产性工作量,是一个经验常数,

c

是因缺乏好的设计和文档而导致复杂性的度量,

是对软件熟悉程度的度量。

模型指明,如果使用了不好的软件开发方法(未按软件工程要求做),原来参加开发

的人员或小组不能参加维护,则工作量(及成本)将按指数级增加。

 软件维护活动

为了有效地进行软件维护,应事先就开始做组织工作。
A.首先建立维护的机构
B.申明提出维护申请报告的过程及评价的过程
C.为每一个维护申请规定标准的处理步骤
D.建立维护活动的登记制度以及规定评价和评审的标准。

2维护机构

除了较大的软件开发公司外,通常在软件维护工作方面,并不保持一个正式的组织机

构。
虽然不要求建立一个正式的维护机构,但是在开发部门确立一个非正式的维护机构则是非
常必要的。

维护申请提交给维护管理员,他把申请交给某个系统监督员去评价。一旦做出评价,由

修改负责人确定如何进行修改,在修改程序的过程中,由配置管理员严格把关,控制修改
的范围,对软件配置进行审计。在维护之前,就把责任明确下来,可以减少维护过程中的混
乱。

2软件维护申请报告

维护申请报告或称软件问题报告,由申请维护的用户填写。用户必须完整地说明产生错

误的情况,包括输入数据、错误清单以及其它有关材料。如果申请的是适应性维护或完善性
维护,用户必须提出一份修改说明书,列出所有希望的修改。维护申请报告将由维护管理员
和系统监督员来研究处理。他们应相应地做出软件修改报告,指明:所需修改变动的性质;
申请修改的优先级;为满足某个维护申请报告,所需的工作量;预计修改后的状况

.

软件修改报告应提交修改负责人,经批准后才能开始进一步安排维护工作。

尽管维护申请的类型不同,但都要进行同样的技术工作:修改软件需求说明;修改软

件设计;设计评审;对源程序做必要的修改;单元测试;集成测试

( 回归测试);确认测试;

d

c

Ke

p

M

+

=