软件工程教学资料-软件工程-第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文档。上传文档
查看更多
第8章 软件维护;;;8.1 软件维护的概念;8.1.1 软件维护的定义 ;8.1.2 软件维护的分类; 由这些原因引起的软件维护活动分为四类,每类维护活动的任务各不相同。 ; (2)适应性维护(Adaptive Maintenance) 在使用过程中,外部环境(新的硬、软件配置),数据环境(数据库、数据格式、数据输入/输出方式、数据存储介质)可能发生变化。为使软件适应这种变化,而去修改软件的过程就叫做适应性维护。;(3)完善性维护(Preventive Maintenance) 在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。这种情况下进行的维护活动叫做完善性维护。 ;(4)预防性维护(Prevertive Maintenance) 预防性维护是为了提高软件的可维护性、可靠性等,为以后进一步改进软件打下良好基础。预防性维护定义为:采用先进的软件工程方法对需要维护的软件或软件中的某一部分(重新)进行设计、编制和测试。 目前这项维护活动相对比较少。; 在整个软件维护阶段所花费的全部工作量中,完善性维护占了几乎一半的工作量。软件维护活动所花费的工作占整个生存期工作量的70%以上,这是由于在漫长的软件运行过程中需要不断对软件进行修改,以改正新发现的错误、适应新的环境和用户新的要求,这些修改需要花费很多精力和时间,而且有时会引入新的错误。;8.1.3 软件维护成本; 由于可用的资源必须提供给维护软件任务使用。以致耽误甚至丧失了开发的良机,这是软件维护的一个无形代价。 其他的无形代价还有: (1)看起来合理的有关改错或修改的要求不能及时满足将引起用户不满; (2)由于维护时的改动,在软件中引入了潜伏的故障,从而降低了软件的质量; (3)必须把软件工程师调去从事维护工作时,将在开发过程中造成混乱。;8.2 软件维护的特点;软件维护有结构化维护和非结构化维护,而且两者差别很大。   (1)结构化维护 ; (2)非结构化维护。;8.3 软件维护的过程;8.3.1 制定维护申请报告 维护要求报告是一个外部产生的文件,它是计划维护活动的基础。软件组织内部应该制定出一个软件修改报告,它给出下述信息: (1)满足维护要求表中提出的要求所需要的工作量; (2)维护要求的性质; (3)这项要求的优先次序; (4)与修改有关的事后数据。; 在每次软件维护任务完成后进行情况评审,对以下问题做一总结: ;8.3.2 维护过程; 在维护任务完成后,要对维护任务进行复审,进行复审时要回答下列问题:   (1)评价维护的情况,即设计、代码和测试的哪些方面已经完成;   (2)对软件开发工作有哪些改进要求;  (3)对于维护工作,主要的、次要的障碍是什么。 复审对将来的维护工作能否顺利进行有着重大影响。对一个软件机构来说,也是正规、有效的管理工作的一部分。 ;8.3.4 维护档案记录 ;8.3.5 维护评价;8.4 软件维护的步骤;8.4.1 建立维护组织;8.4.2 编写维护报告;8.4.3 记录和保存软件维护 ;8.4.4 维护活动的评价;8.5 软件的可维护性;8.5.1 决定软件可维护性的因素;8.5.2 文档;8.6 软件再工程;8.6.1 再工程主要应用范围;再工程主要应用于: (1)改进软件的可维护性。 (2)增强功能,改进性能。 (3)软件移植。 (4)系统开发。 ;8.6.2 再工程活动类型级别;8.6.3 再工程活动的步骤 ;8.6.4 软件再工程的过程;软件再工程过程(大多数情况都是这样的)可以分为11个步骤: 1. 阅读并辨识现存的源代码和文档。 2. 检查并调试已经被辨识出的源代码,用它们建立一个baseline(基线)。 3. 熟悉现有的应用程序。 4. 整理再工程需求,了解需要什么。 5. 编写一个再工程计划。 6. 提供一个测试计划,以及相应的测试数据和测试脚本。 7. 对原始版本进行测试,获取测试结果。 8. 对已移植的版本进行测试(如果存在这个版本),获取测试结果。 9. 分可以明确划分的阶段对代码进行重构。 10. 在每个阶段过后,对代码进行测试。 11. 更新(或是编写)文档。;8.6.5 软件再工程的方法;8.7 本章小结

文档评论(0)

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

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档