软件工程课件 第九章 软件维护.pptVIP

  • 0
  • 0
  • 约1.5千字
  • 约 10页
  • 2019-12-23 发布于湖北
  • 举报
9.1 软件维护的类型 软件维护是指软件系统交付使用以后,为了改正错误或满足新的需求而修改软件的过程。按照不同的维护目的,维护工作可分成4类。 软件维护的类型 四类软件维护的比例 二、维护的步骤 三、维护工作的组织管理 软件维护工作不仅是技术性的,它还需要大量的管理工作与之相配合,才能保证维护工作的质量。管理部门应对提交的修改方案进行分析和审查,并对修改带来的影响作充分的估计,对于不妥的修改予以撤销。需修改主文档时,管理部门更应仔细审查。 软件维护的管理流程如图所示: 软件维护的管理流程 9.2 软件维护的特性 一、结构化维护与非结构化维护 结构化维护 — 指软件开发过程是按照软件工 程方法,软件的维护过程,有一整套完整的方案、 技术、审定过程。 非结构化维护 — 缺乏必要的文档说明,难于 确定数据结构、系统接口等特性。维护工作令人生畏,事倍功半。 二、软件维护的代价 维护费用高达开发费用的55% — 70%,而 且逐年上涨。 维护中还可能引入新的潜在错误。 Belady 和 Lehman 提出软件维护工作模型: M=P+K*EXP(C - D) 其中: M—维护总工作量 P—生产性活动 K—经验常数 C—程序复杂度(由非结构化维护引起的) D—对维护软件熟悉程度的度量。 9.3 软件维护的技术 在软件开发阶段用来减少错误,提高软件可维护性的技术。涉及到软件开发的所有阶段。 * * 第 九 章 9 完善性维护(Perfective Maintenance) 扩充原有系统的功能,提高原有系统的性能,满 足用户的实际需要。 纠错性维护(Corrective Maintenance) 对在测试阶段未能发现的,在软件投入使用后才逐 渐暴露出来的错误的测试、诊断、定位、纠错以及 验证、修改的回归测试过程。 一、软件维护的类型 适应性维护(Adaptive Maintenance) 要使运行的软件能适应运行环境的变动而修改软件的过程。 预防性维护(Preventive Maintenance) 为了进一步改善软件的可靠性和易维护性,或者为将来的维护奠定更好的基础而对软件进行修改。 纠错性维护25% 适应性 维护21% 完善性 维护50% 预防性 维护4% 用户 维护人员 安排改正 性维护 确认维 护类型 维护实施 评价优 先级 进行问 题分析 复审 评价错误 严重程度 进行问 题分析 确定更 改要求 维护要求 完 美 性 适 应 性 将安排好的工作量列入计划 低 高 纠错性 严重 不严重 将改正错误列入计划 人 员 安 排 人 员 安 排 交付使用的软件 理解分析程序 安排计划修改程序 测试程序 或 或 或 或 软件维护的工作流程图 修改过 的软件 维护修改建议 分析修改建议 是否合理 提交管理部门审查 是否同意 修改 撤销 N Y N Y 进行测试 提交管理部门审批 是否批准 更新主文档 Y 更新其他文档 提交使用 修改 N 结论 可维护性(可测试性、可理解性、可修改性) 二、软件支援技术 一、面向维护的技术 在软件维护阶段用于提高维护工作的效率和质量的技术。主要用到测试阶段的技术。 (信息收集、错误原因分析、软件分析与理解、 维护方案评价、代码与文档的修改、修改后的确认。) 三、软件维护中应注意的问题(谨慎、工具使用) *

文档评论(0)

1亿VIP精品文档

相关文档