第9章 软件维护1

第9章 软件维护1

ID:20298872

大小:397.50 KB

页数:76页

时间:2018-10-12

第9章 软件维护1_第1页
第9章 软件维护1_第2页
第9章 软件维护1_第3页
第9章 软件维护1_第4页
第9章 软件维护1_第5页
资源描述:

《第9章 软件维护1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、7/3/20211结束返回第9章软件维护9.1软件维护的基本概念9.2软件维护的特点9.3软件维护策略9.4软件维护成本9.5软件维护的实施9.6软件的可维护性9.7软件维护的副作用第9章软件维护7/3/20212结束返回9.1软件维护的基本概念9.1.1软件维护的定义软件维护是指软件在使用过程中,为了改正错误,或者满足用户新的需求而修改软件的过程。它一般不包括重大结构的改变。引起维护的原因是很多的,以下因素是引起软件维护的主要原因:(1)软件在使用过程中暴露出来的一些潜在程序错误或设计缺陷;(2)运行环境(软硬件、数据库)发生变化,导致软件不适应;(3)

2、用户提出新的要求,对软件增加新的功能或提高软件的性能。9.1.2软件维护的类型1.修正性维护。在某种特定的情况下可能暴露出开发中隐藏的问题,这时就需要对软件进行维护,这一类诊断和改正错误的维护称为修正性维护。2.适应性维护。为了适应新的软硬件环境变化而进行修改的活动,称为适应性维护。3.完善性维护。为了改善、加强系统的功能和性能,以满足用户新的要求,这样的维护称为完善性维护。4.预防性维护。为了给未来的改进提供更好的基础或改善软件未来的可维护性或可靠性而做出的修改,称为预防性维护。第9章软件维护9.1软件维护的基本概念在软件运行的初期修正性维护的工作量较大

3、。随着错误发现率急剧降低,并趋于稳定,就进入了正常使用期。然而,由于改造的要求,适应性维护和完善性维护的工作量逐步增加,在这种维护过程中又会引入新的错误,从而加重了维护的工作量。实践表明,在几种维护活动中,完善性维护所占的比重最大,即大部分维护工作是改变和加强软件,而不是纠错。用户要求扩充、加强软件功能、性能的维护活动约占整个维护工作的50%。第9章软件维护9.1软件维护的基本概念第9章软件维护9.1软件维护的基本概念1.软件维护的工作量关系到软件维护工作量的因素有:(1)系统规模的大小(2)程序设计语言(3)系统的年龄(4)软件开发技术(5)数据库技术(

4、6)文档质量(7)其他因素第9章软件维护9.2软件维护的特点2.软件维护的困难性造成软件维护困难的主要因素有:(1)理解别人写的程序比较困难(2)文档资料不足或错误(3)人员和时间的差异造成维护的困难(4)软件人员的流动性大(5)维护工作不是一项吸引人的工作(6)追踪软件的建立过程非常困难,有时根本做不到第9章软件维护9.2软件维护的特点3.结构化维护和非结构化维护结构化维护和非结构化维护的区别主要是有无文档的区别。(2)结构化维护存在完整的软件系列文档,维护任务就从分析设计文件开始,确定软件的重要结构特性、功能特性和接口特性,确定所要求的修改或校正可能产

5、生的影响,并且计划采用何种维护处理方法,修改设计并进行复审,编制出新的源程序,利用文档中的信息进行回归测试,然后重新交付软件。这种维护过程就叫做“结构化维护”。(1)非结构化维护非结构化维护无说明性文档或者文档资料太少。由于没有采用定义良好的软件项目管理过程来开发软件,软件项目管理缺陷导致的维护叫“非结构化维护”,这会使软件维护付出较高的代价。第9章软件维护9.2软件维护的特点第9章软件维护9.2软件维护的特点结构化维护和非结构化维护的区别是否9.3软件维护策略改正性维护通常要生成100%可靠的软件成本太高,并不一定合算。但通过使用新技术,可大大减少进行改

6、正性维护的需要。这些技术包括:数据库管理系统、软件开发环境、程序自动生成系统、较高级(第四代)语言。以及新的开发方法、软件复用、防错程序设计及周期性维护审查等。第9章软件维护适应性维护这一类维护不可避免,但可以控制。(1)在配置管理时,把硬件、操作系统和其它相关环境因素的可能变化考虑在内。(2)把与硬件、操作系统,以及其它外围设备有关的程序归到特定的程序模块中。(3)使用内部程序列表、外部文件,以及处理的例行程序包,可为维护时修改程序提供方便。9.3软件维护策略第9章软件维护完善性维护利用前两类维护中列举的方法,也可以减少这一类维护。特别是数据库管理系统、

7、程序生成器、应用软件包,可减少维护工作量。 此外,建立软件系统的原型,把它在实际系统开发之前提供给用户,用户通过研究原型,进一步完善他们的功能要求,就可以减少以后完善性维护的需要。9.3软件维护策略第9章软件维护9.4软件维护成本有形的软件维护成本是花费了多少钱,无形的维护成本可能会有更大的影响。一些合理的修复或修改请求不能及时安排,使得客户不满意;变更的结果引入新的故障,使得软件整体质量下降;把软件开发人员抽调到维护工作中,干扰了软件开发工作。第9章软件维护维护工作量包括生产性活动(如分析和评价、设计修改和实现)和“轮转”活动(如力图理解代码在做什么、试

8、图判明数据结构、接口特性、性能界限等)。如果使用了不好的软件开发方

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。