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

国防科技大学计算机学院软件工程导论课件第8讲 软件维护.ppt

国防科技大学计算机学院软件工程导论课件第8讲 软件维护.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
?Copyright Xinjun Mao 软件维护 第8讲 软件维护 毛新军 教授 xjmao@nudt.edu.cn 计算机科学与技术系602教研室 0731-(45)73649 前言 软件在交付给用户使用后,由于应用需求、环境变化以及自身问题,对它进行维护不可避免 软件维护是一个长期过程,耗费较大 主讲内容 软件维护的分类 软件维护过程 软件的可维护性 维护活动 维护的副作用 逆向工程和重构工程 1. 软件维护的分类 纠正性维护 完善性维护 适应性维护 预防性维护 纠正性维护 什么是纠正性维护 纠正软件中的错误 起因 用户在使用软件过程中一旦发现错误,他们会向开发人员提出纠正性维护的请求 目的 诊断和改正软件系统中潜藏的错误 适应性维护 什么是适应性维护 对软件进行改造以便适应新的环境和平台 原因 软件运行于一定的环境(硬件、OS、网络等)之上,运行环境发展很快 目的 适应环境变化和发展而对软件进行维护 改善性维护 什么是改善性维护 对软件进行改造以增加新的功能、修改已有的功能 原因 在软件系统运行期间,用户可能要求增加新的功能、建议修改已有功能或提出其他改进意见 目的 满足用户日益增长的各种需求而对软件系统进行的改善和补充 预防性维护 什么是预防性维护 对软件的结构进行改造以便提高软件的可靠性和可维护性等 原因 为进一步改善软件系统的可维护性和可靠性,为以后的软件改进奠定基础的维护活动 目的 获取软件结构,重新改善软件结构 主讲内容 软件维护的分类 软件维护过程 软件的可维护性 维护活动 维护的副作用 逆向工程和重构工程 软件维护形式 软件维护成本(1/2) 维护成本不断增加 70年代(35%-40%),80(60%) 软件维护工作量涉及二方面 助动性:用于理解代码功能,结构特征以及性能约束 生产性:用于分析和评价、修改设计和代码 软件维护成本(2/2) 软件维护工作量模型:M = P + K * e (c-d) 其中 M= 维护总工作量 P=生产性工作量 K=经验常数 C=复杂度(表示设计好坏和文档完整程度) D=对欲维护软件的熟悉程度 模型表明:如果没有好的软件开发方法或者软件开发人员不能参与维护,那么软件维护工作量会指数上升 软件维护可能存在的问题 软件版本控制 -- 重要问题 很难追踪软件的创建过程 -- 文档不齐全 理解他人的软件比较困难 人员流动大,维护人员得不到开发人员帮助 软件修改困难,易出错 缺乏成就感 主讲内容 软件维护的分类 软件维护过程 软件的可维护性 维护活动 维护的副作用 逆向工程和重构工程 软件的可维护性 什么是软件的可维护性 软件被理解、改正、调整和改进的程度 影响软件可维护性的因素 软件开发方法--结构化、OO、…... 文档是否齐全 开发人员素质 软件系统结构是否清晰、易于理解 标准的程序设计语言 文档的结构是否标准化 …... 保证软件可维护性的复审(1/2) 复审是保证软件可维护性的一项重要工作 (1) 需求分析的复审 对将来可能修改和改进的部分加注释,对软件的可移植性加以讨论,并考虑可能影响软件维护的系统界面 (2) 设计阶段的复审 从易于维护和提高设计总体质量的角度全面评审数据设计、总体结构设计、过程设计和人机界面设计 保证软件可维护性的复审(2/2) (3) 编码阶段的复审 强调编码风格和内部文档 (4) 阶段性测试 必要的预防性维护 (5) 软件维护活动完成之际也要进行复审 主讲内容 软件维护的分类 软件维护过程 软件的可维护性 维护活动 维护的副作用 逆向工程和重构工程 维护组织 “抓着谁就是谁”不可取,好的组织模式极为重要 维护报告和评估 所有的维护申请都应以标准化的形式 纠正性维护:记录出错现场(输入数据、出错信息等) 适应性和完善性维护:提供简短的修改规格说明书 维护申请单将成为外部文档,应被视为完成维护任务 的主要依据 维护活动事件流 确认用户的维护请求 按关键程度将每一维护任务在任务队列中排队 对队首的维护任务开展工作 状况复审 保存维护纪录 记录维护活动过程中的各种信息 目的: 估算维护技术的有效性 估算维护技术的实际成本 评价维护活动 度量和统计维护数据 软件每次运行的平均失效次数 各类维护的成本 维护阶段增删一个语句所花费的人时数 各类维护的百分比 主讲内容 软件维护的分类 软件维护过程 软件的可维护性 维护活动 维护的副作用 逆向工程和重构工程 维护的副作用 改动 -- 新的错误 维护的副作用是指由于维护或者在维护过程中其他一些不期望的行为引入的错误 代码副作用: 如修改或者删除程序、修改或者删除语句标号、修改逻辑符号等等。慎重,可通过回归测试发现 数据副作用: 因修改信息结构而带来的不良后果,如局部和全局数据

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档