软件工程第八讲--维护

软件工程第八讲--维护

ID:38515758

大小:349.00 KB

页数:41页

时间:2019-06-14

软件工程第八讲--维护_第1页
软件工程第八讲--维护_第2页
软件工程第八讲--维护_第3页
软件工程第八讲--维护_第4页
软件工程第八讲--维护_第5页
资源描述:

《软件工程第八讲--维护》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章维护8.1软件维护的定义8.2软件维护活动8.3程序修改步骤8.4软件的可维护性8.1.1软件维护概念8.1.2影响软件维护工作量的因素8.1.3维护成本8.1软件维护的定义8.1.1软件维护定义所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。软件维护包括下述4项活动。(1)改正性维护。(2)适应性维护。(3)完善性维护。(4)预防性维护。三类维护占维护在软件生 总维护比例存期所占比例8.1.2影响维护工作量的因素系统规模程序设计语言系统年龄数据库技术的应用先进的软件开发

2、技术应用类型数学模型等8.1.3维护成本M是维护中消耗的总工作量p是上面描述的生产性工作量K是一个经验常数c是因缺乏好的设计和文档而导致复杂性的度量d是对软件熟悉程度的度量。8.2软件维护活动(I)为了有效地进行软件维护,应事先就开始做组织工作。首先建立维护的机构申明提出维护申请报告的过程及评价的过程为每一个维护申请规定标准的处理步骤建立维护活动的登记制度以及规定评价和评审的标准。软件维护的机构软件维护工作流程8.2软件维护活动(II)尽管维护申请的类型不同,但都要进行同样的技术工作。修改软件需求说明修改软件设计

3、设计评审对源程序做必要的修改单元测试集成测试(回归测试)确认测试软件配置评审等8.2软件维护活动(III)在每次软件维护任务完成后进行情况评审,对以下问题做一总结:(1)在目前情况下,设计、编码、测试中的哪一方面可以改进? (2)哪些维护资源应该有但没有? (3)工作中主要的或次要的障碍是什么? (4)从维护申请的类型来看是否应当有预防性维护?情况评审对将来的维护工作如何进行会产生重要的影响。8.2软件维护活动(IV)维护档案记录程序名称源程序语句条数机器代码指令条数所用的程序设计语言程序安装的日期程序安装后的运

4、行次数与程序安装后运行次数有关的处理故障次数程序改变的层次及名称修改程序增加的源程序语句条数修改程序减少的源程序语句条数每次修改所付出的“人时”数修改程序的日期软件维护人员的姓名维护申请报告的名称、维护类型开始时间和维护结束时间在维护上的累计人时数维护工作的净收益等8.3程序修改步骤在软件维护时,必然会对源程序进行修改。通常对源程序的修改不能无计划地仓促上阵,为了正确、有效地修改,需要经历以下三个步骤。分析和理解程序修改程序重新验证程序8.3.1分析理解程序经过分析,全面、准确、迅速地理解程序是决定维护成败和质量

5、好坏的关键。在这方面,软件的可理解性和文档的质量非常重要。理解程序的功能理解程序的结构了解数据流信息了解控制流信息理解程序操作要求8.3.2修改程序1、设计程序修改计划2、修改代码以适应变化3、修改程序的副作用可能引入错误可能出现软件设计和数据结构不匹配文档和程序不匹配8.3.3重新验证程序(I)静态确认验证修改后的程序需要检查:(1)修改是否涉及到规格说明书?修改结果是否符合规格说明书?(2)程序的修改是否足以修正软件中的问题?源程序代码有无逻辑错误?修改时有无修补失误?(3)修改部分对其它部分有无不良影响(副

6、作用)?8.3.3重新验证程序(II)计算机确认用计算机对修改程序进行确认测试:(1)确认测试顺序:先对修改部分进行测试,然后隔离修改部分,测试程序的未修改部分,最后再把它们集成起来进行测试。这种测试称为回归测试。(2)准备标准的测试用例。(3)充分利用软件工具帮助重新验证过程。(4)在重新确认过程中,需邀请用户参加。8.3.3重新验证程序(III)维护后的验收维护主管部门要检验:(1)全部文档是否完备,并已更新;(2)所有测试用例和测试结果已经正确记载;(3)记录软件配置所有副本的工作已经完成;(4)维护工序和

7、责任已经确定。8.3.3重新验证程序(IV)所需测试的种类:(1)对修改事务的测试;(2)对修改程序的测试;(3)操作过程的测试;(4)应用系统运用过程的测试;(5)系统各部分之间接口的测试;(6)作业控制语言的测试;(7)与系统软件接口的测试;(8)软件系统之间接口的测试;(9)安全性测试;(10)后备/恢复过程的测试。8.4软件可维护性(I)软件可维护性是指纠正软件系统出现的错误和缺陷,以及为满足新的要求进行修改、扩充或压缩的容易程度。可维护性、可使用性、可靠性是衡量软件质量的主要质量特性,也是用户十分关心的

8、几个方面。软件的可维护性是软件开发阶段各个时期的关键目标。8.4.1决定软件可维护性的因素目前广泛使用的是用如下的七个特性来衡量程序的可维护性。可理解性可使用性可测试性可移植性可修改性效率可靠性在各类维护中的侧重点8.4.1.1可理解性可理解性表明人们通过阅读源代码和相关文档,了解程序功能及其如何运行的容易程度。一个可理解的程序应具备以下一些特性:模块化、风格一致性、不使

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

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

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