软件工程课本讲解第6章-软件维护.ppt

软件工程课本讲解第6章-软件维护.ppt

ID:61896394

大小:316.50 KB

页数:113页

时间:2021-03-26

软件工程课本讲解第6章-软件维护.ppt_第1页
软件工程课本讲解第6章-软件维护.ppt_第2页
软件工程课本讲解第6章-软件维护.ppt_第3页
软件工程课本讲解第6章-软件维护.ppt_第4页
软件工程课本讲解第6章-软件维护.ppt_第5页
资源描述:

《软件工程课本讲解第6章-软件维护.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件维护软件维护的概念软件维护活动程序修改的步骤及修改的副作用可维护性提高可维护性的方法逆向工程和再工程(了解)1预习:1.什么是软件维护?有哪几种类型?维护活动中,哪种维护所占的比重最大?2.为什么说软件的维护是不可避免的?3.软件维护申请报告是由谁填写的?4.软件维护时,对源程序进行修改的步骤?5.什么是修改程序的副作用,主要有哪些?6.什么是软件可维护性,决定软件可维护性的因素?7.针对某一应用系统,如:(1)教材销售采购系统;(2)图书管理系统;(3)房产管理系统,提出改进和扩充功能的要求?

2、8.要求在课程报告中阐明你是如何提高项目的可维护性,即采取什么方法提高项目的可维护性?26.1软件维护的概念软件维护的定义影响维护工作量的因素软件维护的策略维护成本3一、软件维护的定义在软件运行/维护阶段对软件产品进行的修改就是所谓的维护。软件维护是软件生存周期的最后一个阶段,不属于系统开发的过程。问题内容维护目的维护种类满足用户对已开发产品的性能与运行环境不断提高的要求,进而达到延长软件寿命的目的。改正性适应性完善性预防性对程序使用期间发现的程序错误进行诊断和改正的过程;配合变化了的环境进行修改软

3、件的活动;满足用户在使用过程中提出增加新的功能或修改已有功能的建议而进行的工作;为了改善未来的可维护性或可靠性而修改软件的工作。软件维护的工作量非常大,不同应用领域的维护成本差别也很大。一般大型软件的维护成本平均高达开发成本的四倍左右。改正性完善性适应性预防性17—21%50—66%18—25%4%左右软件的易维护性是软件开发过程中每个步骤的一个关键目标。维护费用占软件总支出的20-30%到70-80%。而无形的代价更是无法估计的。4改正性维护在软件交付使用后,因开发时测试的不彻底、不完全,必然会有

4、部分隐藏的错误遗留到运行阶段。这些隐藏下来的错误在某些特定的使用环境下就会暴露出来。为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程就叫做改正性维护。5适应性维护在使用过程中,外部环境(新的硬、软件配置)数据环境(数据库、数据格式、数据输入/输出方式、数据存储介质)可能发生变化。为使软件适应这种变化,而去修改软件的过程就叫做适应性维护。6完善性维护在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足这些要求,需要修改或再开发软件,以扩充

5、软件功能、增强软件性能、改进加工效率、提高软件的可维护性。这种情况下进行的维护活动叫做完善性维护。7实践表明,在几种维护活动中,完善性维护所占的比重最大。即大部分维护工作是改变和加强软件,而不是纠错。完善性维护不一定是救火式的紧急维修,而可以是有计划、有预谋的一种再开发活动。事实证明,来自用户要求扩充、加强软件功能、性能的维护活动约占整个维护工作的50%。8预防性维护预防性维护是为了提高软件的可维护性、可靠性等,为以后进一步改进软件打下良好基础。预防性维护定义为:采用先进的软件工程方法对需要维护的软

6、件或软件中的某一部分(重新)进行设计、编制和测试。9在整个软件维护阶段所花费的全部工作量中,完善性维护占了几乎一半的工作量。软件维护活动所花费的工作占整个生存期工作量的70%以上,这是由于在漫长的软件运行过程中需要不断对软件进行修改,以改正新发现的错误、适应新的环境和用户新的要求,这些修改需要花费很多精力和时间,而且有时会引入新的错误。10三类维护占 总维护比例维护在软件生 存期所占比例11二、影响维护工作量的因素在软件的维护过程中,需要花费大量的工作量,从而直接影响了软件维护的成本。应当考虑有哪些

7、因素影响软件维护的工作量,相应应该采取什么维护策略,才能有效地维护软件并控制维护的成本。12系统大小:系统越大,理解掌握起来越困难。系统越大,所执行功能越复杂。因而需要更多的维护工作量。程序设计语言:使用强功能的程序设计语言可以控制程序的规模。语言的功能越强,生成程序的模块化和结构化程度越高,所需的指令数就越少,程序的可读性越好。13系统年龄:老系统随着不断的修改,结构越来越乱;维护人员经常更换,程序又变得越来越难于理解。许多老系统在当初并未按照软件工程的要求进行开发,因而没有文档,或文档太少。在长

8、期的维护过程中文档在许多地方与程序实现变得不一致,在维护时就会遇到很大困难。14数据库技术的应用:使用数据库,可以简单而有效地管理和存储用户程序中的数据,还可以减少生成用户报表应用软件的维护工作量。先进的软件开发技术:在软件开发时,若使用能使软件结构比较稳定的分析与设计技术,及程序设计技术,如面向对象技术、复用技术等,可减少大量的工作量。15其它:应用的类型数学模型任务的难度开关与标记、IF嵌套深度、索引或下标数等对维护工作量都有影响。许多软件在开发时并未考虑将来的修

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。