热门问题
时间线
聊天
视角

软体维护

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

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