小型軟件項(xiàng)目,通常是指工作量在3-12人月之間的項(xiàng)目,在小型軟件開發(fā)企業(yè)中,這類項(xiàng)目一般是放任自流,少有管理。在這類項(xiàng)目中,項(xiàng)目經(jīng)理的角色常常由公司老總或部門老總親自充當(dāng), 項(xiàng)目往往具有投資少、人員少、時(shí)間緊、需求不明確等特點(diǎn)。由于針對(duì)小型項(xiàng)目,缺乏科學(xué)有效的管理方式,或企業(yè)難以負(fù)擔(dān)類似于大型軟件開發(fā)的管理成本,這類項(xiàng)目的開發(fā)過程往往會(huì)產(chǎn)生諸如項(xiàng)目進(jìn)度難以控制、產(chǎn)品缺陷多、后期維護(hù)工作量大、客戶滿意度低、文檔缺乏等諸多問題。一項(xiàng)調(diào)查表明,大約有70%的小型軟件開發(fā)項(xiàng)目超出了預(yù)期時(shí)間,90%以上的項(xiàng)目費(fèi)用超出預(yù)算。因此,小型項(xiàng)目迫切需要引入適度的開發(fā)管理。本文將針對(duì)小型軟件項(xiàng)目開發(fā)過程中的核心管理問題給出一些行之有效的解決方案。
一、需求管理
對(duì)于任何類型的軟件項(xiàng)目,需求階段都是最重要的階段,需求管理是整個(gè)軟件項(xiàng)目管理的重中之重。需求管理通常包括兩個(gè)大方面的問題:需求收集分析與需求變更管理。
首先,對(duì)于需求收集與分析,核心風(fēng)險(xiǎn)來自于需求不明確。由于客戶和軟件開發(fā)團(tuán)隊(duì)的背景不同,對(duì)同一問題的理解自然存在差異。這些差異如果不能在需求的最初階段盡量彌合,那么必然導(dǎo)致需求增加與需求更改。因此,在需求分析階段,要求需求分析人員具有豐富的客戶溝通經(jīng)驗(yàn),必須多花一些時(shí)間,充分了解用戶的目標(biāo)與工作過程,站在客戶立場(chǎng)上,設(shè)身處地考慮問題,幫助用戶將模糊的需求清晰化,將簡(jiǎn)略的需求明細(xì)化、完善化,將混亂的需求邏輯化、條理化。
其次,任何項(xiàng)目都無法承受頻繁的需求變更與需求增加。因此,除了在需求收集階段需要盡可能將需求細(xì)化外,還需要在適當(dāng)階段盡量?jī)鼋Y(jié)需求。公司的銷售人員往往傾向于接受用戶模糊的要求,并暗示用戶“什么都好商量”。這往往給項(xiàng)目后期甚至項(xiàng)目完成后又頻繁更改需求,甚至導(dǎo)致項(xiàng)目嚴(yán)重拖延、開支嚴(yán)重超出預(yù)算埋下禍根。因此,在需求細(xì)化的后期階段,必須“拉下臉來”,就需求凍結(jié)和后期需求增加的費(fèi)用支付方式和客戶達(dá)成共識(shí)。
二、關(guān)注項(xiàng)目設(shè)計(jì)的靈活性
對(duì)于中小型項(xiàng)目,在設(shè)計(jì)過程中,必須關(guān)注設(shè)計(jì)的靈活性。在實(shí)際的項(xiàng)目中,即使在需求階段花再多的經(jīng)歷,也沒法完全避免開發(fā)階段的需求變更。因此,在架構(gòu)設(shè)計(jì)中,盡可能采用靈活的設(shè)計(jì)就至關(guān)重要。對(duì)于項(xiàng)目設(shè)計(jì)人員,可以借鑒RUP(Rational Unified Process)中基于組建的體系結(jié)構(gòu)思想,利用基于獨(dú)立的、可替換的、模塊化組件的體系結(jié)構(gòu)管理復(fù)雜性,提高重用率,構(gòu)建有彈性的、能適應(yīng)變化的、易于理解的、有助于重用的體系結(jié)構(gòu)。
三、開發(fā)進(jìn)度管理
開發(fā)進(jìn)度管理,主要需要關(guān)注如下幾個(gè)方面:
1. 任務(wù)分配、人力資源分配、時(shí)間分配要和工程進(jìn)度協(xié)調(diào);
2. 任務(wù)分解要合理,并且盡量并行化;
3. 對(duì)項(xiàng)目進(jìn)度控制要盡量細(xì)致,并且在實(shí)際執(zhí)行過程中審查要嚴(yán)格;
4. 針對(duì)項(xiàng)目中不容易控制的部分,譬如技術(shù)難點(diǎn)、來自于客戶的時(shí)間拖延要做好充分的準(zhǔn)備; 5. 要為測(cè)試、缺陷修正和預(yù)期的需求變更預(yù)留足夠的時(shí)間;
如有必要,還應(yīng)采用適當(dāng)?shù)膮f(xié)同進(jìn)度管理工具。
四、開發(fā)團(tuán)隊(duì)管理
對(duì)于開發(fā)團(tuán)隊(duì)管理,要做到分工明確、因人施用。根據(jù)水平的高低,合理分配工作量。并且關(guān)注團(tuán)隊(duì)內(nèi)部的交流溝通結(jié)構(gòu),避免“互相等”和“誤解”。盡量讓每個(gè)人的工作量飽和化。在項(xiàng)目開始以后,要盡可能保持團(tuán)隊(duì)穩(wěn)定,避免人員變更給團(tuán)隊(duì)帶來的協(xié)作混亂。
五、配置管理和SQA
軟件配置管理(SCM)的主要作用是標(biāo)識(shí)、控制、和狀態(tài)統(tǒng)計(jì)。
這些功能的意圖是維護(hù)
項(xiàng)目經(jīng)理勝任力免費(fèi)測(cè)評(píng)PMQ上線啦!快來測(cè)測(cè)你排多少名吧~
http://m.opto-elec.com.cn/pmqhd/index.html