彭振宇
摘要:隨著信息化的發(fā)展, 中小軟件項目在社會應用中越來越占有重要的地位,但是在軟件開發(fā)前沒有相應的估算方法,從而導致軟件開發(fā)成本超支, 所以對中小軟件項目估算的研究在軟件開發(fā)中具有重要意義。該文針對中小軟件項目現狀及特性,基于軟件估算的常用方法DELPHI法、類比法、功能點分析法等,對中小軟件項目的規(guī)模估算、工作量估算、成本估算等進行了研究與探討,并提出了一些相應的方法。使得中小軟件項目的開發(fā)具有合理性和科學性,提高了軟件項目的管理能力和生產率,降低了成本和產品研發(fā)周期,減少了因缺少估算給企業(yè)帶來的損失。
關鍵詞:中小軟件;軟件估算;規(guī)模估算;工作量估算
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2018)25-0053-02
1 緒論
現階段我國各軟件企業(yè)在進行中小軟件開發(fā)環(huán)節(jié),注重軟件項目開發(fā)計劃的制訂,通過對軟件開發(fā)基本流程的梳理以及確定,增強軟件開發(fā)活動的有序進行,確保軟件開發(fā)資源的合理調配,并為后續(xù)軟件開發(fā)監(jiān)督、評估工作的開展提供了科學依據。從過往實際情況來看,不合理、不完整的軟件計劃往往會降低軟件開發(fā)的效率,導致軟件開放周期的延長以及軟件開發(fā)成本的增加,甚至在某些情況下,導致開發(fā)項目的失敗?;谶@種認識,軟件開發(fā)企業(yè)在實際運營的過程之中,有必要對軟件計劃進行制定與優(yōu)化,推動軟件項目估算工作的平穩(wěn)進行,為管理人員開展各項軟件開發(fā)管理工作提供了科學意見。因此中小軟件項目估算在軟件項目管理中起著非常重要的作用,其研究意義重大。
目前,國內外軟件開發(fā)機制業(yè)已逐步完善,使用代碼估算法、功能點估算法等方式,完成了對軟件的科學高效開發(fā),充分滿足軟件用戶對于軟件開發(fā)工作的使用需求。例如微軟等大型軟件開發(fā)工作普遍實行使用主流的軟件開發(fā)模式,在滿足用戶使用需求的大前提下,增強了軟件開發(fā)效率,降低軟件開發(fā)成本。隨著我國軟件開發(fā)企業(yè)日益成熟,軟件開發(fā)效率不斷提升,軟件開發(fā)方法日益完善,但是受制于軟件開發(fā)經驗的影響,在軟件開發(fā)管理體系構建環(huán)節(jié)仍然存在著較大的漏洞,例如在軟件開發(fā)周期的估算上仍然采取手工作坊式的處理方式,這種情況的出現,無疑增加國內軟件開發(fā)企業(yè)的運行成本,導致國內軟件企業(yè)競爭力的下降。基于這種實際,為了增強軟件開發(fā)企業(yè)進行了軟件開發(fā)管理體系的升級,對軟件估算方法進行優(yōu)化,但是這些估算方法主要針對大公司大企業(yè)而言,中小軟件企業(yè)在軟件開發(fā)前甚至還沒有相關的軟件估算方法,而國內中小軟件企業(yè)所開發(fā)的軟件系統在社會應用中越來越占有重要的地位,所以針對這一現狀研究中小軟件項目的估算方法已成為一項重要課題。
2 中小軟件項目的估算過程及方法
2.1 中小軟件項目的規(guī)模估算
對中小軟件項目規(guī)模大小的評估是后續(xù)軟件開發(fā)工作量以及開發(fā)進度控制工作開展的依據,也是軟件開發(fā)管理開展的重要手段,在實際估算過程之中,應充分考慮到中小軟件項目的特殊性。所以我們需要一種簡便易學、易于操作,并且可以在項目的進展過程中逐步求精的方法。
1)在相關內容之中,如果涉及工作流程的判讀以及評估,軟件項目管理人員需要對其進行單獨計算,尤其在公共模塊梳理環(huán)節(jié),管理人員需要結合軟件開發(fā)崗位設置情況,對公共模塊分割處理,避免工作量分配不明確的情況出現。
2)在中小軟件項目估算的過程中,軟件項目管理人員在處理多級分支軟件開發(fā)項目之中,必須要明確軟件開發(fā)分支的規(guī)模,在此基礎上,借助于數學算法,對多級分支軟件項目的總體規(guī)模進行梳理,增加軟件項目評估的科學性與有效性。
2.2 中小軟件項目的工作量估算
作為軟件估算的重點,工作量估算需要對軟件開發(fā)過程中涉及的人力資源使用量進行評估,從過往情況來看,軟件開發(fā)工作量的評估與軟件項目的開發(fā)規(guī)模、開發(fā)人員的技術能力、軟件平臺的實用性等因素有著最為密切的關系,基于這種認知,管理人員需要采取必要的應對手段,增強工作了估算的準確性,以期為后續(xù)各系管理工作的開展提供必要的數據參考。
在中小軟件項目工作估算的過程中,出于估算結果準確性的考慮,管理人員要根據軟件項目開發(fā)規(guī)模對項目編碼階段的工作量進行分析,在這一過程中,對軟件開發(fā)過程中前臺界面以及后臺邏輯語言編寫等進行明確,并劃分語言編寫的難易程度,在這一基礎上,幫助軟件開發(fā)人員形成一個較為完整的認知。
2.3 中小軟件項目的人員估算
中小軟件估算人力資源的設置,應當以中小軟件項目的實際工作量作為主要依據,同時考慮軟件開發(fā)周期以及開發(fā)階段的客觀要求,結合過往中小軟件項目開發(fā)管理的經驗,開展相關人員估算工作。具體來看,中小軟件各個項目運行之中,不同環(huán)節(jié)需要不同的數量、不同專業(yè)的軟件開發(fā)人員,同時參考軟件設計、軟件開發(fā)以及軟件測試等主要環(huán)節(jié)之中的客觀要求,在雷利曲線的引導下,確定不同人員不同的工作任務需求,同時結合工作人員的技術能力,對中小軟件項目之中人員使用數量以及人員進出項目的時間進行確定,并將其計入《項目人員估算表》之中,為后續(xù)軟件項目開發(fā)管理工作的開展帶來極大的便利。
2.4 中小軟件項目的成本估算
中小軟件成本估算是現階段軟件項目管理體系的核心組成部分,在軟件開發(fā)階段扮演關鍵性的角色,在軟件開發(fā)的過程中,管理人員有必要從過往經驗出發(fā),借鑒已有的軟件開發(fā)管理體系,推動成本估算工作的順利開展。
成本估算應包括軟件開發(fā)項目人力成本、其他費用支出以及專業(yè)設備費用等。在具體過程中,人力成本的估算需要結合軟件開發(fā)工作的客觀要求,結合分析工作人員的工作量,由財務部門進行人力資源費用支出的核算。在其他費用的估算過程中,需要結合軟件開發(fā)項目的實際需求,對工作人員的各類補助費用,例如出差費用、住宿費用,進行全面估算,以期為后續(xù)各項工作的開展提供了必要的支持。
項目估算的總成本=人力成本+其他費用+專用工具和設備費用。
從實際經驗來看,中小軟件項目成本估算過程中,可以從類比估算、參數估算以及自上而下估算的方式,推動估算工作的有序進行。具體來看,軟件項目類比估算法通常在開發(fā)項目初期使用,由于中小型軟件項目類型不確定,各項信息不明確的情況,可以采取這種方法來進行。參數估算屬于一種建模統計方式,采用回歸分析以及學習曲線等方式,使用相關參數來進行必要的修正,這種估算方式可以增強軟件估算的合理性以及準確性。從過往情況來看,參數估算方法需要大量統計數據信息的參與,基于這種認知,在采取參數估算的過程中,需要注重信息數據的采集,控制成本,建立起完備的數據庫模式。在自下而上的成本估算的過程中,管理人員對項目進行整體分解,通過分解優(yōu)化中小軟件項目的各個流程,增強軟件成本估算的全面性與準確性。
3 總結
隨著信息技術的蓬勃發(fā)展,中小軟件項目在目前軟件項目應用中越來越占有重要位置,且項目開發(fā)前的軟件估算至關重要,所以對中小軟件項目的估算進行研究具有極大的意義。由于中小軟件項目本身與其他大型軟件項目有極大的差別,它人員少,資金不足,軟件過程不明顯,甚至沒有明確定義的軟件過程等特點,所以對它的估算研究也不同于其他軟件項目,需要在一般軟件估算方法的基礎上,再針對它的這些特點進行研究,提出相應方法。本文就目前一般軟件的幾種常用估算方法進行了對比分析,根據目前中小軟件項目的現狀和實際工作中對它的要求,對中小軟件項目的規(guī)模估算、工作量和工期估算、成本估算、人員估算風險和關鍵計算機資源估算等進行了具體的研究和探討,并提出了一些相應的方法。
參考文獻:
[1] 李健,金茂忠.中小型企業(yè)軟件過程改善研究[J].計算機工程與應用,2001,37(19):107-111.
[2] 孫紀敏.CMM技術—軟件規(guī)模估計的兩種方法[J].無線電通信技術,2003,29(6):8-11.
[3] John Liao PMP.軟件估算技術[J].企業(yè)技術開發(fā),2005(12):9-20.
[4] 楊一平.軟件能力成熟度模型CMM方法及其應用[M].北京:人民郵電出版社,2001:30-35.
[5] 國際功能點用戶組織.TI度量——專家實踐[M].北京:清華大學出版社,2003:50-55.
[6] 劉克青,廖建新.軟件項目策劃中的工作量估算方法探討[J].計算機工程與應用,2004(27):20-25.
【通聯編輯:代影】