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

第8章 软件维护(new).ppt

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

教学目标 理解:软件维护的基本概念 了解:软件维护过程 理解:软件可维护性、逆向工程和再生工程 什么是软件维护? 两种错误认识 软件维护是一次新的开发活动 软件维护就是改错 软件维护是指软件系统交付使用以后,为了改正错误或满足新的需要而修改软件的过程。 软件演化是不可避免的 软件的缺陷需要修复 软件在使用过程中,新的需求不断出现 商业环境在不断地变化 计算机软件、硬件环境升级,需要更新现有系统 软件的性能和可靠性需要改进 软件演化的处理策略 软件维护 —为了修改软件缺陷或增加新的功能而对软件的组件进行变更 —不对软件的体系结构做重大改变 软件再工程方法 —为了避免软件退化而对软件的一部分、甚至全部重新设计、编码和测试,提高软件的可维护性、可靠性等 软件维护的分类 纠错性维护(Corrective Maintenance) 对在测试阶段未能发现的,在软件投入使用所逐渐暴露出来的错误的测试、诊断、定位、纠错以及验证、修改的回归测试过程。 完善性维护(Perfective Maintenance) 扩充原有系统的功能,提高原有系统的性能,或满足用户的实际需要。 例如: 在储蓄系统交付银行使用之后,增加扣除利息税的功能; 缩短系统的响应时间,使之达到新的要求; 改变现有程序输出数据的格式,以方便用户; 在正在运行的软件中增加联机求助功能等,都是完善性维护。 软件维护的分类 适应性维护(Adaptive Maintenance) 要使运行的软件能适应运行环境的变动而修改软件的过程。 外部环境(新的硬、软件配置) 数据环境(数据库、数据格式、数据输入/输出方式、数据存储介质) 预防性维护(Preventive Maintenance) 为了进一步改善软件的可靠性和易维护性,或者为将来的维护奠定更好的基础而对软件进行修改。 各种维护类型和维护工作量的比例 3、维护的问题 软件维护策略 软件维护的概念-维护成本 维护的工作可划分成: 生产性活动 如:分析评价、修改设计、编写程序代码等 非生产性活动 如:程序代码功能理解、数据结构解释、接口特点和性能界限分析等 维护的代价 有形代价:费用已上升至总预算的80%; 无形代价: 修改不及时引起用户不满 ; 占用资源以致延误开发; 维护引入新错误,降低了软件质量;等等。 软件维护的概念-维护成本 维护工作量的模型 M:维护的总工作量 ; P:生产性工作量; K:经验常数; c:复杂程度; d:维护人员对软件的熟悉程度 上述模型表明,如果软件开发没有运用软件工程方法学,而且原来的开发人员未能够参与到维护工作之中,则维护工作量和费用将指数增加。 软件维护的过程-维护过程 对于非纠错性维护,则首先判断维护类型,对适应性维护,按照评估后得到的优先级放入队列 对于改善性维护,则还要考虑是否采取行动,如果接受申请,则同样按照评估后得到的优先级放入队列,如果拒绝申请,则通知请求者,并说明原因 对于工作安排队列中的任务,由修改负责人依次从队列中取出任务,按照软件工程方法学规划、组织、实施工程。 3.维护过程 1、建立维护组织(maintenance team): 在维护活动开始之前就明确维护责任是十分必要的,这样可以大大减少维护过程中可能出现的混乱。 2、维护报告 维护人员对程序进行修改前要着重做好两个记录 维护申请报告 软件修改报告 ⑴ 维护申请报告(Maintenance Request Form) 由用户填写的外部文件,对于改正性维护提供错误情况说明(输入数据,错误清单等),或对适应性或完善性维护提供修改需求说明书等。 ⑵ 软件修改报告 与维护申请报告相应的内部文件,要求说明: ①所需修改变动的性质; ②申请修改的优先级; ③为满足某个维护申请报告,所需的工作量; ④预计修改后的状况。 软件维护记录的保存 有效的保存维护记录是极端重要的。 保存维护记录的第一个问题就是那些数据值得保存? 程序标识、源语句数、机器指令数、使用的程序设计语言、软件安装的日期、自安装以来软件运行的次数、自安装以来软件失败的次数、程序变动的层次和标识、因程序变动而增加的源语句数、因程序变动而删除的源语句数、每个改动消耗的人时数、程序改动的日期、软件工程师的名称、维护要求的标识、维护类型、维护开始和完成的时间、用于维护的累计人时数、与完成的维护相关联的纯收益。 应该为每项维护工作都收集上述数据。可以利用这些数据构成一个维护数据库。 软件维护记录 在每次软件维护任务完成后进行情况评审,对以下问题做一总结: (1) 在目前情况下,设计、编码、测试中的哪一方面可以改进? (2) 哪些维护资源应该有但没有? (3) 工作中主要的或次要的障碍

文档评论(0)

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

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

1亿VIP精品文档

相关文档