软件系统运行维护与文档设计
文件类型:未知 文件大小:229376字节
内容摘要:
软件系统运行维护与文档设计第16讲 软件系统运行维护与文档设计
考纲解析
本讲对应的内容比较综合,包括了系统运行维护与文档设计等方面的内容,以掌握为主,基本上都出现在上午的试题中,但要注意可能有部分实施,维护方面的知识与下午的考试有关.
资源链接
本讲对应CIU视频资源:软件系统实施与维护.jbl.
本讲内容
16.1 软件系统运行维护
在软件运行/维护阶段对软件产品所进行的修改就是维护.要求进行维护的原因多种多样,归结起来有三种类型:改正在特定的使用条件下暴露出来的一些潜在程序错误或设计缺陷;因在软件使用过程中数据环境发生变化或处理环境发生变化,需要修改软件以适应这种变化;用户和数据处理人员在使用时提出改进现有功能,增加新的功能以及改善总体性能的要求.
由这 些原因引起的维护活动可以归为以下几类.
改正性维护.软件交付使用后,必然会有一部分隐藏的错误被带到运行阶段来,在某些特定的使用环境下就会暴露出来.为了识别和纠正软件错误,改正软件性能上的缺陷,排除实施中的误使用,应进行的诊断和改正错误的过程,就叫做改正性维护.
适应性维护.随着计算机的飞速发展,外部环境(新的硬,软件配置)或数据环境(数据库,数据格式,数据输入∕输出方式,数据存储介质)可能发生变化,为了使软件适应这种变化,而去修改软件的过程就叫做适应性维护.
完善性维护.在软件的使用过程中,用户往往会对软件提出新的功能与性能要求.为了满足这些要求,需要修改或再开发软件,以扩充软件功能,增强软件性能,改进加工效率,提高软件的可维护性.这种情况下进行的维护活动叫做完善性维护.
在维护阶段的最初一,二年,改正性维护的工作量较大.随着错误发现率急剧降低,并趋于稳定,就进入了正常使用期.然而,由于改造的要求,适应性维护和完善性维护的工作量逐步增加.实践表明,在几种维护活动中,完善性维护所占的比重最大,来自用户要求扩充,加强软件功能,性能的维护活动约占整个维护工作的50%.如图16-1所示.
图16-1 三类维护占总维护比例 图16-2 维护在软件生存期所占比例
预防性维护,除了以上三类维护之外,还有一类维护活动,叫做预防性维护.这是为了提高软件的可维护性,可靠性等,为以后进一步改进软件打下良好基础.通常,预防性维护定义为:"把今天的方法学用于昨天的系统以满足明天的需要".也就是说,采用先进的软件工程方法对需要维护的软件或软件中的某一部分(重新)进行设计,编制和测试.
16.1.1 影响维护工作量的因素
在软件维护中,影响维护工作量的程序特性主要有以下5种.
系统大小:系统越大,理解掌握起来越困难,所执行功能越复杂.因而需要更多的维护工作量.
程序设计语言:语言的功能越强,生成程序所需的指令数就越少;语言的功能越弱,实现同样功能所需语句就越多,程序就越大.有许多软件是用较老的程序设计语言书写的,程序逻辑复杂而混乱,没有做到模块化和结构化,直接影响到程序的可读性.
系统年龄:老系统随着不断的修改,结构越来越乱;由于维护人员经常更换,程序又变得越来越难于理解.而且许多老系统在当初并未按照软件工程的要求进行开发,因而没有文档或文档太少,在长期的维护过程中文档在许多地方与程序实现变得不一致,这样在维护时就会遇到很大困难.
数据库技术的应用:使用数据库,可以简单而有效地管理和存储用户程序中的数据,还可以减少生成用户报表应用软件的维护工作量.
先进的软件开发技术:在软件开发时,若使用能使软件结构比较稳定的分析与设计技术及程序设计技术,如面向对象技术,复用技术等,可减少大量的工作量.
16.1.2 软件维护的策略
根据影响软件维护工作量的各种因素,针对三种典型的维护,James Martin等提出了一些策略,以控制维护成本.
1.改正性维护
要生成100%可靠的软件成本太高,不一定合算.但通过使用新技术,可大大提高可靠性,减少进行改正性维护的需要.这些技术包括数据库管理系统,软件开发环境,程序自动生成系统,较高级(第四代)的语言,应用以上4种方法可产生更加可靠的代码.此外,利用应用软件包,可开发出比完全由用户自己开发的系统可靠性更高的软件;利用结构化技术开发的软件易于理解和测试;通过防错性程序设计把自检能力引入程序,通过非正常状态的检查提供审查跟踪;通过周期性维护审查,在形成维护问题之前就可确定质量缺陷.
2.适应性维护
这一类的维护不可避免,但可以控制.在配置管理时,把硬件,操作系统和其他相关环境因素的可能变化考虑在内,可以减少某些适应性维护的工作量.把与硬件,操作系统,以及其他
·上一篇:
中远航运股份有限公司·下一篇:
中国汽车保修设备行业协会