前言
當前國內(nèi)存在大量的軟件公司,這些公司的規(guī)模不大,開發(fā)團隊一般3到8人,項目開發(fā)一般采取比較粗糙的開發(fā)模型,比如瀑布模型。經(jīng)過問題定義,可行性研究,需求分析,總體設(shè)計,詳細設(shè)計,編碼與單元測試,綜合測試成功的開發(fā)出了第一個版本并交付客戶使用。
接下來就發(fā)現(xiàn)當初所做的需求不符合客戶實際使用的要求;許多模塊的底層開發(fā)人員離職導致程序無法維護;版本多處缺陷沒有測試,導致客戶數(shù)據(jù)部分丟失,客戶滿意度下降;由于項目開始延期,軟件人員開始出現(xiàn)抱怨和生產(chǎn)率下降。而此時客戶方面有提出了更多的應(yīng)用需求,在這種情況下,怎么提高軟件的開發(fā)效率,降低軟件開發(fā)風險是擺在管理者面前的一個嚴峻問題。
通過軟件開發(fā)實踐以及參考相關(guān)的書籍,提出針對軟件開發(fā)項目如何提高軟件生產(chǎn)率,最大限度規(guī)避開發(fā)風險的具體實施辦法。
2 軟件項目的風險在哪里?
上述項目具有軟件開發(fā)項目的典型特征,綜合分析,我們認為軟件項目開發(fā)的風險主要存在以下幾個方面:
(一) 軟件開發(fā)需求一般都不可能與客戶同步,客戶需求的變更往往導致大量的功能模塊更改。
(二) 項目部分重點模塊由于單人負責,導致有可能出現(xiàn)一個主要程序員離職導致整個項目開發(fā)進度停滯不前的問題。
(三) 測試沒有跟上軟件開發(fā)的進度,測試的進度如果跟上開發(fā)進度的時候往往又缺陷率上升。。
(四) 測試不能發(fā)現(xiàn)某些隱藏的潛在缺陷。
(五) 軟件人員只是悶頭開發(fā),沒有給軟件開發(fā)人員很好的進度激勵。
(六) 對軟件開發(fā)人員的工作量的考核不夠量化,目前一般都是量化到模塊,沒有量化到功能點的實現(xiàn),如何實現(xiàn)精細化管理也是一個亟待解決的問題。
在分析問題之后,我們認為,對于前四個問題我們可以采用更改團隊組建和團隊開發(fā)實踐變更的辦法來進行改進,而對于第五個和第六個問題,我們需要采用量化的項目管理的辦法來建立三條控制線來及時對項目進行掌控,降低項目開發(fā)的風險。