软件工程课件-6第六章软件维护.ppt

上传人:ni****g 文档编号:568448865 上传时间:2024-07-24 格式:PPT 页数:43 大小:1.14MB
返回 下载 相关 举报
软件工程课件-6第六章软件维护.ppt_第1页
第1页 / 共43页
软件工程课件-6第六章软件维护.ppt_第2页
第2页 / 共43页
软件工程课件-6第六章软件维护.ppt_第3页
第3页 / 共43页
软件工程课件-6第六章软件维护.ppt_第4页
第4页 / 共43页
软件工程课件-6第六章软件维护.ppt_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《软件工程课件-6第六章软件维护.ppt》由会员分享,可在线阅读,更多相关《软件工程课件-6第六章软件维护.ppt(43页珍藏版)》请在金锄头文库上搜索。

1、软件工程软件工程任课教师:程丽任课教师:程丽计算机与信息学院计算机与信息学院第六章第六章 软件维护软件维护l l6.1 软件维护的内容软件维护的内容l l6.2 软件维护的特点软件维护的特点l l6.3 软件维护的实施软件维护的实施l l6.4 软件可维护性软件可维护性第六章第六章 软件维护软件维护l课程的任务、目的和基本要求课程的任务、目的和基本要求熟熟悉悉软软件件维维护护的的内内容容、特特点点、实实施施了解如何提高了解如何提高软件的可件的可维护性性 1.1.什么是软件维护?什么是软件维护? 软件维护是指软件系统交付使用以软件维护是指软件系统交付使用以后,为了改正错误或满足新的需求而后,为了

2、改正错误或满足新的需求而修改软件的过程。修改软件的过程。 第六章第六章 软件维护软件维护2.2.2.2.软件维护的原因软件维护的原因软件维护的原因软件维护的原因 在运行中发现了在测试阶段未能发现的软件错误在运行中发现了在测试阶段未能发现的软件错误在运行中发现了在测试阶段未能发现的软件错误在运行中发现了在测试阶段未能发现的软件错误和设计缺陷;和设计缺陷;和设计缺陷;和设计缺陷;需要改进设计,以增强软件的功能,提高软件的需要改进设计,以增强软件的功能,提高软件的需要改进设计,以增强软件的功能,提高软件的需要改进设计,以增强软件的功能,提高软件的性能;性能;性能;性能;要求已运行的要求已运行的要求已

3、运行的要求已运行的软软件能适件能适件能适件能适应应特定的硬件、特定的硬件、特定的硬件、特定的硬件、软软件、外件、外件、外件、外部部部部设备设备和通信和通信和通信和通信设备设备等的工作等的工作等的工作等的工作环环境,或是要求适境,或是要求适境,或是要求适境,或是要求适应应已已已已变动变动的数据或文件;的数据或文件;的数据或文件;的数据或文件;为为使投入运行的使投入运行的使投入运行的使投入运行的软软件与其它相关的程序有良好的件与其它相关的程序有良好的件与其它相关的程序有良好的件与其它相关的程序有良好的接口,以利于接口,以利于接口,以利于接口,以利于协协同工作;同工作;同工作;同工作;为为使运行使运

4、行使运行使运行软软件的件的件的件的应应用范用范用范用范围围得到必要的得到必要的得到必要的得到必要的扩扩充。充。充。充。第六章第六章 软件维护软件维护3.3.3.3.软件维护的意义软件维护的意义软件维护的意义软件维护的意义软件维护处于软件生命期的最后阶段,也是软件维护处于软件生命期的最后阶段,也是软件维护处于软件生命期的最后阶段,也是软件维护处于软件生命期的最后阶段,也是最长的一个阶段,提高软件的可维护性,可最长的一个阶段,提高软件的可维护性,可最长的一个阶段,提高软件的可维护性,可最长的一个阶段,提高软件的可维护性,可减少维护的工作量和费用减少维护的工作量和费用减少维护的工作量和费用减少维护的

5、工作量和费用纠正软件开发过程未发现的错误,增强、改纠正软件开发过程未发现的错误,增强、改纠正软件开发过程未发现的错误,增强、改纠正软件开发过程未发现的错误,增强、改进和完善软件的功能和性能,适应软件的发进和完善软件的功能和性能,适应软件的发进和完善软件的功能和性能,适应软件的发进和完善软件的功能和性能,适应软件的发展,延长软件的寿命,发挥其效益展,延长软件的寿命,发挥其效益展,延长软件的寿命,发挥其效益展,延长软件的寿命,发挥其效益第六章第六章 软件维护软件维护第六章第六章 软件维护软件维护6.1 软件维护的内容软件维护的内容1.1.1.1.软件维护的类型软件维护的类型软件维护的类型软件维护的

6、类型按照不同的维护原因,维护工作可分成四类。按照不同的维护原因,维护工作可分成四类。按照不同的维护原因,维护工作可分成四类。按照不同的维护原因,维护工作可分成四类。校正性维护校正性维护校正性维护校正性维护适应性维护适应性维护适应性维护适应性维护完善性维护完善性维护完善性维护完善性维护预防性维护预防性维护预防性维护预防性维护2.2.什么是校正性维护什么是校正性维护 对在测试阶段未能发现,而在软对在测试阶段未能发现,而在软件投入使用后才逐渐暴露出来的错误件投入使用后才逐渐暴露出来的错误的测试、诊断、定位、纠错以及验证、的测试、诊断、定位、纠错以及验证、修改的回归测试过程,称为校正性维修改的回归测试

7、过程,称为校正性维护。护。第六章第六章 软件维护软件维护6.1 软件维护的内容软件维护的内容3.3.3.3.适应性维护适应性维护适应性维护适应性维护 计算机的软件环境、硬件环境、数据环境计算机的软件环境、硬件环境、数据环境计算机的软件环境、硬件环境、数据环境计算机的软件环境、硬件环境、数据环境在不断的变化,使运行的软件能适应运行环在不断的变化,使运行的软件能适应运行环在不断的变化,使运行的软件能适应运行环在不断的变化,使运行的软件能适应运行环境或者数据的变动而修改软件的过程称为适境或者数据的变动而修改软件的过程称为适境或者数据的变动而修改软件的过程称为适境或者数据的变动而修改软件的过程称为适应

8、性维护。应性维护。应性维护。应性维护。第六章第六章 软件维护软件维护6.1 软件维护的内容软件维护的内容4.4.完善性维护完善性维护 扩充原有系统的功能,提高系统的扩充原有系统的功能,提高系统的性能,提高软件运行的效率,满足用性能,提高软件运行的效率,满足用户的实际需要而进行的维护活动称为户的实际需要而进行的维护活动称为完善性维护。完善性维护。第六章第六章 软件维护软件维护6.1 软件维护的内容软件维护的内容5.5.预防性维护预防性维护 为了进一步改善软件的可靠性和为了进一步改善软件的可靠性和可维护性,或者为可预见的将来的软可维护性,或者为可预见的将来的软件的运行和维护打下更好的基础,而件的运

9、行和维护打下更好的基础,而对软件进行的维护活动称为预防性维对软件进行的维护活动称为预防性维护。护。第六章第六章 软件维护软件维护6.1 软件维护的内容软件维护的内容6.6.各种维护所占各种维护所占的比例的比例 第六章第六章 软件维护软件维护6.1 软件维护的内容软件维护的内容第六章第六章 软件维护软件维护6.2 软件维护的特点软件维护的特点l l6.2.1 非结构化维护和结构化维护非结构化维护和结构化维护l l6.2.2 维护的困难性维护的困难性l l6.2.3 软件维护的费用软件维护的费用非结构化维护非结构化维护非结构化维护非结构化维护 缺乏必要的文档说明,或者文档说明不缺乏必要的文档说明,

10、或者文档说明不缺乏必要的文档说明,或者文档说明不缺乏必要的文档说明,或者文档说明不一致一致一致一致,难于确定数据结构、系统接口等特性。难于确定数据结构、系统接口等特性。难于确定数据结构、系统接口等特性。难于确定数据结构、系统接口等特性。结构化维护结构化维护结构化维护结构化维护 按照软件工程方法开发软件,各阶段文档按照软件工程方法开发软件,各阶段文档按照软件工程方法开发软件,各阶段文档按照软件工程方法开发软件,各阶段文档齐全,易于理解和掌握软件功能、性能、软齐全,易于理解和掌握软件功能、性能、软齐全,易于理解和掌握软件功能、性能、软齐全,易于理解和掌握软件功能、性能、软件结构、数据结构、系统接口

11、和设计约束。件结构、数据结构、系统接口和设计约束。件结构、数据结构、系统接口和设计约束。件结构、数据结构、系统接口和设计约束。第六章第六章 软件维护软件维护6.2.1 非结构化维护和结构化维护非结构化维护和结构化维护1 1、读懂别人的程序带来的困难、读懂别人的程序带来的困难2 2、文档不一致带来的困难、文档不一致带来的困难3 3、软件开发与维护人员不一致带来的、软件开发与维护人员不一致带来的困难困难4 4、软件开发与维护时间上的差异带来、软件开发与维护时间上的差异带来的困难的困难第六章第六章 软件维护软件维护6.2.2 维护的困难性维护的困难性 软件维护费用一般要占到整个开发费用软件维护费用一

12、般要占到整个开发费用的的60% 60% 70% 70%,而且逐年上涨。,而且逐年上涨。 只有减少软件维护的工作量才能有效降只有减少软件维护的工作量才能有效降低维护成本,而减少维护工作量就要分析低维护成本,而减少维护工作量就要分析影响软件维护的各种因素。影响软件维护的各种因素。第六章第六章 软件维护软件维护6.2.3 软件维护的费用软件维护的费用1.1.1.1.影响软件维护的因素影响软件维护的因素影响软件维护的因素影响软件维护的因素系统的大小:系统越大,功能越复杂,维护工作量系统的大小:系统越大,功能越复杂,维护工作量系统的大小:系统越大,功能越复杂,维护工作量系统的大小:系统越大,功能越复杂,

13、维护工作量就越大。就越大。就越大。就越大。程序设计语言:语言的功能越强,生成程序所需要程序设计语言:语言的功能越强,生成程序所需要程序设计语言:语言的功能越强,生成程序所需要程序设计语言:语言的功能越强,生成程序所需要的指令(程序)越少,而且程序的可读性也越好,的指令(程序)越少,而且程序的可读性也越好,的指令(程序)越少,而且程序的可读性也越好,的指令(程序)越少,而且程序的可读性也越好,维护工作量也就越小。维护工作量也就越小。维护工作量也就越小。维护工作量也就越小。系统年龄:系统越老,修改维护的次数就越多,结系统年龄:系统越老,修改维护的次数就越多,结系统年龄:系统越老,修改维护的次数就越

14、多,结系统年龄:系统越老,修改维护的次数就越多,结构也就越乱,维护工作量也就越大。构也就越乱,维护工作量也就越大。构也就越乱,维护工作量也就越大。构也就越乱,维护工作量也就越大。软件开发新技术的应用:使用先进的分析和设计技软件开发新技术的应用:使用先进的分析和设计技软件开发新技术的应用:使用先进的分析和设计技软件开发新技术的应用:使用先进的分析和设计技术,以及程序设计技术,如:面向对象技术、构件术,以及程序设计技术,如:面向对象技术、构件术,以及程序设计技术,如:面向对象技术、构件术,以及程序设计技术,如:面向对象技术、构件技术、可视化程序设计技术等,可减少维护工作量。技术、可视化程序设计技术

15、等,可减少维护工作量。技术、可视化程序设计技术等,可减少维护工作量。技术、可视化程序设计技术等,可减少维护工作量。第六章第六章 软件维护软件维护6.2.3 软件维护的费用软件维护的费用2.2.2.2.软件维护的工作量模型软件维护的工作量模型软件维护的工作量模型软件维护的工作量模型 维护活动分为生产性活动和非生产性活动维护活动分为生产性活动和非生产性活动维护活动分为生产性活动和非生产性活动维护活动分为生产性活动和非生产性活动生产性活动生产性活动生产性活动生产性活动 包括分析评价、修改设计和编写程序代码包括分析评价、修改设计和编写程序代码包括分析评价、修改设计和编写程序代码包括分析评价、修改设计和

16、编写程序代码等。等。等。等。非生产性活动非生产性活动非生产性活动非生产性活动包括理解程序代码、解释数据结构、接口包括理解程序代码、解释数据结构、接口包括理解程序代码、解释数据结构、接口包括理解程序代码、解释数据结构、接口特点和设计约束等。特点和设计约束等。特点和设计约束等。特点和设计约束等。 第六章第六章 软件维护软件维护6.2.3 软件维护的费用软件维护的费用 BeladyBeladyBeladyBelady 和和和和 Lehman Lehman Lehman Lehman 提出软件维护工作模型:提出软件维护工作模型:提出软件维护工作模型:提出软件维护工作模型: M=P+K*expM=P+K

17、*expM=P+K*expM=P+K*exp(C - DC - DC - DC - D) 其中:其中:其中:其中: MMMM维护工作的总工作量维护工作的总工作量维护工作的总工作量维护工作的总工作量 PPPP生产性活动的工作量生产性活动的工作量生产性活动的工作量生产性活动的工作量 KKKK经验常数经验常数经验常数经验常数 CCCC程序复杂度程序复杂度程序复杂度程序复杂度 DDDD对维护软件熟悉程度的度量对维护软件熟悉程度的度量对维护软件熟悉程度的度量对维护软件熟悉程度的度量 显然,若越大,越小,则维护工作量成指数显然,若越大,越小,则维护工作量成指数显然,若越大,越小,则维护工作量成指数显然,若

18、越大,越小,则维护工作量成指数增长,为此,必须防止出现非结构化维护并尽可能由增长,为此,必须防止出现非结构化维护并尽可能由增长,为此,必须防止出现非结构化维护并尽可能由增长,为此,必须防止出现非结构化维护并尽可能由熟悉软件的原开发人员参加维护。熟悉软件的原开发人员参加维护。熟悉软件的原开发人员参加维护。熟悉软件的原开发人员参加维护。第六章第六章 软件维护软件维护6.2.3 软件维护的费用软件维护的费用第六章第六章 软件维护软件维护6.3 软件维护的实施软件维护的实施l l6.3.1 维护的组织维护的组织l l6.3.2 维护的流程维护的流程 临时维护小组临时维护小组 维护机构维护机构 长期维护

19、小组长期维护小组第六章第六章 软件维护软件维护6.3.1 维护的组织维护的组织1.1.1.1.临时维护小组临时维护小组临时维护小组临时维护小组 非正式机构,执行特殊或临时的维护任非正式机构,执行特殊或临时的维护任非正式机构,执行特殊或临时的维护任非正式机构,执行特殊或临时的维护任务,如:对程序排错的检查、检查完善性务,如:对程序排错的检查、检查完善性务,如:对程序排错的检查、检查完善性务,如:对程序排错的检查、检查完善性维护的设计、进行质量控制的复审。维护的设计、进行质量控制的复审。维护的设计、进行质量控制的复审。维护的设计、进行质量控制的复审。 采用采用采用采用“同事复审同事复审同事复审同事

20、复审”、“同行复审同行复审同行复审同行复审”的方的方的方的方法。法。法。法。第六章第六章 软件维护软件维护6.3.1 维护的组织维护的组织2.2.2.2.长期维护小组长期维护小组长期维护小组长期维护小组 组长:有经验的系统分析员,向上级组长:有经验的系统分析员,向上级组长:有经验的系统分析员,向上级组长:有经验的系统分析员,向上级 汇报维护工作汇报维护工作汇报维护工作汇报维护工作 副组长:协调部门、小组、用户之间副组长:协调部门、小组、用户之间副组长:协调部门、小组、用户之间副组长:协调部门、小组、用户之间长期维护小组长期维护小组长期维护小组长期维护小组 的关系的关系的关系的关系 维护负责人:

21、负责维护小组人事管理维护负责人:负责维护小组人事管理维护负责人:负责维护小组人事管理维护负责人:负责维护小组人事管理 工作工作工作工作 维护程序员:分析程序改变要求并修改维护程序员:分析程序改变要求并修改维护程序员:分析程序改变要求并修改维护程序员:分析程序改变要求并修改第六章第六章 软件维护软件维护6.3.1 维护的组织维护的组织1 1、制定维护申请报告、制定维护申请报告2 2、审查申请报告并批准、审查申请报告并批准3 3、进行维护并做详细记录、进行维护并做详细记录4 4、复审、复审第六章第六章 软件维护软件维护6.3.2 维护的流程维护的流程1.1.1.1.制定维护申请报告制定维护申请报告

22、制定维护申请报告制定维护申请报告 维护申请报告也维护申请报告也维护申请报告也维护申请报告也称称称称软件问题报告,由申请软件问题报告,由申请软件问题报告,由申请软件问题报告,由申请维护的用户填写,完整说明导致错误的环境,维护的用户填写,完整说明导致错误的环境,维护的用户填写,完整说明导致错误的环境,维护的用户填写,完整说明导致错误的环境,对于适应性或完善性的维护要求,要提交一对于适应性或完善性的维护要求,要提交一对于适应性或完善性的维护要求,要提交一对于适应性或完善性的维护要求,要提交一份简要的维护规格说明。份简要的维护规格说明。份简要的维护规格说明。份简要的维护规格说明。第六章第六章 软件维护

23、软件维护6.3.2 维护的流程维护的流程2.2.软件维护的过程软件维护的过程 一个维护申请经过评审后,首先要一个维护申请经过评审后,首先要确定维护的类型,还要分辨错误的严确定维护的类型,还要分辨错误的严重程度或修改优先级的高低,再分别重程度或修改优先级的高低,再分别处理,如下图所示。处理,如下图所示。第六章第六章 软件维护软件维护6.3.2 维护的流程维护的流程1.1.软件维护的技术包括:软件维护的技术包括:面向维护的技术面向维护的技术 - -涉及到软件开发的所有阶段。涉及到软件开发的所有阶段。维护支援技术维护支援技术 - -支持软件维护阶段的技术。支持软件维护阶段的技术。第六章第六章 软件维

24、护软件维护6.3.3 维护技术维护技术2.2.2.2.面向维护的技术面向维护的技术面向维护的技术面向维护的技术在需求分析阶段:对用户的需求进行严格的分析定义,在需求分析阶段:对用户的需求进行严格的分析定义,在需求分析阶段:对用户的需求进行严格的分析定义,在需求分析阶段:对用户的需求进行严格的分析定义,使之没有矛盾和易于理解,可以减少软件中的错误。使之没有矛盾和易于理解,可以减少软件中的错误。使之没有矛盾和易于理解,可以减少软件中的错误。使之没有矛盾和易于理解,可以减少软件中的错误。 在设计阶段:划分模块时充分考虑将来改动或扩充的在设计阶段:划分模块时充分考虑将来改动或扩充的在设计阶段:划分模块

25、时充分考虑将来改动或扩充的在设计阶段:划分模块时充分考虑将来改动或扩充的可能性。可能性。可能性。可能性。在编码阶段:采用灵活的数据结构,使程序相对独立在编码阶段:采用灵活的数据结构,使程序相对独立在编码阶段:采用灵活的数据结构,使程序相对独立在编码阶段:采用灵活的数据结构,使程序相对独立于数据的物理结构,养成良好的程序设计风格。于数据的物理结构,养成良好的程序设计风格。于数据的物理结构,养成良好的程序设计风格。于数据的物理结构,养成良好的程序设计风格。在测试阶段:尽可能多发现错误,保存测试用例和测在测试阶段:尽可能多发现错误,保存测试用例和测在测试阶段:尽可能多发现错误,保存测试用例和测在测试

26、阶段:尽可能多发现错误,保存测试用例和测试数据等。试数据等。试数据等。试数据等。 以上这些技术方法都能够减少软件错误,提高软件以上这些技术方法都能够减少软件错误,提高软件以上这些技术方法都能够减少软件错误,提高软件以上这些技术方法都能够减少软件错误,提高软件的可维护性的可维护性的可维护性的可维护性第六章第六章 软件维护软件维护6.3.3 维护技术维护技术3.3.3.3.维护支援技术维护支援技术维护支援技术维护支援技术 维护支援技术则是在软件维护阶段用来提维护支援技术则是在软件维护阶段用来提维护支援技术则是在软件维护阶段用来提维护支援技术则是在软件维护阶段用来提高维护作业的效率和质量的技术。高维

27、护作业的效率和质量的技术。高维护作业的效率和质量的技术。高维护作业的效率和质量的技术。第六章第六章 软件维护软件维护6.3.3 维护技术维护技术3.3.3.3.维护支援技术维护支援技术维护支援技术维护支援技术信息收集:收集有关系统在运行过程中的各种问题信息收集:收集有关系统在运行过程中的各种问题信息收集:收集有关系统在运行过程中的各种问题信息收集:收集有关系统在运行过程中的各种问题错误原因分析:分析所收集到的信息,分析出错的原因错误原因分析:分析所收集到的信息,分析出错的原因错误原因分析:分析所收集到的信息,分析出错的原因错误原因分析:分析所收集到的信息,分析出错的原因软件分析与理解:只有对需

28、要维护的软件进行认真的理软件分析与理解:只有对需要维护的软件进行认真的理软件分析与理解:只有对需要维护的软件进行认真的理软件分析与理解:只有对需要维护的软件进行认真的理解,才保证软件维护正确进行解,才保证软件维护正确进行解,才保证软件维护正确进行解,才保证软件维护正确进行维护方案评价:在进行维护修改前,要确定维护方案,维护方案评价:在进行维护修改前,要确定维护方案,维护方案评价:在进行维护修改前,要确定维护方案,维护方案评价:在进行维护修改前,要确定维护方案,并由相关的组织进行评审通过后才能执行并由相关的组织进行评审通过后才能执行并由相关的组织进行评审通过后才能执行并由相关的组织进行评审通过后

29、才能执行代码与文档修改:实施维护方案代码与文档修改:实施维护方案代码与文档修改:实施维护方案代码与文档修改:实施维护方案修改后的确认:经过修改的软件,需要重新进行测试修改后的确认:经过修改的软件,需要重新进行测试修改后的确认:经过修改的软件,需要重新进行测试修改后的确认:经过修改的软件,需要重新进行测试远距离的维护:对于网络系统,可以通过远程控制进行远距离的维护:对于网络系统,可以通过远程控制进行远距离的维护:对于网络系统,可以通过远程控制进行远距离的维护:对于网络系统,可以通过远程控制进行维护。维护。维护。维护。第六章第六章 软件维护软件维护6.3.3 维护技术维护技术 维护的副作用是指由于

30、修改程序而导维护的副作用是指由于修改程序而导致新的错误或者新增加一些不必要的活致新的错误或者新增加一些不必要的活动,包括:动,包括:编码副作用编码副作用数据副作用数据副作用文档副作用文档副作用第六章第六章 软件维护软件维护6.3.4 维护的副作用维护的副作用、编码副作用、编码副作用、编码副作用、编码副作用在修改源代码时,可能引起的错误。在修改源代码时,可能引起的错误。在修改源代码时,可能引起的错误。在修改源代码时,可能引起的错误。、数据副作用、数据副作用、数据副作用、数据副作用在修改数据结构时,有可能造成软件设计与数据在修改数据结构时,有可能造成软件设计与数据在修改数据结构时,有可能造成软件设

31、计与数据在修改数据结构时,有可能造成软件设计与数据结构不匹配,因而导致软件出错。数据副作用就是结构不匹配,因而导致软件出错。数据副作用就是结构不匹配,因而导致软件出错。数据副作用就是结构不匹配,因而导致软件出错。数据副作用就是修改软件信息结构导致的结果。修改软件信息结构导致的结果。修改软件信息结构导致的结果。修改软件信息结构导致的结果。、文档副作用、文档副作用、文档副作用、文档副作用 对软件的数据流、软件结构、模块逻辑等进行修对软件的数据流、软件结构、模块逻辑等进行修对软件的数据流、软件结构、模块逻辑等进行修对软件的数据流、软件结构、模块逻辑等进行修改时,必须对相关技术文档进行相应修改。但修改

32、改时,必须对相关技术文档进行相应修改。但修改改时,必须对相关技术文档进行相应修改。但修改改时,必须对相关技术文档进行相应修改。但修改文档过程会产生新的错误,导致文档与程序功能不文档过程会产生新的错误,导致文档与程序功能不文档过程会产生新的错误,导致文档与程序功能不文档过程会产生新的错误,导致文档与程序功能不匹配、缺省条件改变等错误,产生文档的副作用。匹配、缺省条件改变等错误,产生文档的副作用。匹配、缺省条件改变等错误,产生文档的副作用。匹配、缺省条件改变等错误,产生文档的副作用。第六章第六章 软件维护软件维护6.3.4 维护的副作用维护的副作用第六章第六章 软件维护软件维护6.4 软件可维护性

33、软件可维护性l l6.4.1 可维护性定义可维护性定义l l6.4.2 可维护性的度量可维护性的度量 软件可维护性是指软件能够被理软件可维护性是指软件能够被理解、校正、适应及变化功能的容易程解、校正、适应及变化功能的容易程度。度。 软件的可维护性是软件开发阶段软件的可维护性是软件开发阶段各个时期的关键目标。各个时期的关键目标。第六章第六章 软件维护软件维护6.4.1 软件可维护性定义软件可维护性定义 度量一个软件的可维护性常用的方法有:度量一个软件的可维护性常用的方法有:度量一个软件的可维护性常用的方法有:度量一个软件的可维护性常用的方法有:质量检查表、质量测试、质量标准。质量检查表、质量测试

34、、质量标准。质量检查表、质量测试、质量标准。质量检查表、质量测试、质量标准。第六章第六章 软件维护软件维护6.4.2 可维护性的度量可维护性的度量质量检查表质量检查表 是用于测试程序中某些质量特性是是用于测试程序中某些质量特性是否存在的一个问题清单。评测者针对否存在的一个问题清单。评测者针对检查表上的每一个问题,依据自己的检查表上的每一个问题,依据自己的定性判断,回答定性判断,回答 “ “Yes”Yes”或者或者“No”No”。第六章第六章 软件维护软件维护6.4.2 可维护性的度量可维护性的度量 使用七种特性衡量程序的可维护性,对于不使用七种特性衡量程序的可维护性,对于不使用七种特性衡量程序

35、的可维护性,对于不使用七种特性衡量程序的可维护性,对于不同类型的维护,其侧重点也不相同,如下所示:同类型的维护,其侧重点也不相同,如下所示:同类型的维护,其侧重点也不相同,如下所示:同类型的维护,其侧重点也不相同,如下所示:第六章第六章 软件维护软件维护6.4.2 可维护性的度量可维护性的度量 软件的可维护性对于延长软件的生存期具软件的可维护性对于延长软件的生存期具软件的可维护性对于延长软件的生存期具软件的可维护性对于延长软件的生存期具有决定的意义,因此必须考虑如何才能提高有决定的意义,因此必须考虑如何才能提高有决定的意义,因此必须考虑如何才能提高有决定的意义,因此必须考虑如何才能提高软件的可

36、维护性,为此,需从以下几个方面软件的可维护性,为此,需从以下几个方面软件的可维护性,为此,需从以下几个方面软件的可维护性,为此,需从以下几个方面考虑:考虑:考虑:考虑: 1 1 1 1、建立明确的软件质量目标、建立明确的软件质量目标、建立明确的软件质量目标、建立明确的软件质量目标 2 2 2 2、使用先进的软件开发技术和工具、使用先进的软件开发技术和工具、使用先进的软件开发技术和工具、使用先进的软件开发技术和工具 3 3 3 3、建立明确的质量保证、建立明确的质量保证、建立明确的质量保证、建立明确的质量保证 4 4 4 4、选择可维护的程序设计语言、选择可维护的程序设计语言、选择可维护的程序设

37、计语言、选择可维护的程序设计语言 5 5 5 5、改进程序的文档、改进程序的文档、改进程序的文档、改进程序的文档第六章第六章 软件维护软件维护6.4.3 提高可维护性的方法提高可维护性的方法建立明确的质量保证建立明确的质量保证建立明确的质量保证建立明确的质量保证 质量保证是指为提高软件质量所做的各质量保证是指为提高软件质量所做的各质量保证是指为提高软件质量所做的各质量保证是指为提高软件质量所做的各种检查工作,包括种检查工作,包括种检查工作,包括种检查工作,包括 1 1 1 1、在检查点进行检查、在检查点进行检查、在检查点进行检查、在检查点进行检查 2 2 2 2、验收检查、验收检查、验收检查、

38、验收检查 3 3 3 3、周期性的维护检查、周期性的维护检查、周期性的维护检查、周期性的维护检查 4 4 4 4、对软件包的检查。、对软件包的检查。、对软件包的检查。、对软件包的检查。第六章第六章 软件维护软件维护6.4.3 提高可维护性的方法提高可维护性的方法选择可维护的语言选择可维护的语言选择可维护的语言选择可维护的语言 程序设计语言的选择,对程序的可维护性影程序设计语言的选择,对程序的可维护性影程序设计语言的选择,对程序的可维护性影程序设计语言的选择,对程序的可维护性影响很大。低级语言,很难理解,很难掌握,因响很大。低级语言,很难理解,很难掌握,因响很大。低级语言,很难理解,很难掌握,因响很大。低级语言,很难理解,很难掌握,因此很难维护。高级语言比低级语言容易理解,此很难维护。高级语言比低级语言容易理解,此很难维护。高级语言比低级语言容易理解,此很难维护。高级语言比低级语言容易理解,具有更好的可维护性,如下图所示。具有更好的可维护性,如下图所示。具有更好的可维护性,如下图所示。具有更好的可维护性,如下图所示。第六章第六章 软件维护软件维护6.4.3 提高可维护性的方法提高可维护性的方法

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号