- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 软件维护45255
第8章 软件维护 8.1 软件维护的内容 8.2 软件维护的特点 8.3 软件维护过程 8.4 软件的可维护性 8.5 软件再工程过程 实例分析 本章小结 软件开发完成交付用户使用后,就进入生存周期的最后一个阶段——软件的运行和维护阶段。软件维护工作处于软件生命期的最后阶段,维护阶段也是软件生存期中最长的一个阶段,所花费的人力、物力最多,其花费高达整个软件生命期花费的约60~70%。因为计算机程序总是会发生变化,对隐含错误的修改,新功能的加入,环境变化造成的程序变动等。因此,做好维护工作具有特别重要的意义,应该充分认识到维护工作的重要性和迫切性,提高软件的可维护性,减少维护的工作量和费用,延长已经开发软件的生命期,以发挥其应有的效益。 8.1 软件维护的内容 8.1.1 软件维护的定义 软件维护是指软件系统交付使用以后,为了改正软件运行错误,或者因满足新的需求而加入新功能的修改软件的过程。 软件维护是软件工程的一个重要任务,其主要工作就是在软件运行和维护阶段对软件产品所进行必要的调整和修改。要求进行维护的原因主要分为如下几种: 8.1 软件维护的内容 1. 在运行中发现在测试阶段未能发现的潜在软件错误和设计缺陷,而这些错误或缺陷在特定的使用条件下暴露出来了。 2. 用户和数据处理人员在使用时常提出改进现有功能,增加新的功能,以及改善总体性能的要求,为满足这些要求,就需要修改软件把这些要求纳入到软件之中。 3. 因在软件使用过程中数据环境发生变化(例如一个事务处理代码发生改变)或处理环境发生变化(例如安装了新的硬件或操作系统),需要修改软件以适应这种变化。 8.1 软件维护的内容 4. 为使投入运行的软件与其它相关的程序有良好的接口,以利于协同工作; 5. 为使运行软件的应用范围得到必要的扩充。随着社会对计算机的需求越来越大,要求软件必须快速发展。在软件快速发展的同时,应该考虑软件的开发成本,显然,对软件进行维护的目的是为了纠正软件开发过程未发现的错误,增强、改进和完善软件的功能和性能,以适应软件的发展,延长软件的寿命让其创造更多的价值。 8.1 软件维护的内容 8.2.2 软件维护的类型及策略 软件的维护并不只是修正错误。按维护性质不同,软件维护可分为:校正性维护、适应性维护、完善性维护和预防性维护。 8.1 软件维护的内容 1. 完善性维护 在软件漫长的使用过程中,用户在使用过程中往往会对软件提出的新的功能与性能要求。这是因为用户的业务会发生变化,组织机构也会发生变化,为适应这些变化,需要对原来的软件的功能进行修改或扩充。这种扩充软件功能、增强软件性能、提高软件运行效率和可维护性而进行的维护活动称为完善性维护。此维护活动工作量较大占整个维护工作的50%。例如:对人事管理程序,在使用中要不断修改人事管理程序,使其增加或删除新的项目,满足新需求;原来软件的查询响应速度较慢,要提高软件的响应速度;改变原来软件的用户界面或增加联机帮助信息;为软件的运行增加监控设施等。 此项维护主要采用的策略可以使用功能强、使用方便的工具,采用原型化方法开发等。 8.1 软件维护的内容 2. 适应性维护 随着计算机技术的飞速发展,计算机软硬件环境不断发生变化,数据环境也在不断变化。适应性维护是为了使软件适应外部新的硬件和软件环境或者数据环境(数据库、数据格式、数据输入/输出方式、数据存储介质)发生的变化,而进行修改软件的过程。适应性维护占整个维护工作的25%。例如:为现有的某个应用问题实现一个数据库管理系统;对某个指定代码进行修改,如:从3个字符改为4个字符;缩短系统的应答时间,使其达到特定的要求。 它主要的维护策略是对可能变化的因素进行配置管理,将因环境变化而必须修改的部分局部化,即局限于某些程序模块等。 8.1 软件维护的内容 3. 校正性维护 软件测试不可能找出一个软件系统中所有潜伏的错误,在软件交付使用后,软件在特定情况下运行时,这些潜伏的错误可能会暴露出来。为了识别和纠正这些错误,修改软件性能上的缺陷,而进行确定和修改错误的过程,称为校正性维护。纠错性维护占整个维护工作的21%,例如:修正原来程序中并未使开关复原的错误;解决开发时未能测试各种可能条件带来的问题;解决原来程序中遗漏处理文件中最后一个记录的问题。 它的主要维护策略是开发过程中采用新技术,利用应用软件包,提高系统结构化程度,进行周期性维护审查等。 8.2 软件维护的特点 1. 软件维护时间长、工作量大、成本高 软件的维护过程是软件生存期中最长,并且相当困难的阶段,软件维护的工作量占整个软件生存期的70%以上,软件维护的费用占整个软件开发预算的百分比正在增加。因此,如何减少软件维护的工作量,降低软件维护的成本,就成为提高软件维护效率和质量的关键。 2. 软件维护副作用 维护的目
文档评论(0)