软件工程教案_7

软件工程教案_7

ID:42342709

大小:431.50 KB

页数:104页

时间:2019-09-13

软件工程教案_7_第1页
软件工程教案_7_第2页
软件工程教案_7_第3页
软件工程教案_7_第4页
软件工程教案_7_第5页
资源描述:

《软件工程教案_7》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第七章软件维护与软件再工程§7.1软件维护的概念四类维护活动:改正性维护适应性维护扩充与完善性维护预防性维护三类维护所占比例:其它维护5%适应性维护25%改正性维护20%扩充与完善性维护50%改正性维护占全部维护量的比率已从80年代初的20%大幅度下降,90年代初一些公司的产品差错率已接近于零。各类维护活动的根本目的是延长软件生存期其它维护4%软件生存周期软件诞生计划分析设计编码测试运行和维护(简称维护)改善期稳定期陈旧期1年-10年2个月-2年重构软件工程周期§7.2软件维护的特点MP+Ke=(c-d)M:维护工作总工作量P:生产性工作量K:经验常数c:复杂度d:对该软件

2、熟悉程度的度量7.2.1维护的成本7.2.2维护中的典型问题(1)难以跟踪软件版本的进化过程,软件的变化未在文档中反映出来。(2)难以跟踪软件的创建过程。(3)难以读懂他人程序。(4)无文档或不全。(5)软件人员流动性大。(6)设计时未考虑修改需要,修改困难。(7)维护工作无吸引力,缺乏成就感。§7.3软件的维护任务修改负责人维护申请系统监督员配置管理员7.3.1维护机构维护人员维护管理员7.3.2保存维护记录维护过程中作应记录的数据程序标识源程序语句数目机器代码指令条数..............以收集的数据为基础构造维护数据库,供维护评价使用。§7.4软件维护的实施7.

3、4.1修改源程序的三个步骤分析和理解程序修改程序重新验证程序7.4.2修改程序的副作用修改代码的副作用修改数据的副作用修改文档的副作用7.4.3重新验证程序1.静态确认2.计算机确认3.维护后的验收从维护角度所需的测试种类:(1)对修改事务的测试(2)对修改程序的测试(3)操作过程的测试(4)应用系统运行过程的测试(5)使用过程的测试(6)系统各部分间接口的测试(7)与系统软件接口的测试(8)安全性测试(9)后备/恢复过程测试……§7.5软件可维护性7.5.1软件可维护性的定义软件可维护性是指纠正软件系统出现的错误和缺陷,以及为满足新的要求进行修改、扩充或压缩的容易程度。衡

4、量软件质量的几个主要质量特性:可维护性可使用性可靠性7.5.2可维护性的度量度量程序可维护性的7个特性在各类维护中的侧重点。改正性维护适应性维护完善性维护可理解性可测试性可修改性可靠性可移植性可使用性效率§7.6提高可维护性的方法建立明确的软件质量目标和优先级使用提高软件质量的技术和工具进行明确的质量保证审查选择可维护的程序设计语言改进程序的文档开发软件时考虑到维护§7.7预防性维护开发和维护者不应等待用户的维护申请,可先选择以下类型程序作为预防性维护对象:(1)预计若干年内将继续使用的程序(2)当今正成功使用的程序(3)最近的将来要进行大修改和完善的程序

5、§7.8软件再工程7.8.1什么是软件再工程在软件复用中,有问题是与现有系统密切相关的。例如:—现有软件系统如何适应当前技术的发展及需求的变化,采用更易于理解的、适应变化的、可复用的系统软件构架并提炼出可复用的软件构件?—现存大量的遗产软件系统(LegacySoftware)由于技术的发展,正逐渐退出使用,如何对这些系统进行挖掘、整理,得到有用的软件构件?—已有的软件构件随着时间的流逝会逐渐变得不可使用,如何对它们进行维护,以延长其生命期,充分利用这些可复用构件?软件再工程(SoftwareReengineering)正是解决上述问题的主要技术手段。软件再工程是一类软件工程

6、活动,是一个工程过程,它将逆向工程、重构和正向工程组合起来,将现存系统重新构造为新的形式。再工程的基础是系统理解,包括对运行系统、源代码、设计、分析、文档等的全面理解。但在很多情况下,由于各类文档的丢失,只能对源代码进行理解,即程序理解。它能够使我们:增进对软件的理解;提高软件自身的可维护性、复用性或演化性.软件再工程过程模型代码重构数据重构正向工程库存目录分析文档重构逆向工程逆向工程逆向工程(反推工程reverseengineering)从现有软件恢复设计信息(有用的维护信息)。设计的恢复过程非结构化、无文档的源代码或目标代码软件的全部文档软件再工程相关术语间关系信息库1

7、类视图:非过程性描述、元描述例:规格说明再工程3类视图:过程性描述例:源程序再工程2类视图:伪过程性描述、结构性描述例:DFD、PDLA2类视图:分析再工程逆向工程设计恢复再工程逆向工程设计恢复再工程A1类视图:分析A3类视图:分析分解综合生成视图软件视图Softwareview有关软件的一种表达形式或报告。视图分类:1类视图:2类视图:3类视图:A类视图:伴随上述各类的分析视图;A1类视图是对1类视图的分析信息;A2类视图是有关2类视图的分析信息;A3类视图是由3类视图得到。软件视图示例信息库视图编辑器DFD视图

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

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

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