- 1、本文档共108页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十五讲 软件维护 Software Maintaining 本讲的主要内容 软件维护的概念 软件维护活动 程序修改的步骤及修改的副作用 可维护性 提高可维护性的方法 一、软件维护的概念 软件维护的定义 影响维护工作量的因素 软件维护的策略 维护成本 1、软件维护的定义 在软件运行/维护阶段对软件产品进行的修改就是所谓的维护。 维护的类型有三种: 改正性维护 适应性维护 完善性维护 预防性维护 改正性维护 在软件交付使用后,因开发时测试的不彻底、不完全,必然会有部分隐藏的错误遗留到运行阶段。 这些隐藏下来的错误在某些特定的使用环境下就会暴露出来。 为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程就叫做改正性维护。 适应性维护 在使用过程中, 外部环境(新的硬、软件配置) 数据环境(数据库、数据格式、数据输入/输出方式、数据存储介质)可能发生变化。 为使软件适应这种变化,而去修改软件的过程就叫做适应性维护。 完善性维护 在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。 为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。 这种情况下进行的维护活动叫做完善性维护。 实践表明,在几种维护活动中,完善性维护所占的比重最大。即大部分维护工作是改变和加强软件,而不是纠错。 完善性维护不一定是救火式的紧急维修,而可以是有计划、有预谋的一种再开发活动。 事实证明,来自用户要求扩充、加强软件功能、性能的维护活动约占整个维护工作的50%。 预防性维护 预防性维护是为了提高软件的可维护性、可靠性等,为以后进一步改进软件打下良好基础。 预防性维护定义为:采用先进的软件工程方法对需要维护的软件或软件中的某一部分(重新)进行设计、编制和测试。 在整个软件维护阶段所花费的全部工作量中,完善性维护占了几乎一半的工作量。 软件维护活动所花费的工作占整个生存期工作量的70%以上,这是由于在漫长的软件运行过程中需要不断对软件进行修改,以改正新发现的错误、适应新的环境和用户新的要求,这些修改需要花费很多精力和时间,而且有时会引入新的错误。 三类维护占 总维护比例 2、影响维护工作量的因素 在软件的维护过程中,需要花费大量的工作量,从而直接影响了软件维护的成本。 应当考虑有哪些因素影响软件维护的工作量,相应应该采取什么维护策略,才能有效地维护软件并控制维护的成本。 系统大小:系统越大,理解掌握起来越困难。系统越大,所执行功能越复杂。因而需要更多的维护工作量。 程序设计语言:使用强功能的程序设计语言可以控制程序的规模。语言的功能越强,生成程序的模块化和结构化程度越高,所需的指令数就越少,程序的可读性越好。 系统年龄: 老系统随着不断的修改,结构越来越乱; 维护人员经常更换,程序又变得越来越难于理解。 许多老系统在当初并未按照软件工程的要求进行开发,因而没有文档,或文档太少。 在长期的维护过程中文档在许多地方与程序实现变得不一致,在维护时就会遇到很大困难。 数据库技术的应用:使用数据库,可以简单而有效地管理和存储用户程序中的数据,还可以减少生成用户报表应用软件的维护工作量。 先进的软件开发技术:在软件开发时,若使用能使软件结构比较稳定的分析与设计技术,及程序设计技术,如面向对象技术、复用技术等,可减少大量的工作量。 其它: 应用的类型 数学模型 任务的难度 开关与标记、IF嵌套深度、索引或下标数等 都对维护工作量有影响。 许多软件在开发时并未考虑将来的修改,为软件的维护带来许多问题。 3、软件维护的策略 改正性维护通常要生成100%可靠的软件并不一定合算,成本太高。但通过使用新技术,可大大减少进行改正性维护的需要。 这些技术包括:数据库管理系统、软件开发环境、程序自动生成系统、较高级(第四代)的语言。以及新的开发方法、软件复用、防错程序设计及周期性维护审查等。 适应性维护这一类维护不可避免,可以控制。(1) 在配置管理时,把硬件、操作系统和其它相关环境因素的可能变化考虑在内。(2) 把与硬件、操作系统,以及其它外围设备有关的程序归到特定的程序模块中。 (3) 使用内部程序列表、外部文件,以及处理的例行程序包,可为维护时修改程序提供方便。 完善性维护利用前两类维护中列举的方法,也可以减少这一类维护。特别是数据库管理系统、程序生成器、应用软件包,可减少维护工作量。此外,建立软件系统的原型,把它在实际系统开发之前提供给用户。用户通过研究原型,进一步完善他们的功能要求,就可以减少以后完善性维护的需要。 4、维护成本 有形的软件维护成本是花费了多少钱,无形的维护成本有更大的影响。 一些合理的修复或修改
您可能关注的文档
- 精装修工程细部节点构造标准通用图集探究.pdf
- UTV150、300农用车日常保养须知探究.pdf
- 《模拟电子技术基础》题库探究.doc
- 咸阳中集项目定位20130531试题.pptx
- 中国大唐集团公司集控值班员考核汽机运行探究.doc
- 第三章金属及其化合物本章整合预案.ppt
- 显像管搬运机械手设计试题.doc
- 第二章定量误差与数据的处理预案.ppt
- 井间电磁油气储层监测技术的发展探究.pdf
- 04控制项目范围探究.pptx
- 北师大版(2024)八年级数学上册课件 3.2 平面直角坐标系 第2课时 点的坐标特征.pptx
- 北师大版(2024)八年级数学上册课件 3.2 平面直角坐标系 第3课时 建立适当的平面直角坐标系.pptx
- 北师大版(2024)八年级数学上册课件 4.3 一次函数的图象 第1课时 正比例函数的图象及性质.pptx
- (人教A版数学选择性必修三)讲义第15讲7.1.1条件概率(学生版+解析).docx
- (人教A版数学选择性必修三)讲义第19讲8.1成对数据的统计相关性(8.1.1变量的相关关系+8.1.2样本相关系数)(学生版+解析).docx
- 北师大版(2024)八年级数学上册课件 5.2 二元一次方程组的解法 第2课时 加减消元法.pptx
- (人教A版数学选择性必修一)2025年秋季学期讲义第01讲1.1.1空间向量及其线性运算(学生版+教师版).docx
- 北师大版(2024)八年级数学上册课件 5.2 二元一次方程组的解法 第1课时 代入消元法.pptx
- 北师大版(2024)八年级数学上册课件 5.3 二元一次方程组的应用 第3课时 二元一次方程组的应用(3).pptx
- 北师大版(2024)八年级数学上册课件 5.4 二元一次方程与一次函数 第2课时 用二元一次方程组确定一次函数表达式.pptx
最近下载
- 黑龙江省齐齐哈尔市克东县克东一中、克山一中等五校联考2025年高三5月仿真考试数学试题含解析.doc VIP
- 新编机关事业单位工人汽车驾驶员高技师国家题库练习题题附答案.docx VIP
- 黑龙江省齐齐哈尔市克东县第一中学2025届高三下学期第五次模拟测试数学试题(含答案解析).docx
- 2025年福建省中考语文试卷(含答案).docx
- 新编机关事业单位工人汽车驾驶员高级、技师国家题库练习题455题(附答案)名师资料..doc VIP
- T_BPMA 0010—2021_现制现售净水机卫生管理规范.pdf VIP
- 复合益生菌发酵玉米-豆粕型日粮对哺乳期羔羊瘤胃发酵参数及菌群结构的影响.pdf VIP
- 野百合也有春天,日本女白领情定宁夏送电工.doc VIP
- 浅谈对智能化医院系统建设见解.doc VIP
- FSSC220006.0 附件中文版本.pdf VIP
文档评论(0)