系统维护
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系统维护
为了清除系统运行中发生的故障和错误,软、硬件维护人员要对系统进行必要的修改与完善;为了使系统适应用户环境的变化,满足新提出的需要,也要对原系统做些局部的更新,这些工作称为系统维护。系统维护的任务是改正软件系统在使用过程中发现的隐含错误,扩充在使用过程中用户提出的新的功能及性能要求,其目的是维护软件系统的"正常运作"。这阶段的文档是软件问题报告和软件修改报告,它记录发现软件错误的情况以及修改软件
的过程。
管理信息系统在完成系统实施、投入正常运行之后,就进入了系统运行
与维护阶段。一般信息系统的使用寿命短则4-5年,长则可达10年以上,
在信息系统的整个使用寿命中,都将伴随着系统维护工作的进行。系统维护
的目的是要保证管理信息系统正常而可靠地运行,并能使系统不断得到改善
和提高,以充分发挥作用。因此,系统维护的任务就是要有计划、有组织地
对系统进行必要的改动,以保证系统中的各个要素随着环境的变化始终处于
最新的、正确的工作状态。
系统维护工作在整个系统生命周期中常常被忽视。人们往往热衷于系统
开发,当开发工作完成以后,多数情况下开发队伍被解散或撤走,而在系统
开始运行后并没有配置适当的系统维护人员。这样,一旦系统发生问题或环
境发生变化,最终用户将无从下手,这就是为什么有些信息系统在运行环境
中长期与旧系统并行运行不能转换,甚至最后被废弃的原因。随着信息系统
应用的深入,以及使用寿命的延长,系统维护的工作量将越来越大。系统维
护的费用往往占整个系统生命周期总费用的60%以上,因此有人曾以浮在海
面的冰山来比喻系统开发与维护的关系,系统开发工作如同冰山露出水面的
部分,容易被人看到而得到重视,而系统维护工作如同冰山浸在水下部分,
体积远比露出水面的部分大得多,但由于不易被人看到而常被忽视:从另一
方面来看,相对具有“开创性”的系统开发来讲,系统维护工作属于“继承性”工作,挑战性不强,成绩不显著,使很多技术人员不安心于系统维护工作,这也是造成人们重视开发而轻视维护的原因。但系统维护是信息系统可
靠运行的重要技术保障,必须给予足够的重视。
1.系统维护的内容
系统维护是面向系统中各个构成因素的,按照维护对象不同,系统维护的内容可分为以下几类:
(1)系统应用程序维护。系统的业务处理过程是通过应用程序的运行而实现的,一旦程序发生问题或业务发生变化,就必然地引起程序的修改和调整,因此系统维护的主要活动是对程序进行维护。
(2)数据维护。业务处理对数据的需求是不断发生变化的,除了系统中主体
业务数据的定期正常更新外,还有许多数据需要进行不定期的更新,或随环境或业务的变化而进行调整,以及数据内容的增加、数据结构的调整。此外,数据的备份与恢复等,都是数据维护的工作内容。
(3)代码维护。随着系统应用范围的扩大,应用环境的变化,系统中的各种
代码都需要进行一定程度的增加、修改、删除,以及设置新的代码。
(4)硬件设备维护。主要就是指对主机及外设的日常维护和管理,如机器部
件的清洗、润滑,设备故障的检修,易损部件的更换等,这些工作都应由专人负责,定期进行,以保证系统正常有效地工作。
(5)机构和人员的变动。信息系统是人机系统,人工处理也占有重要地位,
人的作用占主导地位。为了使信息系统的流程更加合理,有时涉及到机构和人员的变动。这种变化往往也会影响对设备和程序的维护工作。
2.系统维护的类型
系统维护的重点是系统应用软件的维护工作,按照软件维护的不同性质划分为下述4种类型:
(1)纠错性维护。由于系统测试不可能揭露系统存在的所有错误,因此在系
统投入运行后频繁的实际应用过程中,就有可能暴露出系统内隐藏的错误。诊断和修正系统中遗留的错误,就是纠错性维护。纠错性维护时在系统运行中发生异常或故障时进行的,这种错误往往是遇到了从未用过的输入数据组合或是在与其他部分接口处产生的,因此只是在某些特定的情况下发生。有些系统运行多年以后才暴露出在系统开发中遗留的为题,这是不足为奇的。
(2)适应性维护。适应性维护时为了使系统适应环境的变化而进行的维护工作。一方面计算机科学技术迅速发展,硬件的更新周期越来越短,新的操作系统和原来操作系统的新版本不断推出,外部设备和其他系统部件经常有所增加和修改,这就是必然要求信息系统能够适应新的软硬件环境,以提高系统的性能和运行效率;
另一方面,信息系统的使用寿命在延长,超过了最初开发这个系统时应用环境的寿命,即应用对象也在不断发生变化,机构的调整,管理体制的改变、数据与信息需求的变更等都将导致系统不能适应新的应用环境。如代码改变、数据结构变化、数据格式以及输入/ 输出方式的变化、数据存储介质的变化等,都将直接影响系统的
正常工作。因此有必要对系统进行调整,使之适应应用对象的变化,满足用户的需求。
(3)完善性维护。在系统的使用过程中,用户往往要求扩充原有系统的功能,增加一些在软件需求规范书中没有规定的功能与性能特征,以及对处理效率和编写程序的改进。例如,有时可将几个小程序合并成一个单一的运行良好的程序,从而提高处理效率;增加数据输出的图形方式;增加联机在线帮助功能;调整用户界面等。尽管这些要求在原来系统开发的需求规格说明书中并没有,但用户要求在原有系统基础上进一步改善和提高;并且随着用户对系统的使用和熟悉,这种要求可能不断提出。为了满足这些要求而进行的系统维护工作就是完善性维护。
(4)预防性维护。系统维护工作不应总是被动地等待用户提出要求后才进行,应进行主动的预防性维护,即选择那些还有较长使用寿命,目前尚能正常运行,但可能将要发生变化或调整的系统进行维护,目的是通过预防性维护为未来的修改与调整奠定更好的基础。例如,将目前能应用的报表功能改成通用报表生成功能,以应付今后报表内容和格式可能的变化,根据对各种维护工作分布情况的统计结果,一般纠错性维护占21%,适应性维护工作占25%,完善性维护达到50%,而预防性维护以及其他类型的维护仅占4%,可见系统维护工作中,一半以
上的工作室完善性维护。
1.是否采用结构化开发方法
如果系统开发没有采用结构化分析与设计方法,则相应的维护也只能是非结构化维护。因为这时系统软件配置的惟一成分是程序源代码,一旦有系统维护的需求时,维护工作只能从艰苦的评价程序代码开始。由于没有完整规范的设计开发文档,无程序内部文档,对于软件结构、数据结构、系统接口以及设计中的各种技巧很难弄清,如果编码风格再差一些,则系统维护工作十分艰难,因此,有许多软件人员宁可重新编码,也不愿维护这种系统。另一方面,由于无测试文档,不能进行回归测试,对于维护后的结果难以评价。
相反,如果系统开发采用了结构化方法,则系统交付时有完整的软件配置文档,维护系统接口等特点,在考虑到修改可能带来影响的情况下,设计修正错误的途径。