软件工程第8章 软件维护.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(4)选择可维护的程序设计语言 程序设计语言的选择,对程序的可维护性影响很大。低级语言,即机器语言和汇编语言,难以理解和掌握,因此很难维护。高级语言比低级语言容易理解,具有很好的可维护性。但同是高级语言,可理解的难易程度也不一样。例如,COBOL语言比FORTRAN语言容易理解,因为它更接近于英语;PL/1语言比COBOL语言容易理解,因为它有更丰富、更强的指令集。 * (5)做好程序的文档 文档是影响软件可维护性的决定因素。由于长期使用的大型软件系统在使用过程中必然会经受多次修改,所以文档比程序代码更为重要。程序文档是对程序总目标、程序各组成部分之间的关系、程序设计策略、程序实现过程的历史数据等的说明和补充。其作用为: 1)帮助维护人员读懂程序 程序文档对提高程序的可理解性有着重要作用。 2)方便被维护软件的测试 在软件维护阶段,利用历史文档,可以大大地简化维护工作。 * 图8.2 有文档维护和无文档维护对比 * 8.4 软件维护活动 为了有效地进行软件维护,应事先开始作组织工作,建立维护的机构,申明提出维护申请报告的过程及评价的过程;为每一个维护申请规定标准的处理步骤;还必须建立维护活动的登记制度以及规定评价和评审的标准。 * 8.4.1 软件维护组织机构 一般来说,除了大型的软件公司以外,做软件维护工作并不要求建立一个正式的维护机构,只需要确立一个非正式的维护机构来完成这些工作(如图8.3所示)。 * 出版社 理工分社 软 件 工 程 软件维护工作处于软件生命期的最后一个阶段,是在软件系统支付使用以后,在其有效运行期内,为了改正软件运行错误或因满足新的需求而加入新功能的修改软件的过程。这一阶段是软件生命周期中最长的一个阶段,所花费的人力、物力最多,其花费高达整个软件生命期花费的60%~70%,而且随着软件数量增多和使用寿命延长,这个百分比还在持续上升。这是因为计算机程序总是会发生变化,对于隐藏错误的修改、新功能模块的增加、环境变化造成的程序变动等。 第8章 软件维护 * 8.1 软件维护的任务和分类 所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。要求进行软件维护的原因多种多样,归纳起来主要有4个原因: ①改正在特定的使用条件下暴露出来的一些潜在程序错误或设计缺陷; ②因在软件使用过程中数据环境发生变化(例如,某个事物处理代码发生改变)或运行环境发生变化(例如,安装了新的硬件或操作系统),需要修改软件以适应这种变化。 * ③用户或管理人员在使用时常提出改进现有功能、增加新的功能、改善总体性能的要求,为将这些合理要求纳入现在运行的软件系统,需要维护软件。 ④为使投入运行的软件与其他相关的程序有良好的接口,以利于协同工作;为使运行软件的应用范围得到必要的扩充。 系统维护的重点是系统应用软件的维护工作,由于上述软件维护的原因,按照软件维护的不同性质划分为下面4种类型: * 8.1.1 改正性维护(corrective maintenance) 改正性维护是在软件运行中发生异常或故障时进行的维护工作。在软件交付使用后,由于开发时测试的不彻底、不完全,必然会有一部分隐藏的错误被带到运行阶段来。这些隐藏下来的错误在某些特定的使用环境下会暴露出来。为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应进行的诊断和改正错误的过程,是改正性维护。例如,改正性维护可以是改正原来程序中开关使用的错误;解决开发时未能测试各种可能情况带来的问题;解决原来程序中遗漏处理文件中最后一个记录的问题等。 * 8.1.2 适应性维护(adaptive maintenance) 适应性维护是指使软件适应不断变化的运行环境而进行修改过程。随着计算机技术近年来飞速发展,外部环境(新的硬、软件配置)或数据环境(数据库、数据格式、数据输入/输出方式、数据存储介质)不断发生变化,为了使软件适应这种变化而修改软件的过程称作适应性维护。例如,适应性维护可以是将某个应用程序从DOS环境移植到windows环境;将原来在VAX750机上用Oracle的SQL实现的数据库移到Compaq机上;修改程序使其适用于另外一种终端。 * 8.1.3 完善性维护(perfective maintenance) 用户的需求是经常变化的,在软件使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。这种情况下进行的维护活动称作完善性维护。例如,完善性维护可能是修改一个计算工资的程序,

文档评论(0)

132****9295 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档