- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
10章软件维护
第10章 软件维护 引言 例子:某药厂的设备管理信息系统已交付用户运行了1年,工厂购置了小型机,需要将原来的在Windows下运行的系统移植到Unix操作系统下运行。 软件在交付给用户使用后,由于应用环境、业务需求变化以及软件自身问题,对它进行维护不可避免。 软件维护是一个长期过程,耗费较大。 主要内容 软件维护的概念 软件维护过程 软件维护工作的管理方法 10.1 软件维护概念 软件维护——在软件交付使用之后对软件进行的任何改变工作。 引起软件改变的原因——为了纠正运行中出现的错误;为了使软件适应新的运行环境;用户增加新的需求;为了提高软件可靠性。 软件维护分类 纠正性维护 完善性维护 适应性维护 预防性维护 改正性维护 什么是改正性维护——改正软件中的错误 起因——软件运行过程中一旦发现错误,用户会向开发人员提出改正性维护的请求。 目的——诊断和改正软件系统中出现和潜藏的错误。 出现概率——占整个维护工作量21%。 通常遇到的错误有——设计错误、逻辑错误、编码错误、文档错误、数据错误 。 适应性维护 什么是适应性维护——对软件进行改造以便适应新的环境和平台。 起因——软件运行硬件、OS、网络等环境发生变化。 目的——适应环境变化和发展而对软件进行维护。 出现频率——占整个维护量的25% 。 环境变化主要包括——影响系统的规定、法律和规则发生了变化;硬件配置发生了变化,例如机型、终端、打印机等;数据格式和文件结构发生变化;系统软件发生变化,例如操作系统、编译系统或实用程序包的变化。 完善性维护 什么是完善性维护——对软件进行完善以增加新的功能、修改已有功能。 起因——用户要求增加新的功能、修改已有功能,或提出其他改进意见 目的——满足用户日益增长的各种需求而对软件系统进行的改善和补充。 出现频率——占整个维护量50%。 常见的完善要求——用户的业务会发生变化,组织机构也会发生变化。 预防性维护 什么是预防性维护——对软件的结构进行改造以便提高软件的可靠性和可维护性等 起因——改进软件质量属性,为以后的软件改进奠定基础的维护活动。 目的——提高软件的质量。 出现频率——占整个维护量的4%。 10.1.1 影响维护的因素 软件规模:维护工作量与软件规模成正比。软件的规模可以由源程序的语句数量、模块数、输入输出文件数、数据库的规模,以及输出的报表数等指标来衡量。软件规模越大,复杂程度越高,其维护就越困难。 程序设计语言:通常高级语言编写的程序比低级语言编写的程序易于维护。 先进的软件开发技术:使用先进稳定的开发技术会提高软件的质量,例如,使用数据库技术、面向对象技术、构件技术和中间件技术可以提高软件的质量,减少维护费用。 软件年限:软件越老,其维护越困难。老的软件不断被修改,结构可能越来越混乱。随着时间的增长,原来的开发和维护人员不断离去,了解软件结构的人越来越少,如果文档不全就更加难以维护。 11.1.1 影响维护的因素(续) 文档质量:许多软件项目在开发过程中不断地修改需求和设计,但是对文档却不进行同步修改,造成交付的文档与实际系统不一致,使人们在后来参考文档对软件进行维护时无从下手。软件维护阶段利用历史文档可以简化维护工作,历史文档有下面3种。 软件开发日志:它记录了软件开发原则、目标、功能的优先次序、选择设计方案的理由、使用的测试技术和工具,计划的成功和失败之处,开发过程中出现的问题。 错误记载:记录了出错历史,对于预测今后可能发生的错误类型及出错频率有很大帮助,可以更合理地评价软件质量。 系统维护日志:记录了维护信息,包括修改目的和策略、修改内容和位置、注意事项、新版本说明等信息。 10.1.1 影响维护的因素(续) 软件的应用领域:有些软件用于一些特殊领域,涉及到一些复杂的计算和模型工具,这类软件的维护需要专门的业务知识和计算机软件知识。 软件结构:在进行概要设计时,遵循软件设计的高内聚、低耦合、信息隐藏等设计原则,使设计的软件具有优良的结构,会为今后的维护带来方便。 编程习惯:因为软件维护通常要理解别人写的程序,这是很困难的,如果仅有源程序没有说明的文档,则会使维护工作更加困难。如果开发人员都按照编程规范编写程序,并且程序思路清晰、结构简单,则程序易于维护。 人员的变动:由原来的开发人员参与维护是比较好的策略,可提高维护效率。但是在软件的生命周期中人员变动是不可避免的,有时候这也是造成一个软件彻底报废的原因之一。 10.1.2.软件维护策略 针对软件的4种主要维护活动,James Martin提出了一些维护策略。 1)改正性维护——通过新技术和好的开发策略提高软件可靠性,减少改正性维护活动。 2)适应性维护——在设计时就把硬件和操作系统以及其他相关因素的可能变化考虑在内,可以减少某些适应性维护。
文档评论(0)