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