软件维护

软件产品发布后进行的软件修改
软件维护(Software maintenance)指软件产品在交付之后,为改正错误、改进性能或其他属性,或者为适应变化了的环境而对其进行修改的活动。软件维护大致分为四类:改正性维护、适应性维护、完善性维护和预防性维护。[1]
在软件交付后的整个运行期间都可能发生软件的维护活动,所以,在整个软件生存周期中,软件维护阶段的时间通常要比软件开发阶段的时间长得多。同时,软件维护需要对现有的软件进行修改,而这种修改可能会影响到软件中未被修改的部分, 因此,在整个软件生存周期的总成本中维护的代价是昂贵的。通常,维护的成本约占生存周期总成本的三分之二,而软件开发的成本约占三分之一。[1]

类型

软件维护活动类型总起来大概有四种:纠错性维护(校正性维护)、适应性维护、完善性维护或增强、预防性维护或再工程。除此四类维护活动外,还有一些其它类型的维护活动,如:支援性维护(如用户的培训等)。
针对以上几种类型的维护,可以采取一些维护策略,以控制维护成本。