欢迎来到天天文库
浏览记录
ID:56966173
大小:312.00 KB
页数:75页
时间:2020-07-22
《软件工程导论8软件维护课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、软件工程导论(8)——软件维护南京理工大学汪惠芬2004年10月30日第八章软件维护8.1软件维护的概念8.2软件维护活动8.3软件修改的步骤8.4软件可维护性8.5提高可维护性的方法8.6逆向工程和再工程8.7本章小结基本概念软件维护程序修改可维护性本章小结逆向工程改善措施8/24/20212软件工程导论8.1软件维护的概念8.1.1软件维护的定义8.1.2影响维护工作量的因素8.1.3软件维护的策略基本概念软件维护程序修改可维护性本章小结逆向工程改善措施8/24/20213软件工程导论8.1.1软件维护的定义改正性维护(correctivemai
2、ntenance)在软件交付后,由于开发时测试的不彻底、不完全,必然会有一部分隐藏的错误被带到运行阶段。这些隐藏下来的错误在某些特定的使用环境下会暴露出来。为了识别和纠正错误、改正软件性能上的缺陷、排除实施中的误使用,应进行的诊断和改正错误的过程,是改正性维护。基本概念软件维护程序修改可维护性本章小结逆向工程改善措施8/24/20214软件工程导论8.1.1软件维护的定义适应性维护(adaptivemaintenance)随着计算机的飞速发展,外部环境(新的硬件、软件配置)或数据环境(数据库、数据格式、数据输入/输出方式、数据存储介质)可能发生变化,为
3、了使软件适应这种变化,而修改软件的过程叫作适应性维护。基本概念软件维护程序修改可维护性本章小结逆向工程改善措施8/24/20215软件工程导论8.1.1软件维护的定义完善性维护(perfectivemaintenance)在软件使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。在这种情况下进行的维护活动叫作完善性维护。基本概念软件维护程序修改可维护性本章小结逆向工程改善措施8/24/20216软件工程导论8.1.1软件维护的定义预防性维护(prev
4、entivemaintenance)为了提高软件的可维护性、可靠性等,为以后进一步改进软件打下良好基础,需要进行预防性维护。预防性维护定义为:“把今天的方法学用于昨天的系统以满足明天的需要”。也就是说,采用先进的软件工程方法对需要维护的软件或软件中的某一部分(重新)进行设计、编制和测试。基本概念软件维护程序修改可维护性本章小结逆向工程改善措施8/24/20217软件工程导论8.1.1软件维护的定义维护的工作量分配在整个软件维护阶段花费的全部工作量中,预防性维护只占很小的比例,而完善性维护占了几乎一半的工作量。基本概念软件维护程序修改可维护性本章小结逆向
5、工程改善措施适应性维护25%改正性维护20%完善性维护50%其它维护5%8/24/20218软件工程导论8.1.1软件维护的定义维护的工作量分配软件维护活动花费的工作占整个生存期工作量的70%以上。基本概念软件维护程序修改可维护性本章小结逆向工程改善措施维护70.8%8/24/20219软件工程导论8.1.2影响维护工作量的因素在软件的维护过程中,需要花费大量的工作量,从而直接影响了软件维护的成本。因此,应当考虑有哪些因素影响软件维护的工作量,相应应该采取什么维护策略,才能有效地维护软件并控制维护的成本。基本概念软件维护程序修改可维护性本章
6、小结逆向工程改善措施8/24/202110软件工程导论8.1.2影响维护工作量的因素在软件维护中,影响维护工作量的程序特性有以下6种:系统大小程序设计语言系统年龄数据库技术的应用先进的软件开发技术其它基本概念软件维护程序修改可维护性本章小结逆向工程改善措施8/24/202111软件工程导论8.1.1软件维护的策略1)改正性维护策略利用应用软件包,可开发出比由用户完全自己开发的系统可靠性更高的软件;使用结构化技术,开发的软件易于理解和测试;防错性程序设计;通过周期性维护审查,在形成维护问题之前就可确定质量缺陷。基本概念软件维护程序修改可维护性本章小结逆向
7、工程改善措施8/24/202112软件工程导论8.1.1软件维护的策略2)适应性维护策略在配置管理时,把硬件、操作系统和其它相关环境因素的可能变化考虑在内,可以减少某些适应性维护的工作量。把与硬件、操作系统,以及其它外围设备有关的程序归到特定的程序模块中。可把因环境变化而必须修改的程序局部于某些程序模块之中。使用内部程序列表、外部文件,以及处理的例行处理包,可为维护时修改程序提供方便。使用面向对象技术,增强软件系统的稳定性,易于修改和移植。基本概念软件维护程序修改可维护性本章小结逆向工程改善措施8/24/202113软件工程导论8.1.1软件维护的策略
8、3)完善性维护策略利用前两类维护中列举的方法。利用数据库管理系统、程序生成器、应用软件包,可减
此文档下载收益归作者所有