西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第八章 软件维护

软件生命周期 件生存周期 可行性研究 软件定义 需求分析 概要设计 详细设计 软件开发 编码 集成测试 确认测试 软件使用 使用与维护 与维护 退役
软件生存周期 可行性研究 需求分析 概要设计 详细设计 编 码 集成测试 确认测试 使用与维护 退役 软件定义 软件开发 软件使用 与维护 软件生命周期

工 软件维护
软件维护

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. 维护的特点

2、维护的代价 §2.维护的特点 有形代价:费用已上升至总预算的80%; 无形代价: 占用资源以致延误开发; 修改不及时引起用户不满 维护引入新错误,降低了软件质量;等等。 维护工作量的经验模型: M=P+Kec-d 其中:M=维护用的总工作量; P=生产性工作量(eg分析,评估,设计,编码,and测 K=经验常数; c=复杂度(主要来自缺乏结构化设计和必要的文档 d=维护人员对软件的熟悉程度
2、维护的代价 有形代价:费用已上升至总预算的80%; 无形代价: 占用资源以致延误开发; 修改不及时引起用户不满 ; 维护引入新错误,降低了软件质量;等等。 维护工作量的经验模型: §2. 维护的特点 M = P + K e c-d 其中:M = 维护用的总工作量; P = 生产性工作量 (e.g. 分析, 评估, 设计, 编码, and 测 试); K = 经验常数 ; c = 复杂度 ( 主要来自缺乏结构化设计和必要的文档) d = 维护人员对软件的熟悉程度

§2.维护的特点 3、维护的问题 说明性文档不可缺少! 别人的程序很难读懂。 那是给谁看呢? 文档与代码不一致 工资不一样嘛!↓3以不 开发人员往往不参加维护° 是人 能 发 大多数软件在设计时没有考虑将来的修改 软件工程的思想至少部分地解决了与维护有 关的每一个问题
3、维护的问题 §2. 维护的特点 •别人的程序很难读懂 说明性文档不可缺少! •文档与代码不一致 那是给谁看呢? •开发人员往往不参加维护 工资不一样嘛! •大多数软件在设计时没有考虑将来的修改 所以不 是人人 能发财 软件工程的思想至少部分地解决了与维护有 关的每一个问题

§3.维护过程—本质上是修改和压缩了的 软件定义和开发过程 1、建立维护组织( maintenance tean) 在维护活动开始之前就明确维护责 任是十分必要的,这样可以大大减少维 护过程中可能出现的混乱
§3. 维护过程 —— 本质上是修改和压缩了的 软件定义和开发过程 1、建立维护组织(maintenance team): 在维护活动开始之前就明确维护责 任是十分必要的,这样可以大大减少维 护过程中可能出现的混乱

s3.维护过程 钱太》要 任务评价 不干求 维 客户要求 变化授权人 护 任务评价“维护管理员 系统管理员
要 求 维 护 维护管理员 系 统 管 理 员 客户要求 任务评价 任务评价 变 化 授 权 人 钱太少 不干! §3. 维护过程

s3.维护过程 2、维护报告 (1)维护申请报告( Maintenance Request Form) 由用户填写的外部文件,提供错误情况说明 (输入数据,错误清单等),或修改说明书等 (2)软件修改报告 Software Change Report) 与MRF相应的内部文件,要求说明 ①所需修改变动的性质; ②申请修改的优先级; ③为满足某个维护申请报告,所需的工作量; ④预计修改后的状况
2、维护报告 ⑴ 维护申请报告(Maintenance Request Form) 由用户填写的外部文件,提供错误情况说明 (输入数据,错误清单等),或修改说明书等。 ⑵ 软件修改报告(Software Change Report) 与MRF相应的内部文件,要求说明: ①所需修改变动的性质; ②申请修改的优先级; ③为满足某个维护申请报告,所需的工作量; ④预计修改后的状况。 §3. 维护过程
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第七章 软件测试.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第九章 面向对象方法概述.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第十章 面向对象技术——面向对象分析与设计.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第十一 面向对象设计与UML.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第十三章 软件项目管理 Software Management.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第十二章 人机界面设计——用户界面设计.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第三章 需求分析.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第二章 可行性研究.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第一章 软件概述.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)原理、方法与应用(第6章-第11章).ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)原理、方法与应用(第1章-第5章).ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_电子教案.doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_试题(填空题).doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_试题(三).doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_软件工程模拟试题(二).doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_《软件工程学》试题.doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_模拟试题及参考答案(共五套).doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_软件工程试题.doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_各章习题解答.doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_实验指导书.doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第四章 软件设计——概要设计.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第五章 软件设计——详细设计.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(PPT课件)第六章 编码、实现.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_从课程角度看软件工程教材和体系建设.doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_软件工程复习纲要和要求.doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源_UML进行面向对象的系统分析及设计方法.pdf
- 中国矿业大学计算机科学与技术学院:UML在商业活动建模中的应用(宗梅、史有群).pdf
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(分析与设计案例)需求分析与建模说明书.doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(分析与设计案例)宿舍管理案例.ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(分析与设计案例)超市管理信息系统分析设计书(超市管理信息系统分析与点评).doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(分析与设计案例)面向对象方法例题——ATM网络系统.doc
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(分析与设计案例)医院病房监护系统案例(面向对象).ppt
- 西安石油大学:《软件工程 Software Engineering》课程教学资源(分析与设计案例)面向对象(OO)会议管理系统案例.ppt
- 西安石油大学:《计算机网络 Computer Network》课程教学资源_教学大纲.pdf
- 西安石油大学:《计算机网络 Computer Network》课程教学资源_电子教案.pdf
- 西安石油大学:《计算机网络 Computer Network》课程教学资源(习题解答)第1章 概述.pdf
- 西安石油大学:《计算机网络 Computer Network》课程教学资源(习题解答)第2章 物理层.pdf
- 西安石油大学:《计算机网络 Computer Network》课程教学资源(习题解答)第3章 数据链路层.pdf
- 西安石油大学:《计算机网络 Computer Network》课程教学资源(习题解答)第4章 网络层.pdf
- 西安石油大学:《计算机网络 Computer Network》课程教学资源(习题解答)第5章 运输层.pdf