热门问题
时间线
聊天
视角

软件维护

来自维基百科,自由的百科全书

Remove ads

软件维护是指在软件发布之后进行的修改。

一般会认为软件维护需要的技术比新软件开发要少,也比较不会受到奖励。因此,许多公司会将软件维护外包或是离岸外包英语offshoring。通常维护软件和开发软件会由不同的团队进行。开发者没有动机将程序以方便维护的方式撰写。软件发行时多半功能还不完整,也还有一些需维护团队修正的错误。软件维护一开始会包括新功能的开发,但随着产品的进展,维护会减到最小程度,在产品结束生命周期时,其维护也完全结束。

维护周期多半是从修改请求开始的,一般是来自终端用户,随后会对请求进行分析,若评估的结果是要修改,程序设计者在修改前,会研究既有的程序,了解程序如何运作。维护成本中最主要是在测试,测试已有的程序功能正常运作,而且也加入新的功能。

虽然软件维护占了软件生命周期中,成本的最大部分,但对其的研究比其他软件开发的周期要少。从1980年代开始到现在,对软件维护的了解没有大幅的变化。软件维护可以依照是预防性维护或反应维护来分成不同的几类。有些软件维护是要加新功能,有些则是面对环境的变化(例如从DOS系统到Windows系统),要保留原有的功能。

Remove ads

历史

在1970年代初期,各企业开始将软件维护的工作移到其他公司,让自身公司软件开发的团队可以免于维护的工作[1]。R. G. Canning在1972年出版了"The Maintenance 'Iceberg'",他在其中认为软件维护是软件开发的延伸,其中有多一个输入:已有的系统[1]。从那时候起到现在,软件维护的原原则改变的不多[2]。有一个二十一世纪的创新,是公司刻意发行不完整的软件,并且计划在后续的发布中再发布完整软件。这类的变更,以及一些扩展的变更,常常不会视为是软件维护,而会称为软件演进英语software evolution[2]

软件维护的分类

软件维护工作包括以下五种:适应性维护、修正性维护、完善性维护、代码复用及代码杠杆(code leverage)[3]

参考资料

来源

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads