网站大量收购独家精品文档,联系QQ:2885784924

8.软件维护.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8.软件维护

学习目标 掌握软件维护的定义、维护的特点。 了解软件的维护过程 理解软件可维护性的概念和软件再工程过程的概念 8.1 软件维护的定义 在软件运行/维护阶段对软件产品进行的修改就是所谓的维护。 软件维护活动所花费的工作占整个生存期工作量的70%以上,这是由于在漫长的软件运行过程中需要不断对软件进行修改,以改正新发现的错误、适应新的环境和用户新的要求,这些修改需要花费很多精力和时间,而且有时会引入新的错误。 维护的类型有四种: 改正性维护 适应性维护 完善性维护 预防性维护 改正性维护 在软件交付使用后,因开发时测试的不彻底、不完全,必然会有部分隐藏的错误遗留到运行阶段。 这些隐藏下来的错误在某些特定的使用环境下就会暴露出来。 为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程就叫做改正性维护。 适应性维护 在使用过程中, 外部环境(新的硬、软件配置) 数据环境(数据库、数据格式、数据输入/输出方式、数据存储介质) 可能发生变化。 为使软件适应这种变化,而去修改软件的过程就叫做适应性维护。 完善性维护 在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。 为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能。 这种情况下进行的维护活动叫做完善性维护。在几种维护活动中,完善性维护所占的比重最大。即大部分维护工作是改变和加强软件,而不是纠错。 完善性维护不一定是救火式的紧急维修,而可以是有计划、一种再开发活动。 事实证明,完善性维护约占整个维护工作的50%。 预防性维护 预防性维护是为了提高软件的可维护性、可靠性等,为以后进一步改进软件打下良好基础。 预防性维护定义为:采用先进的软件工程方法对需要维护的软件或软件中的某一部分重新进行设计、编制和测试。 8.2 维护的特点 8.2.1 结构化与非结构化维护对比 结构化维护用软件工程方法,有完整的软件配置存在,维护从评价设计、计划途径、修改设计、重编程序、测试到再次交付使用。 非结构化维护没有使用软件工程方法,只能从程序代码开始,由于程序内部文档不足,没有测试方面的文档,不能进行回归测试,浪费人力物力。 8.2.2 维护的代价(成本) 在软件的维护过程中,需要花费大量的工作量,从而直接影响了软件维护的成本。 应当考虑有哪些因素影响软件维护的工作量,相应应该采取什么维护策略,才能有效地维护软件并控制维护的成本 3。系统年龄: 老系统随着不断的修改,结构越来越乱; 维护人员经常更换,程序又变得越来越难于理解。 并未按照软件工程的要求进行开发,因而没有文档,或文档太少。 文档在许多地方与程序实现变得不一致。 4。数据库技术的应用:数据库管理语言与工具会影响软件的维护工作量。 5。先进的软件开发技术:使用能使软件结构比较稳定的分析与设计技术,及程序设计技术,如面向对象技术、复用技术等,可减少大量的维护工作量。 6。其它: 应用的类型、 数学模型、 任务的难度、 开关与标记、IF嵌套深度、索引或下标数等 7。许多软件在开发时并未考虑将来的修改,为软件的维护带来许多问题。 维护工作量的模型 M是维护中消耗的总工作量 p是上面描述的生产性工作量 K是一个经验常数 c是因缺乏好的设计和文档而导致复杂性的度量 d是对软件熟悉程度的度量。 8.2.3维护的问题 (1) 理解别人写的程序通常非常困难,而且困难程度随着软件配置成分的减少而迅速增加。 (2) 需要维护的软件往往没有合格的文档,或者文档资料显著不足。容易理解的并且和程序代码完全一致的文档才真正有价值。 (3) 当要求对软件进行维护时,不能指望由开发人员给我们仔细说明软件。 (4) 绝大多数软件在设计时没有考虑将来的修改。除非使用强调模块独立原理的设计方法学,否则修改软件既困难又容易发生差错。 (5) 软件维护不是一项吸引人的工作。形成这种观念很大程度上是因为维护工作经常遭受挫折。 8.3 软件维护过程 为了有效地进行软件维护,应事先就开始做组织工作。 首先建立维护的机构 申明提出维护申请报告的过程及评价的过程 为每一个维护申请规定标准的处理步骤 建立维护活动的登记制度以及规定评价和评审的标准。 1维护组织 除了较大的软件开发公司外,通常在软件维护工作方面,并不保持一个正式的组织机构。 虽然不要求建立一个正式的维护机构,但是在开发部门确立一个非正式的维护机构则是非常必要的。 2维护报告 应该用标准化的格式表达所有软件维护要求。 如果遇到了一个错误,那么必须完整描述导致出现错误的环境(包括输入数据、全部输出数据以及其他有关信息)。 对于适应性或完善性的维护要求,应该提出一个简短的需求说明书。 软件组织内部应该制定出一个软件修改报告: (1

文档评论(0)

dreamzhangning + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档