软件生命周期 件生存周期 可行性研究 软件定义 需求分析 概要设计 详细设计 软件开发 编码 集成测试 确认测试 软件使用 使用与维护 与维护 退役
软件生存周期 可行性研究 需求分析 概要设计 详细设计 编 码 集成测试 确认测试 使用与维护 退役 软件定义 软件开发 软件使用 与维护 软件生命周期
工 软件维护
软件维护
CH8软件维护( Maintenance) 亦称 Software evolution §1软件维护的定义 Q:什么是维护? A:在软件已经交付使用之后,为了改正错误或满 足新的需要而修改软件的过程。 Q:维护做什么?(即维护的类型) A:①诊断和改正错误—改正性维护( corrective maintenance,约占全部维护活动的17~20%; ②为了和变化了的环境(如软硬件升级、新 数据库等)适当地配合而修改软件—适应性 维护 adaptive maintenance),约占全部维护活 动的18~25%
§1. 软件维护的定义 CH8 软 件 维 护(Maintenance) —— 亦称 Software Evolution Q:什么是维护? A:在软件已经交付使用之后,为了改正错误或满 足新的需要而修改软件的过程。 Q:维护做什么?(即维护的类型) A: ① 诊断和改正错误 —— 改正性维护(corrective maintenance),约占全部维护活动的 17~20%; ② 为了和变化了的环境(如软\硬件升级、新 数据库等)适当地配合而修改软件 —— 适应性 维护(adaptive maintenance),约占全部维护活 动的18~25%;
s1.定义 ③为了增加新功能,修改已有功能,改造界面 增加HELP等,而修改软件—完善性维护 Bo perfective maintenance,占全部维护活动 50~66 ④为了改进未来的可维护性或可靠性,或为了给 未来的改进奠定更好的基础而修改软件 预防性维护( preventive maintenance),与其它 维护活动共占总维护的4%左右。 注:①一般维护的工作量占生存周期70%以上 维护成本约为开发成本的4倍(80-20Rule) ②文档维护与代码维护同样重要
③为了增加新功能,修改已有功能,改造界面, 增加HELP等,而修改软件 —— 完善性维护 (perfective maintenance),约占全部维护活动 的50~66% ; ④为了改进未来的可维护性或可靠性,或为了给 未来的改进奠定更好的基础而修改软件 —— 预防性维护(preventive maintenance),与其它 维护活动共占总维护的4%左右。 §1. 定义 注:① 一般维护的工作量占生存周期70%以上, 维护成本约为开发成本的4倍(80 - 20 Rule); ② 文档维护与代码维护同样重要
1、结构化维护与非 §2.维护的特点 结构化维护的对比 维护要求 只有代吗软件配置完整配置 评价代码 评价设计文档 估计改动影响,计划实施途径 修改设计 重编程序 重编程序 复查 复查 交付使用
软件结构、系统接口、 约束条件……??? 不知道! 1、结构化维护与非 结构化维护的对比 维护要求 软件配置 只有代码 评价代码 重编程序 复 查 完整配置 评价设计文档 估计改动影响,计划实施途径 修改设计 重编程序 复 查 交付使用 §2. 维护的特点