摘 要:XX市大型勞動保障管理信息系統自2009年第四次升級上線后,就一直運行至今,由我公司對系統進行維護管理。本文筆者以此項目的實踐經驗探討了大型管理信息系統應用軟件維護管理方面遇到的問題和解決辦法。
關鍵詞:軟件維護 CMMI過程管理
中圖分類號:TP393.07 文獻標識碼:A 文章編號:1672-3791(2013)01(a)-0034-02
XX市勞動保障管理信息系統遵循金保工程建設思路,涵蓋了勞動保障部門承擔的各項職能和經辦的各項業務,包括人員資源庫、社會保障卡、“五險統一”征繳、養老、醫保、工傷、生育、失業、農保、勞動監察、培訓鑒定、就業、宏觀決策、網上辦事、辦公自動化、公共服務查詢等十多個子系統,是一個數據量達TB級的大型實時系統,建設總投資達3000萬元。該系統自2009年第四次升級上線以來,一直運行至今。在運行期間,隨著勞動保障業務的不斷發展,用戶在使用過程中不斷提出新的需求,該系統每年的應用軟件維護費達250萬元以上。
我公司是國內一家擁有多年社保行業經驗的積累的信息系統集成公司,擁有國家信息產業部頒發的計算機信息系統集成一級資質和SEI頒發的CMMI3級認證評估。該系統由我公司承建并維護至今。
系統維護的重點是系統應用軟件的維護工作,按照軟件維護的不同性質劃分為下述4種類型。
(1)糾錯性維護。由于系統測試不可能揭露系統存在的所有錯誤,因此在系統投入運行后頻繁的實際應用過程中,就有可能暴露出系統內隱藏的錯誤。診斷和修正系統中遺留的錯誤,就是糾錯性維護。糾錯性維護時在系統運行中發生異常或故障時進行的,這種錯誤往往是遇到了從未用過的輸入數據組合或是在與其他部分接口處產生的,因此只是在某些特定的情況下發生。有些系統運行多年以后才暴露出在系統開發中遺留的問題,這是不足為奇的。
(2)適應性維護。適應性維護時為了使系統適應環境的變化而進行的維護工作。一方面計算機科學技術迅速發展,硬件的更新周期越來越短,新的操作系統和原來操作系統的新版本不斷推出,外部設備和其他系統部件經常有所增加和修改,這就是必然要求信息系統能夠適應新的軟硬件環境,以提高系統的性能和運行效率;另一方面,信息系統的使用壽命在延長,超過了最初開發這個系統時應用環境的壽命,即應用對象也在不斷發生變化,機構的調整,管理體制的改變、數據與信息需求的變更等都將導致系統不能適應新的應用環境。如代碼改變、數據結構變化、數據格式以及輸入/輸出方式的變化、數據存儲介質的變化等,都將直接影響系統的正常工作。因此有必要對系統進行調整,使之適應應用對象的變化,滿足用戶的需求。
(3)完善性維護。在系統的使用過程中,用戶往往要求擴充原有系統的功能,增加一些在軟件需求規范書中沒有規定的功能與性能特征,以及對處理效率和編寫程序的改進。例如,有時可將幾個小程序合并成一個單一的運行良好的程序,從而提高處理效率;增加數據輸出的圖形方式;增加聯機在線幫助功能;調整用戶界面等。盡管這些要求在原來系統開發的需求規格說明書中并沒有,但用戶要求在原有系統基礎上進一步改善和提高;并且隨著用戶對系統的使用和熟悉,這種要求可能不斷提出。為了滿足這些要求而進行的系統維護工作就是完善性維護。
(4)預防性維護。系統維護工作不應總是被動地等待用戶提出要求后才進行,應進行主動的預防性維護,即選擇那些還有較長使用壽命,目前尚能正常運行,但可能將要發生變化或調整的系統進行維護,目的是通過預防性維護為未來的修改與調整奠定更好的基礎。
針對本系統應用軟件維護工作分布情況的統計結果來看,一般糾錯性維護8%,適應性維護工作占10%,完善性維護達到80%,而預防性維護以及其他類型的維護僅2%,可見系統維護工作中,完善性維護占了絕大部分。完善性維護主要由于用戶需求變化引起的,根據實際工作情況我們又細分為新增需求維護和完善性需求維護。勞動保障行業是一個快速發展和快速變化的行業,各級政府每年都會出臺一些保障民生的政策,新增需求占比很高,要求系統快速變化反應,以適應發展的需要。勞動保障管理信息系統是一個關系到老百姓切身利益的實時在線系統,由十多個分系統組成,融合了C/S,C/S/S,B/S軟件架構,非常復雜,如果系統維護工作沒有一套有效可行的質量管理辦法,將會陷入雜亂無章中,給系統正常運行帶來災難及造成嚴重的社會影響。基于此,我們和用戶方、監理公司達成一致,按照CMMI管理模型及軟件工程的管理方法,制定了一套應用軟件維護管理規定及維護管理流程,根據流程進行信息化管理,從需求分析、軟件設計、編碼、測試、配置管理、發布上線各個過程進行嚴格質量控制,從而有計劃有步驟地進行維護管理,確保系統正常運行。
1 組織結構與人員
該項目由勞動保障部門各業務處室、勞動保障部門信息中心、監理公司、開發單位(我公司項目組)組成。勞動保障管理信息系統有十多個分系統,分系統應用對應不同的業務處室,每個業務處室有歸口信息管理員,收集管理本部門業務需求。勞動保障信息中心按分系統分配相應人員進行需求維護管理。開發單位根據勞動保障部門信息中心人員分工情況,指派了對口的分系統開發人員。開發單位由項目經理、開發人員、質量保證人員、測試人員、配置管理員組成,負責需求的開發、實施、上線。監理公司對項目實施過程進行監控、協調。
2 制定應用系統維護管理規定及維護管理流程,確保權責分明,目標一致
通過組織協商,按照CMMI管理模型及軟件工程的管理方法,從需求分析、軟件設計、軟件開發、軟件測試、配置管理、軟件部署發布等各方面達成共識,制定了應用系統維護管理規定及維護管理流程,從而保證了組織人員朝著共同的目標努力,做到有章可循,確保人員各司其職,各盡其責。
3 制定維護計劃,確保需求按計劃有步驟進行實施
勞動保障部門業務處室提交經過領導審批的需求,勞動保障部門信息中心根據需求內容,會同業務處室、開發單位進行需求確認,確定程序開發完成時間和文檔修改完成時間,并將需求分發給開發單位相應的開發人員。開發單位開發人員根據時間要求制定維護計劃,包括程序開發計劃、文檔修改計劃、測試計劃及配置計劃并進行工作量估算,開發單位項目經理對維護計劃進行審批,對復雜的需求及涉及分系統接口的需求組織需求干系人進行討論并評審,對計劃進行落實,確保需求按計劃有步驟地完成。
4 開發單位質量保證人員對需求實施過程及工作產品進行全面質量檢查,確保開發人員按應用系統維護管理規定及維護管理流程實施維護
質量保證人員對需求實施過程及工作產品對照應用系統維護管理規定及維護管理流程進行檢查,對發現的不符合問題及時和項目經理、開發人員進行溝通,確保問題得到解決。
5 采取層級測試的原則,盡最大可能保證程序發布上線零缺陷
需求開發完成后,先由開發人員將程序部署至測試平臺進行自測,開發單位測試人員每月會對自測后的需求及時進行抽樣測試,對自測質量進行檢查。然后信息中心人員在測試平臺對開發人員測試通過的需求進行測試,測試通過后提交給業務處室測試;不通過,開發單位開發人員根據測試記錄修改直至測試通過。最后由最終用戶—業務處室進行測試,測試通過后,程序才能發布上線;不通過,開發單位開發人員根據測試記錄修改直至測試通過。
6 需求經業務處室測試通過后,開發人員提交發布計劃及部署方案,并填寫配置項清單,經項目經理和信息中心審批后才能將程序發布至生產庫
勞動保障管理信息系統是一個融合了C/S,C/S/S,B/S軟件架構的復雜的應用系統,分系統架構不同,部署方案也不同,不僅涉及到代碼修改,也可能涉及到數據庫對象的修改,發布是一個系統工程,不僅需要開發人員參與,也有可能需要數據庫管理員、硬件管理員及網絡管理員的參與,需要溝通協調,項目經理將按照發布計劃及部署方案組織相關人員進行發布實施,確保程序發布后系統能正常運行。
7 開發單位配置管理員根據需求配置計劃,及時將程序、文檔納入配置庫,確保需求變更與配置保持一致
開發單位配置管理員根據需求配置計劃,跟蹤程序、文檔的變化情況,根據開發人員提交的配置項清單及時提取發布后的程序、文檔進行配置,并按需求編制配置、發布報告交項目經理審核,確保配置與需求保持一致性、完整性、正確性。
8 對需求開發進度進行跟蹤和監控,及時發現和糾正偏差
項目經理對照需求維護計劃監督需求完成情況,需求開發人員需及時填寫實際工作時間及工作量,項目經理對需求進度進行審批監督,并定期組織人員評審維護工作的進展、績效以及問題情況。當維護工作績效或結果偏離計劃時,會采取糾正措施直至關閉。
本項目維護管理過程已經通過信息化系統進行固化,從而有效降低了用戶需求變更對系統應用帶來的風險,保證了系統正常可靠地運行,使系統不斷得到改善和提高,充分發揮作用,取得了用戶方的高度認可。
參考文獻
[1]張萬軍,鄭寧,趙宇蘭.基于CMMI的軟件工程及實訓指導[M].清華大學出版社,2011.