2.4 软件维护
考点(12) 软件维护的基本概念
维护是软件生命周期的最后一个阶段,也是持续时间最长和代价最大的一个阶段。软件工程学的主要目的就是提高软件的可维护性,降低维护的花费。
软件维护通常包括为了纠正在使用过程中暴露出来的错误而进行的改进性维护,为了适应外部环境的变化而进行的适应性维护,为了改进原有的软件而进行的完善性维护,以及为了改进将来的可维护性和可靠性而进行的预防性维护。
1.软件维护的基本任务
软件维护是指系统交付使用以后对它所做的改变,也是软件生存周期中最后一个阶段。
改变的原因是改正程序的错误和缺陷,改进设计和适用新的软、硬件环境,增加新的应用范围。
2.软件维护的分类
软件维护主要划分为纠错性维护、适应性维护和完善性维护。
(1)纠错性维护。由于前期的测试不可能揭露软件系统中所有潜在的错误,用户在使用软件时仍将会遇到错误,诊断和改正这些错误的过程称为纠错性维护。
(2)适应性维护。由于新的硬件设备不断推出,操作系统和编译系统也不断地升级,为了使软件能适应新的环境而引起的程序修改和扩充活动称为适应性维护。
(3)完善性维护。在软件的正常使用过程中,用户还会不断地提出新的需求。为了满足用户新的需求而增加软件功能的活动称为完善性维护。
考点(13)影响维护的因素
影响软件维护的因素包括人员因素、技术因素、管理因素和程序自身的因素。
考点(14)软件可维护性度量
可维护性度量表示软件系统维护工作的强度或维护工作量的大小。实践中把可维护性试题问题分为对可测试性、可理解性、可修改性、可移植性、可靠性、有效性和可用性的度量。