第11章 软件维护
软件工程概论——郑人杰
第11章 软件维护 软件维护的概念 软件维护活动 程序修改的步骤及副作用 软件的维护性 提高软件维护性的方法
软件工程概论——郑人杰
11.1 软件维护的概念 软件维护的定义软件维护是指在软件运行 维护阶段对软件产品所进行的修 软件维护是指在软件运行/维护阶段对软件产品所进行的修 是指在软件运行 改就是所谓的维护。根据维护工作的性质, 改就是所谓的维护。根据维护工作的性质,软件维护的活动 可以分为以下4种类型。 可以分为以下 种类型。 种类型 改正性维护 适应性维护 完善性维护 预防性维护
软件工程概论——郑人杰
11.1 软件维护的概念1.改正性维护 .改正性维护( 改正性维护(corrective maintenance)为了识别和纠正 ) 软件错误、改正软件性能上的缺陷、 软件错误、改正软件性能上的缺陷、排除实施中的误使 用,应进行的诊断和改正错误的过程。例如,改正性维护 应进行的诊断和改正错误的过程。例如, 可以是改正原来程序中开关使用的错误;解决开发时未能 可以是改正原来程序中开关使用的错误; 测试各种可能情况带来的问题等。 测试各种可能情况带来的问题等。
软件工程概论——郑人杰
11.1 软件维护的概念2.适应性维护 .随着信息技术的飞速发展,软件运行的外部环境( 随着信息技术的飞速发展,软件运行的外部环境(新的 硬、软件配置)或数据环境(数据库、数据格式、数据输入 软件配置)或数据环境(数据库、数据格式、 /输出方式、数据存储介质)可能发生变化,为了使软件适 输出方式、数据存储介质)可能发生变化, 输出方式 应这种变化,而修改软件的过程叫做适应性维护(adaptive 应这种变化,而修改软件的过程叫做适应性维护( 适应性维护 maintenance)。例如,需要对已运行的软件进行改造,以 )。例如,需要对已运行的软件进行改造, )。例如 适应网络环境或已升级改版的操作系统要求。 适应网络环境或已升级改版的操作系统要求。
软件工程概论——郑人杰
11.1 软件维护的概念3.完善性维护 .为了满足新的功能与性能要求,需要修改或再开发软件, 为了满足新的功能与性能要求,需要修改或再开发软件, 以扩充软件功能、增强软件性能、改进加工效率、 以扩充软件功能、增强软件性能、改进加工效率、提高软件 的可维护性。这种情况下进行的维护活动叫做完善性维护 的可维护性。这种情况下进行的维护活动叫做完善性维护 )。例如 (perfective maintenance)。例如,完善性维护可能是修 )。例如, 改一个计算工资的程序,使其增加新的扣除项目; 改一个计算工资的程序,使其增加新的扣除项目;缩短系统 的应答时间,使其达到特定的要求等。 的应答时间,使其
达到特定的要求等。
软件工程概论——郑人杰
11.1 软件维护的概念4.预防性维护 .预防性维护( 预防性维护(preventive maintenance)是指把今天的 ) 方法学用于昨天的系统以满足明天的需要。也就是说, 方法学用于昨天的系统以满足明天的需要。也就是说,采 用先进的软件工程方法对需要维护的软件或软件中的某一部 分(重新)进行设计、编码和测试。 重新)进行设计、编码和测试。
软件工程概论——郑人杰
11.1 软件维护的概念各类维护占总维护工作量的比例在整个软件维护阶段花费的全部工 作量中, 作量中,预防性维护只占很小的比 例,而完善性维护占了几乎一半的 工作量。 工作量。
软件工程概论——郑人杰
11.1 软件维护的概念维护工作量在软件生存期中所占比例软件维护活动花费的工作量占整个生存期工作量的70%以 以 软件维护活动花费的工作量占整个生存期工作量的 上(工作量的比例直接反映了成本的比例) 工作量的比例直接反映了成本的比例)
软件工程概论——郑人杰
11.1 软件维护的概念 影响维护工作量的因素在软件维护中,影响维护工作量的因素主要有以下 种 在软件维护中,影响维护工作量的因素主要有以下6种: (1)系统规模。 )系统规模。 (2)程序设计语言。 )程序设计语言。 (3)系统年龄大小。 )系统年龄大小。 (4)数据库技术的应用水平。 )数据库技术的应用水平。 (5)所采用的软件开发技术及软件开发工程化的程度。 )所采用的软件开发技术及软件开发工程化的程度。 (6)其他:如应用的类型、数学模型、任务的难度、IF嵌 )其他:如应用的类型、数学模型、任务的难度、 嵌 套深度、索引或下标数等,对维护工作量都有影响。 套深度、索引或下标数等,对维护工作量都有影响。
软件工程概论——郑人杰
11.1 软件维护的概念 软件维护的策略根据影响软件维护工作量的各种因素,针对 种典型维 根据影响软件维护工作量的各种因素,针对3种典型维 等提出了一些策略, 护,James Martin等提出了一些策略,以控制维护成本。 等提出了一些策略 以控制维护成本。
1.改正性维护 .应用一些诸如数据库管理系统、软件开发环境、 应用一些诸如数据库管理系统、软件开发环境、程序自 动生成系统和高级(第四代) 动生成系统和高级(第四代)语言等新技术可大大提高可 靠性,并减少进行改正性维护的需要。此外, 靠性,并减少进行改正性维护的需要。此外,还可考虑利 用应用软件包、防错性程序设计、 用应用软件包、防错性程序设计、通过周期性维护审查等 策略。 策略。
软件工程概论——郑人杰
11.1 软件维护的概念2.适应性维护 .这一类的维护不可避免,但可以采用以下策略加以控制。 这一类的维护不可避免,但可以
采用以下策略加以控制。 (1)在配置管理时,把硬件、操作系统和其他相关环境因 )在配置管理时,把硬件、 素的可能变化考虑在内, 素的可能变化考虑在内,可以减少某些适应性维护的工作 量。 (2)把与硬件、操作系统,以及其他外围设备有关的程序 )把与硬件、操作系统, 归到特定的程序模块中。 归到特定的程序模块中。可把因环境变化而必须修改的程序 局部于某些程序模块之中。 局部于某些程序模块之中。
软件工程概论——郑人杰
11.1 软件维护的概念2.适应性维护 .(3)使用内部程序列表、外部文件,以及处理的例行程序 )使用内部程序列表、外部文件, 包,可为维护时修改程序提供方便。 可为维护时修改程序提供方便。 (4)使用面向对象技术,增强软件系统的稳定性,易于修 )使用面向对象技术,增强软件系统的稳定性, 改和移植。 改和移植。
软件工程概论——郑人杰
11.1 软件维护的概念3.完善性维护 .利用前两类维护中列举的方法, 利用前两类维护中列举的方法,也可以减少这一类维 护。特别是数据库管理系统、程序生成器、应用软件包, 特别是数据库管理系统、程序生成器、应用软件包, 可减少系统或程序员的维护工作量。 可减少系统或程序员的维护工作量。 此外,建立软件系统的原型,把它在实际系统开发之前 此外,建立软件系统的原型, 提供给用户。用户通过研究原型, 提供给用户。用户通过研究原型,进一步完善他们的功能 要求,可以减少以后完善性维护的需要。 要求,可以减少以后完善性维护的需要。
软件工程概论——郑人杰
11.2 软件维护活动 软件维护申请报告所有软件维护申请应按规定的方式提出。 所有软件维护申请应按规定的方式提出。软件维护组织通常 提供维护申请报告( 提供维护申请报告(maintenance request form,MRF), , ), 或称软件问题报告, 申请维护 …… 此处隐藏:2306字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [说明书]浅谈视觉传达设计中的色彩艺术
- [说明书]数据库原理-实验8-查询优化
- [说明书]临时用电施工组织设计
- [说明书]反假币考试试题第二套(人民币)
- [说明书]《建设工程监理规范》-2014.3.1实施
- [说明书]筋出槽,骨错缝病机诠释
- [说明书]百度预计来路对网站权重有多大影响
- [说明书]房屋面积测绘细则
- [说明书]计算机控制技术填空题汇总
- [说明书]乡镇卫生院(社区中心)死亡医学证明管
- [说明书]2013尾矿工实操试题
- [说明书]2015事业单位面试备考:贵州省事业单位
- [说明书](目录)2017-2022年半导体材料市场发
- [说明书]浙江省制造业发展“十三五”规划
- [说明书]干部选拔任用工作情况的自查报告
- [说明书]《发电厂电气部分》课后部分问答题整理
- [说明书]中国建立政府成本会计制度的思考
- [说明书]中国文化输出的现状及挑战-100分
- [说明书]通信原理实验指导(13-9)
- [说明书]HSF培训试卷(有害物质培训考试试题)
- 高中地理必修一:2.3《大气环境之六_气
- 新人教版八年级数学上期末总复习精品优
- WEB应用托管平台系统架构
- 《应用文写作》期末试卷
- 2017年秋九年级数学上册24.3正多边形和
- _空心村_形态特征与生成机理分析_以河
- 北师大版生物七年级下册12章2节感受器
- 社区卫生服务中心主任职责
- 广东省2014届广州二模材料作文“求道”
- 完整户口本英文翻译模板
- 2015年液化天然气LNG市场调研及发展趋
- 农村学校教育发展新
- 2014年注册税务师税法(Ⅱ)考试试题及答
- 东方大学俄语新版第5册第-7课课文翻译
- 路基路面工程课程设计1
- 219亩项目2011营销策略
- 第1篇 贸易术语-EXW、FCA、FAS
- 年会或大型活动防疫应急预案
- 改善提案(合理化建议)
- 初三英语第四单元ppt




