軟件的4種維護(更正性、完善性、預防性、適應性)的區別
軟件的維護活動是指需要提供軟件支持的全部活動,包括:
交付前完成的活動:交付后運行計劃、維護計劃
交付后完成的活動:軟件修改、培訓、幫助資料
一般我們將其分為以下的4種:
1) 更正性。由于系統測試不可能揭露系統存在的所有錯誤,因此在系統投入運行后頻繁的實際應用過程中,就有可能暴露出系統內隱藏的錯誤。 診斷和修正系統中遺留的錯誤,就是糾錯性維護。糾錯性維護時在系統運行中發生異?;蚬收蠒r進行的,這種錯誤往往是遇到了從未用過的輸入數據組合或是在與其 他部分接口處產生的,因此只是在某些特定的情況下發生。有些系統運行多年以后才暴露出在系統開發中遺留的問題,這是不足為奇的。
2) 適應性維護。適應性維護時為了使系統適應環境的變化而進行的維護工作。一方 面計算機科學技術迅速發展,硬件的更新周期越來越短,新的操作系統和原來操作系統的新版本不斷推出,外部設備和其他系統部件經常有所增加和修改,這就是必 然要求信息系統能夠適應新的軟硬件環境,以提高系統的性能和運行效率;另一方面,信息系統的使用壽命在延長,超過了最初開發這個系統時應用環境的壽命,即 應用對象也在不斷發生變化,機構的調整,管理體制的改變、數據與信息需求的變更等都將導致系統不能適應新的應用環境。如代碼改變、數據結構變化、數據格式 以及輸入/ 輸出方式的變化、數據存儲介質的變化等,都將直接影響系統的正常工作。因此有必要對系統進行調整,使之適應應用對象的變化,滿足用戶的需求。
3) 完善性維護。在系統的使用過程中,用戶往往要求擴充原有系統的功能,增加一 些在軟件需求規范書中沒有規定的功能與性能特征,以及對處理效率和編寫程序的改進。例如,有時可將幾個小程序合并成一個單一的運行良好的程序,從而提高處 理效率;增加數據輸出的圖形方式;增加聯機在線幫助功能;調整用戶界面等。盡管這些要求在原來系統開發的需求規格說明書中并沒有,但用戶要求在原有系統基 礎上進一步改善和提高;并且隨著用戶對系統的使用和熟悉,這種要求可能不斷提出。為了滿足這些要求而進行的系統維護工作就是完善性維護。
4) 預防性維護。系統維護工作不應總是被動地等待用戶提出要求后才進行,應進行主動的預防性維護,即選擇那些還有較長使用壽命,目前尚能正常運行,但可能將要發生變化或調整的系統進行維護,目的是通過預防性維護為未來的修改與調整奠定更好的基礎。 例如,將目前能應用的報表功能改成通用報表生成功能,以應付今后報表內容和格式可能的變化,根據對各種維護工作分布情況的統計結果,一般糾錯性維護占 21%,適應性維護工作占25%,完善性維護達到50%,而預防性維護以及其他類型的維護僅占4%,可見系統維護工作中,一半以上的工作室完善性維護。