欢迎来到天天文库
浏览记录
ID:50213991
大小:112.50 KB
页数:14页
时间:2020-03-10
《软件工程 第2版 教学课件 作者 王宜贵 第7章 软件维护.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、7.1软件维护概述7.1.1软件维护的类型1.改正性维护2.适应性维护3.完善性维护4.预防性维护1.软件工程学方法对软件维护的影响采用了软件工程学方法进行的结构化维护方式,会大大减少维护的工作量,减少浪费,提高总体维护质量。2.维护的代价在过去的几十年中,维护费用在不断地上升。3.维护工作的困难软件人员的流动性没有文档资料或缺乏完整的文档资料软件设计时没有强调模块独立软件维护工作不吸引人7.1软件维护概述7.1.2软件维护的特点修改软件往往伴随着引起新的错误的危险,即它会带来副作用。1.修改代码的副作用2.修改数据的副作用3.修改文档的副作用7.1软件维护概述7.1.
2、3软件维护的副作用7.2软件维护活动7.2.1维护机构软件修改报告内容(1)维护请求的性质。(2)维护请求的优先级。(3)完成维护请求所需的工作量。(4)预计维护后的结果。7.2软件维护活动7.2.2维护申请7.2软件维护活动7.2.3维护工作流程1.分析理解程序2.修改程序3.验证程序7.2软件维护活动7.2.4程序修改的步骤(1)程序名称;(2)源语句数;(3)机器指令条数;(4)所用的程序设计语言;(5)程序安装日期;(6)程序安装后运行次数;(7)与(6)有关的故障处理次数;(8)程序改动的层次和名称;(9)因程序改动而增加的源语句数;(10)因程序改动而删除的
3、源语句数;(11)每个改动所耗费的“人时”数;(12)程序改动日期;(13)维护人员的姓名;(14)维护申请报告的名称;(15)维护类型;(16)维护开始和完成日期;(17)累计用于维护的人时数;(18)维护工作的纯效益。7.2软件维护活动7.2.5维护记录可以从以下七个方面对维护性能进行定量的度量:(1)每个程序运行平均故障处理次数;(2)累计用于每种维护的人时数;(3)每个程序、每种语言、每类维护所进行的平均代码改动次数;(4)因程序改动而增加或删除的一条源语句平均花费的人时数;(5)改动每种语言平均花费的人时数;(6)一份维护申请报告平均周转时间;(7)不同维护类
4、型所占的百分比。7.2软件维护活动7.2.6维护评价7.3软件的可维护性7.3.1决定软件可维护性的因素1.可理解性2.可测试性3.可修改性1.明确软件的质量目标和优先级2.使用提高软件质量的技术和工具3.采取有效的质量保证审查措施4.选择便于维护的程序设计语言5.完善软件文档7.3软件的可维护性7.3.2提高可维护性的方法7.3软件的可维护性7.3.3可维护性复审在软件生命周期的每一个阶段都应考虑并努力提高可维护性,在每个阶段结束前的技术审查和管理复审中,也应侧重可维护性的复审。7.4软件再工程软件再工程是通过对旧软件实施处理来增进对软件的理解,同时又提高软件自身的可
5、维护性、可复用性等。软件的逆向工程是通过分析一个源程序,力图建立源代码抽象层次的程序表示的过程。逆向工程是一个设计的恢复过程。逆向工程工具可以从一个现有的程序中提取有关程序数据、体系结构和程序设计方面的信息。7.4软件再工程软件的逆向工程是通过分析一个源程序,力图建立源代码抽象层次的程序表示的过程。逆向工程是一个设计的恢复过程。软件重构是对源代码或数据进行修改,使其易于理解和维护,以适应将来的变更。通常重构并不修改整个软件程序的体系结构,而是关注模块的细节。如果重构扩展到模块边界之外并设计软件体系结构,则重构就会变成正向工程。正向工程也称为改造,即用从现存软件恢复设计中
6、得到的信息来重构现存系统,以改变其整体质量。
此文档下载收益归作者所有