《9、软件工程(第8章 软件项目的维护).ppt》由会员分享,可在线阅读,更多相关《9、软件工程(第8章 软件项目的维护).ppt(21页珍藏版)》请在三一办公上搜索。
1、软件工程第8章 软件项目的维护,第8章 软件维护,本章要点1、软件维护的定义和类型2、维护工作量模型3、维护的副作用有哪些4、软件的可维护性,一、软件维护的定义,在软件运行/维护阶段对软件产品进行的修改就是所谓的维护。,维护的类型,1、改正性维护2、适应性维护3、完善性维护,维护的类型,1、改正性维护:目的是改正在开发周期间未能发现的遗留错误,并加以改正,大约占总维护量的20。,维护的类型,2、适应性维护:指软件适应运行环境的改变而进行的一类维护。包括:因为硬件或支持软件的改变而引起的变化;将软件移植到新机器上等,维护的类型,3、完善性维护:指提高软件性能和软件可维护性而对软件修改的过程,是软
2、件维护中最主要部分,约占50。,维护的类型,除了1、2、3类型的维护,还有一类预防性维护:为了提高软件的可维护性和可靠性而对软件进行的修改。一般只占4%左右,二、影响维护工作量的因素,1、理解别人写的程序困难,困难程序随软件配置成分减少而迅速增加2、要维护的软件往往没有合适的文档或资料不全3、绝大多数软件设计时没有考虑将来的修改,二、影响维护工作量的因素,4、软件维护不是一项吸引人的工作5、软件人员经常流动,维护不能依靠原开发人员6、追踪软件的建立过程非常困难,或根本做不到,三、维护成本,软件维护有形的代价:维护的费用在总费用中的比重是在不断增加的。无形的代价:占用资源。,四、维护工作量的模型
3、,维护工作中总的工作量由下式决定:M是维护中消耗的总工作量;p是生产性工作量,表明软件越大,开发的系统越复杂,维护工作量就越大;k是一个经验常数;c是因缺乏好的设计和文档而导致复杂性的度量;d是对软件熟悉程度的度量。,五、维护的副作用,因修改软件而造成的错误或其他不希望出现的情况称为维护的副作用。维护的副作用有三种:1、编码副作用2、数据副作用3、文档副作用,1、编码副作用,在使用程序设计语言修改源代码时可引入如下错误:(1)删除或修改一个子程序、一个标号和一个标识符(2)改变程序代码的时序关系,改变占用内存的大小,改变逻辑运算符;(3)修改文件的打开或关闭;(4)改进程序的执行效率;(5)把
4、设计上的改变翻译成代码的改变;(6)为边界条件的逻辑测试做出改变。,2、数据副作用,在修改数据结构时,有可能造成软件设计与数据结构不匹配,因而导致软件错误。,3、文档副作用,对数据流、软件结构、模块逻辑或任何其他有关特性进行修改时,必须对相关技术文档进行相应修改。否则会导致文档与程序功能不匹配、缺省条件改变和新错误信息不正确等错误,使文档不能反映软件当前的状态。,六、软件可维护性,1、可维护性定义 是指软件能够被理解、校正、适应及增强功能的容易程度。,六、软件可维护性,2、衡量软件质量的几个主要特性(1)软件的可维护性(2)可使用性(3)可靠性,六、软件可维护性,3、软件可维护性的7种质量特性 可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。,六、软件可维护性,4、提高可维护性的方法(1)建立明确的软件质量目标;(2)利用先进的软件开发技术和工具;(3)建立明确的质量保证工作;(4)选择可维护的程序设计语言;(5)改进程序文档。,