1 / 44
文档名称:

软件工程课件 SE18.ppt

格式:ppt   大小:287KB   页数:44页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

软件工程课件 SE18.ppt

上传人:清晨 2022/5/8 文件大小:287 KB

下载得到文件列表

软件工程课件 SE18.ppt

文档介绍

文档介绍:软件工程
Software Engineering
Date
1
广东工业大学计算机学院
第18章 软件维护
为了软件工作适应环境的变化,就必须对软件进行维护 。
本章内容:
软件维护概述
软件可维护√
可靠性

可移植性

可使用性


效率

Date
9
广东工业大学计算机学院
可维护性的度量(七种)
1. 可理解性
可理解性是指人们通过阅读源代码和相关文档,了解程序功能及其如何运行,对源程序的代码容易理解。可理解性高的程序应具有模块化,编程风格清晰、易读,不使用具有歧义的代码,使用有意义的标示符作为变量名和函数名等特征。
2. 可靠性
可靠性指按照用户的要求和设计目标,一个程序在给定的一段时间内正确执行的概率,是软件整体质量的一个重要的因素。
度量可靠性的方法,主要有两种:
(1)根据程序存在的错误的统计数字,进行可靠性预测。(2)根据程序复杂性,预测软件可靠性。
Date
10
广东工业大学计算机学院
3. 可测试性
可测试性表明论证程序正确性的容易程度。
4. 可修改性
可修改性表明程序容易修改的程度。
5. 可移植性
可移植性表明程序转移到一个新的计算环境的容易程度的大小。
6. 效率
效率表明一个程序能执行预定功能而又不浪费机器资源的程度。
7. 可使用性
可使用性是从用户观点出发来定义的。
Date
11
广东工业大学计算机学院
8. 其他间接定量度量可维护性的方法
Gilb提出了与软件维护期间工作量有关的一些数据,可以使用它们间接地对软件的可维护性做出估计。
(1)问题识别的时间。
(2)因管理活动拖延的时间。
(3)收集维护工具的时间。
(4)分析、诊断问题的时间。
(5)修改规格说明的时间。
(6)具体的改错或修改的时间。
(7)局部测试的时间。
(8)集成或回归测试的时间。
(9)维护和评审时间。
(10)恢复时间。
Date
12
广东工业大学计算机学院
软件维护的特点 非结构化维护和结构化维护
1. 非结构化维护
因为只有源程序,而文档很少或没有文档,维护活动只能从阅读、理解和分析源程序开始。也只有通过阅读源程序来了解系统功能、软件结构、数据结构、系统接口和设计约束等。要完成这些工作是非常困难的。要想搞清楚,要花费大量的人力、物力,最终对源程序修改的后果还是难以估量的,难以估计软件的质量。因为没有测试文档,不可能进行回归测试,很难保证程序的正确性。
2. 结构化维护
用软件工程思想开发的软件具有各个阶段的文档,这对于理解、掌握软件功能、性能、软件结构、数据结构、系统接口和设计约束有很大作用。进行维护活动时,需从评价需求说明开始,搞清楚软件功能、性能上的改变;对设计说明文档进行评价,对设计说明文档进行修改和复查;根据设计的修改,进行程序的变动;根据测试文档中的测试用例进行回归测试。
Date
13
广东工业大学计算机学院
结构化维护和非结构化维护在维护活动中的区别
图18-1 结构化维护和非结构化维护
Date
14
广东工业大学计算机学院
维护的困难性
(1)读懂别人的源程序是困难的。
(2)文档的不一致性。
(3)软件开发和软件维护在人员和时间上的差异。(4)软件维护不是一项具有吸引力的工作。
Date
15
广东工业大学计算机学院
软件维护的费用
软件维护的费用在总费用中的比重是在不断增加的.
软件维护费用不断上升,这只是软件维护有形的代价。另外还有无形的代价,即要占用更多的硬件、软件和软件工程师等资源,这样一来,新的开发工作就因投入的资源不足而受到影响。
软件维护的困难造成软件维护的生产率非常低,相对来说,大大增加了软件维护的费用。
用于软件维护工作的活动可分为生产性活动和非生产性活动两种。生产性活动包括分析评价、修改设计和编写程序代码等。非生产性活动包括理解程序代码功能,解释数据结构、接口特点和设计约束。维护活动总的工作量由下式表示:
M = P + K·exp(C-D)
其中:M表示维护工作的总工作量;P表示生产性活动工作量;K表示经验常数;C表示复杂性程序;D表示维护人员对软件的熟悉程度。
上式表明,若C越大,D越小,那么维护工作量将成指数增加;C增加表示软件因未用软件工程方法开发,文档缺少,程序复杂性高;D表示对软件熟悉程度,如果维护人员不是开发人员,则重新理解软件会花费很多时间,造成总的维护费用上升。
Date
16
广东工业大学计算机学院
软件维护的实施