軟件成本超支是軟件項目中經(jīng)常遇到的問題。很多軟件項目經(jīng)理都曾經(jīng)歷過這樣的情況,由于開發(fā)成本的超支,軟件項目做完之后,不僅不能得到上級領(lǐng)導(dǎo)的表揚,甚至連項目獎金都拿不到,而這一切都來源于當(dāng)初對項目成本估算的不準(zhǔn)。對IT行政者而言,預(yù)算進程經(jīng)常是一種非常緊迫的任務(wù),尤其是他們面臨持續(xù)的費用壓力并需要展示他們技術(shù)投資的商務(wù)價值的時候。但在執(zhí)行過程中,出現(xiàn)各種矛盾和問題,導(dǎo)致預(yù)算實施起來非常不宜操作。
1、軟件項目預(yù)算要作到什么程度,才算是一個合格的預(yù)算?
2、由于做預(yù)算,需要對項目進行深入分析,作出工作量核算,需要投入人員與時間,那么作預(yù)算書是不是要有預(yù)算?
3、預(yù)算在軟件項目開發(fā)和項目管理中應(yīng)該是什么樣的流程?怎樣才能做好預(yù)算?
對軟件項目的費用預(yù)算,主要從以下幾個方面著想:
1、工作場所使用的預(yù)算,包括自建場所和租用場所2種。
2、硬件費用,對純軟件項目,主要是PC機,工作站,服務(wù)器等。
3、軟件費用, 包括操作系統(tǒng)(如NT),辦公軟件(如LOTUS NOTES),軟件開發(fā)軟件(如NT,ORBIX開發(fā)LICENSE,VC++等)。
4、軟件開發(fā)人員報酬,即開發(fā)人員工資,獎金等。
5、軟件開發(fā)人員出差費用,如外出調(diào)研,參加研討會等。
以上因素的1,4實際上都是由軟件項目的規(guī)模和開發(fā)周期決定的。如何預(yù)測軟件規(guī)模,在CMM中有幾種比較流行的預(yù)測方法,如WIDEBAND DELPHI,COCOMO.
這里以WIDEBAND DELPHI為例簡單介紹軟件規(guī)模預(yù)測(詳細(xì)流程可以參考相關(guān)軟件項目管理材料):
1、將軟件項目根據(jù)概要需求分割成功能點(FUNCTION POINT),越細(xì)越好。
2、由至少3名領(lǐng)域?qū)<覍γ總€功能點進行邏輯代碼行預(yù)測。針對每個功能點可進行多輪預(yù)測直到大家的結(jié)果的誤差不超過20%。
3、總結(jié)所有的預(yù)測結(jié)果,得到此項目的邏輯代碼量。
4、根據(jù)業(yè)界人均日代碼量(指整個生命周期,非只編碼階段)經(jīng)驗值或本公司對相關(guān)項目的經(jīng)驗值,以及在各個軟件開發(fā)階段(指需求分析,設(shè)計,編碼,測試等)工作量的百分比分布,以及每月的工作日,就知道需要多少人月來開發(fā)這個項目。
5、然后在根據(jù)市場需求時間,項目的人員到位情況,就能定出項目計劃和進度表(包括項目起始結(jié)束時間,每個階段的進度安排,每個月的投入人員,等等)。
6、這樣,以上的1和4的費用預(yù)測就出來了。
至于其它因素,要看項目的具體情況而定,不難得到。
軟件項目預(yù)算要做到什么程度,要看實際情況。嚴(yán)格來講,在項目實施過程中所要涉及的人、財、物都要折算成現(xiàn)金表現(xiàn)方式,明確表示出要多少人、多少物資花多少時間,才能完成此項目。并且最重要的是,所有人、財、物最后的表現(xiàn)方式均為多少錢。但是這種方法本身實施起來就要消耗一定的資源,如果公司內(nèi)部已有一個統(tǒng)一完善的資源數(shù)據(jù)庫