软件工程——13、软件维护.pptVIP

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程模型与方法 Models Methods of Software Engineering 第十三章 软件维护 修佳鹏 media@bupt.edu.cn 本章内容 13.1 软件维护概述 13.2 软件维护活动 13.3 修改程序的步骤和副作用 13.4 软件的可维护性 13.5 软件的逆向工程和再工程 13.1 软件维护概述 13.1.1 软件维护的定义 13.1.2 软件维护的分类 13.1.3 影响软件维护工作量的因素 13.1.4 软件维护中的典型问题 13.1.5 软件维护的策略 13.1.1 软件维护的定义 所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。 作为软件生命周期的最后一个环节,软件维护将持续很长时间,往往是软件生命周期中最长的阶段。 大型软件维护成本高达开发成本的4倍左右。目前,国内外许多软件开发组织把60%以上的人力用于维护已有的软件,而且这个百分比还有继续增长的趋势。 所以,软件的可维护性已经日益成为软件设计和开发所追求的一个重要目标。 软件维护的目的 改正在特定的使用条件下暴露出来的一些潜在程序错误或设计缺陷 因在软件使用过程中数据环境发生变化或处理环境发生变化,需要修改软件以适应这种变化 用户和数据处理人员在使用时常提出改进现有功能、增加新的功能、以及改善总体性能的要求,为满足这些要求,就需要修改软件把这些要求纳入到软件之中 13.1.2 软件维护的分类 改正性维护 为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用而进行的诊断和改正错误的过程,就叫做改正性维护 适应性维护 为了使软件适应外部环境的变化,而去修改软件的过程就叫做适应性维护 完善性维护 为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。这种情况下进行的维护活动叫做完善性维护 13.1.2 软件维护的分类 预防性维护 这种维护是为了提高软件的可维护性、可靠性等,为以后进一步改进软件打下良好基础 13.1.3影响软件维护工作量的因素 影响维护工作量的程序特性有 : 系统大小 程序设计语言 系统年龄 数据库技术的应用 先进的软件开发技术 其它 13.1.4软件维护中的典型问题 软件维护中经常遇到的典型的问题 : 理解别人写的程序通常非常困难 需要维护的软件往往没有合格的文档,或者文档资料明显不足 不能指望开发人员仔细说明软件 决大多数软件在设计时没有考虑将来的修改,从而导致了软件的可维护性很差 软件维护不是一项吸引人的工作,由于以上原因经常导致维护出现困难,从而使软件维护人员产生挫折感 13.1.5软件维护的策略 根据影响软件维护工作量的各种因素,针对三种典型的维护,James Martin等提出了一些策略,以控制维护成本 : 修改性维护: 数据库管理系统、软件开发环境、程序自动生成系统、较高级(第四代)的语言,以产生更加可靠的代码。 利用应用软件包,中间件等可靠性更高的软件; 进行防错性程序设计;把自检能力引入程序,通过非正常状态的检查,提供审查跟踪; 通过周期性维护审查,在形成维护问题之前就可确定质量缺陷。 13.1.5软件维护的策略 适应性维护 把硬件、操作系统和其它相关环境因素的可能变化考虑在内,可以减少某些适应性维护的工作量。 可以把与硬件、操作系统、以及其它外围设备有关的程序归到特定的程序模块中,或者把因环境变化而必须修改的程序局部于某些程序模块之中。 13.2 软件维护活动 13.2.1 维护机构 13.2.2 软件维护申请报告 13.2.3 软件维护工作流程 13.2.4 软件维护记录及其评价 13.2.5 软件维护的标准化 13.2.1 维护机构 13.2.2软件维护申请报告 所有的软件维护申请应按规定的方式给出。软件维护组织通常提供维护申请报告(MRP:Maintenance Request Form),由申请维护的用户填写 软件组织内部相应地做出软件修改报告(SCR:Software Change Report),其中说明软件中所需修改的变动的性质、申请修改的优先级、为满足该维护申请报告所需要的工作量、预计修改后的状况等内容 13.2.3软件维护工作流程 13.2.3软件维护工作流程 在软件维护的过程中,有下列数据需要记录: 13.2.3软件维护工作流程 维护“性能”方面的度量值 : 每次程序运行时的平均出错次数 花费在每类维护上的总“人时”数 每个程序、每种语言、每种维护类型的程序平均修改次数 因为维护,增加或删除每个源程序语句所花费的平均“人时”数 用于每种语言的平均“人时”数 维护申请报告的平均处理时间

文档评论(0)

sdfgrt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档