西安交通大学现代远程教育课程 软件工程概论 Belady和 Lehman提出了一个计算维护工作量的模型: M=p+K×eC0 其中M:软件维护所有的工作量; p:生产性工作量(分析、设计、编码及测试); K:经验常数; C:复杂程度; d:维护人员对软件的熟悉程度。 该模型描述了影响维护的诸多因素中重要的关系。如 果一个系统开发没有遵循软件工程原则,软件结构不好, c的值就会很高,再加上维护人员对软件的不熟悉,d的值 很低。结果是,维护的成本呈指数级的增长 主讲教师:刘海岩副教授
6 Belady和Lehman提出了一个计算维护工作量的模型: M=p+K×e (c- d) 其中 M:软件维护所有的工作量; p:生产性工作量(分析、设计、编码及测试); K:经验常数; c:复杂程度; d:维护人员对软件的熟悉程度。 该模型描述了影响维护的诸多因素中重要的关系。如 果一个系统开发没有遵循软件工程原则,软件结构不好, c的值就会很高,再加上维护人员对软件的不熟悉,d的值 很低。结果是,维护的成本呈指数级的增长
西安交通大学现代远程教育课程 软件工程概论 如何降低软件维护的费用? (1)从开发阶段的一开始就按质量标准构建系统,给 予“可维护性”属性以足够的重视,这样可以使系统的整 个生命周期成本减少。下图说明了这个问题。系统1在开 发成本中多投入$25000,用于提高系统的可维护性,结 果在整个生命周期中节省了$100000的维护成本。 系统1 系统2 0501001502002503035040045050千美元 □开发成本 □维护成本 开发和维护成本 主讲教师:刘海岩副教授
7 如何降低软件维护的费用? (1)从开发阶段的一开始就按质量标准构建系统,给 予“可维护性”属性以足够的重视,这样可以使系统的整 个生命周期成本减少。下图说明了这个问题。系统1在开 发成本中多投入$25000,用于提高系统的可维护性,结 果在整个生命周期中节省了$100 000的维护成本
西安交通大学现代远程教育课程 软件工程概论 (2)采用演化式的系统开发模型(如增量、螺旋) 建立能结合新需求而演化和变更的系统 (3)实施软件再工程,改善系统结构,提高可维 护性。 8 主讲教师:刘海岩副教授
8 (2)采用演化式的系统开发模型(如增量、螺旋), 建立能结合新需求而演化和变更的系统。 (3)实施软件再工程,改善系统结构,提高可维 护性
西安交通大学现代远程教育课程 软件工程概论 62软件维护活动 Pfleeger和 Bohner(1990)提出了软件维护的一种模型, 其中包含了度量的反馈,见下图: 预防性 适应性 改正性 完善性 管理软 新系统 件维护性 变动 请求 分析软件 理解 实现维 解释波 (再)测试受 变动后果 软件的变动 护变动 动效应 影响的软件 已有系统 影响范围 复杂性 适应性 稳定性 可测试性 可追踪性 模块性 致性 检测性 导向图 文档自描述 完整性 软件维护活动 9 主讲教师:刘海岩副教授
9 6.2 软件维护活动 Pfleeger和Bohner(1990)提出了软件维护的一种模型, 其中包含了度量的反馈,见下图: