软件的4种维护(更正性、完善性、预防性、适应性)的区别
(1)更正性。由于系统测试不可能揭露系统存在的所有错误,因此在系统投入运行后频繁的实际应用过程中,就有可能暴露出系统内隐藏的错误。 诊断和修正系统中遗留的错误,就是纠错性维护。纠错性维护时在系统运行中发生异常或故障时进行的,这种错误往往是遇到了从未用过的输入数据组合或是在与其 他部分接口处产生的,因此只是在某些特定的情况下发生。有些系统运行多年以后才暴露出在系统开发中遗留的问题,这是不足为奇的。
(2)适应性维护。适应性维护时为了使系统适应环境的变化而进行的维护工作。一方 面计算机科学技术迅速发展,硬件的更新周期越来越短,新的操作系统和原来操作系统的新版本不断推出,外部设备和其他系统部件经常有所增加和修改,这就是必 然要求信息系统能够适应新的软硬件环境,以提高系统的性能和运行效率;另一方面,信息系统的使用寿命在延长,超过了最初开发这个系统时应用环境的寿命,即 应用对象也在不断发生变化,机构的调整,管理体制的改变、数据与信息需求的变更等都将导致系统不能适应新的应用环境。如代码改变、数据结构变化、数据格式 以及输入/ 输出方式的变化、数据存储介质的变化等,都将直接影响系统的正常工作。因此有必要对系统进行调整,使之适应应用对象的变化,满足用户的需求。
(3)完善性维护。在系统的使用过程中,用户往往要求扩充原有系统的功能,增加一 些在软件需求规范书中没有规定的功能与性能特征,以及对处理效率和编写程序的改进。例如,有时可将几个小程序合并成一个单一的运行良好的程序,从而提高处 理效率;增加数据输出的图形方式;增加联机在线帮助功能;调整用户界面等。尽管这些要求在原来系统开发的需求规格说明书中并没有,但用户要求在原有系统基 础上进一步改善和提高;并且随着用户对系统的使用和熟悉,这种要求可能不断提出。为了满足这些要求而进行的系统维护工作就是完善性维护。
(4)预防性维护。系统维护工作不应总是被动地等待用户提出要求后才进行,应进行主动的预防性维护,即选择那些还有较长使用寿命,目前尚能正常运行,但可能将要发生变化或调整的系统进行维护,目的是通过预防性维护为未来的修改与调整奠定更好的基础。 例如,将目前能应用的报表功能改成通用报表生成功能,以应付今后报表内容和格式可能的变化,根据对各种维护工作分布情况的统计结果,一般纠错性维护占 21%,适应性维护工作占25%,完善性维护达到50%,而预防性维护以及其他类型的维护仅占4%,可见系统维护工作中,一半以上的工作室完善性维护。
所以2005年高项有一道题如下:
软件的维护并不只是修正错误。软件测试不可能揭露旧系统所有潜伏的错误,所以这些程序在使用过程中还可能发生错误,诊断和更正这些错误的过程称为 ___(24)___;为了改进软件未来的可能维护性或可靠性,或者后为了给未来的改进提供更好的基础而对软件进行修改,这类活动称为 ___(25)___。
(24)A.完善性维护 B.适应性维护 C.预防性维护 D.改正性维护
(25)A.完善性维护 B.适应性维护 C.预防性维护 D.改正性维护
答案:24:D 25:C