監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 甲方項(xiàng)目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉

如何估算開(kāi)發(fā)進(jìn)度

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

我所在的團(tuán)隊(duì)有六個(gè)開(kāi)發(fā)人員,兩個(gè)測(cè)試人員.我們的過(guò)程還不成熟,基本上處于初級(jí)階段,需要不斷的改進(jìn).一個(gè)新的版本開(kāi)始了,開(kāi)發(fā)計(jì)劃的制定是首先遇到的問(wèn)題.

計(jì)劃始終依賴于需求和人員,涵蓋的內(nèi)容包括幾個(gè)重要的里程碑:需求分析,設(shè)計(jì)與實(shí)現(xiàn),測(cè)試.只要把這三個(gè)階段的時(shí)間估算出來(lái),基本上這個(gè)版本的計(jì)劃就會(huì)更容易制定.人員是相對(duì)固定的,而需求是相對(duì)變化的,我們第一步就是要確定需求.通常我們和市場(chǎng)人員一起討論優(yōu)先級(jí)相對(duì)比較高的需求,這部分工作會(huì)在新版本開(kāi)始之前就做好.接下來(lái)就是評(píng)估每個(gè)需求需要的時(shí)間.如何估算每個(gè)需求的開(kāi)發(fā)時(shí)間是個(gè)大難題.XP提供的方法是把每項(xiàng)任務(wù)都分配一個(gè)點(diǎn)數(shù),不確定一個(gè)點(diǎn)需要多長(zhǎng)時(shí)間,只確定兩個(gè)點(diǎn)需要的時(shí)間是一個(gè)點(diǎn)的兩倍.基于目前我們的開(kāi)發(fā)人員的整體能力和過(guò)程,這一點(diǎn)暫時(shí)還做不到,我們就做了一點(diǎn)變通,由我來(lái)判斷大概一個(gè)需求需要的點(diǎn)數(shù).如果沒(méi)法判斷,說(shuō)明我對(duì)細(xì)節(jié)的了解還不夠,那就把需求再細(xì)化,分成若干個(gè)任務(wù),不是盡可能地細(xì),而是盡可能地粗粒度.這樣我就可以花最少的時(shí)間達(dá)到我的目的.

然后再對(duì)每項(xiàng)任務(wù)分配點(diǎn)數(shù).現(xiàn)在,我的任務(wù)就是怎么樣去分配點(diǎn)數(shù)了.通常每個(gè)任務(wù)都分表現(xiàn)層,業(yè)務(wù)層和持久層,根據(jù)任務(wù)的復(fù)雜度來(lái)安排點(diǎn)數(shù),復(fù)雜度包括代碼行數(shù),業(yè)務(wù)的復(fù)雜度,功能點(diǎn)等,主要還是根據(jù)經(jīng)驗(yàn)判斷.

把每個(gè)需求的點(diǎn)數(shù)分配完后,再引開(kāi)發(fā)人員的估算.有六個(gè)開(kāi)發(fā)人員,每個(gè)人完成一個(gè)點(diǎn)的的時(shí)間各不一樣.我只能先選擇一個(gè)需求,根據(jù)過(guò)去我們開(kāi)發(fā)類似功能經(jīng)驗(yàn)估算能力最高的人需要N小時(shí),能力最低的人需要多久M小時(shí).再通常整體開(kāi)發(fā)能力的分布情況稍微調(diào)整一下N+M/2.那么我們完成所有需求的時(shí)間大概就估算出來(lái)了.當(dāng)然這只是計(jì)劃,我們還需要在開(kāi)發(fā)的各個(gè)階段做出適當(dāng)?shù)恼{(diào)整.

如果完成所有需求的周期過(guò)長(zhǎng),一般來(lái)講我們每個(gè)版本的開(kāi)發(fā)周期都不應(yīng)該超過(guò)一個(gè)月,那么就要把一些需求移一下個(gè)版本,相應(yīng)地,這些需求的優(yōu)先級(jí)會(huì)再升一級(jí).

接下來(lái)是估算測(cè)試的時(shí)間.相關(guān)的測(cè)試人員領(lǐng)取自己要測(cè)試的需求,根據(jù)需求的分析文檔來(lái)估算大概的測(cè)試的時(shí)間,這一部分不會(huì)有太大的出入,估得都會(huì)比較準(zhǔn).如果需求發(fā)生變化,根據(jù)情況調(diào)整測(cè)試時(shí)間.

現(xiàn)在三個(gè)階段的時(shí)間都估算完了,接著就是增加緩沖時(shí)間,我們通常以開(kāi)發(fā)時(shí)間的30%做為緩沖時(shí)間,這部分時(shí)間會(huì)被一些額外的工作,如比較緊急的產(chǎn)品bug或者突然生病之類的意外所占用.當(dāng)然,30%是不確定的,要根據(jù)過(guò)去幾個(gè)版本的歷史數(shù)據(jù)積累來(lái)做出適當(dāng)?shù)呐袛?

此外還有一點(diǎn)是比較有趣的,算是意外的收獲.當(dāng)分配完每個(gè)需求的點(diǎn)數(shù)之后, 任務(wù)就被細(xì)化,那么任務(wù)的安排就會(huì)變得更靈活.同時(shí),每個(gè)開(kāi)發(fā)人員開(kāi)發(fā)的點(diǎn)數(shù)就會(huì)被做為歷史數(shù)據(jù),如果你上一版本(兩周的開(kāi)發(fā)時(shí)間)開(kāi)發(fā)了六個(gè)點(diǎn)數(shù)據(jù)的任務(wù),那么這個(gè)版本(同樣是兩周)你就不可能離六個(gè)點(diǎn)數(shù)太遠(yuǎn).同樣的情況適用于整個(gè)團(tuán)隊(duì),這樣我只需要估算每個(gè)需求的的點(diǎn)數(shù),而不用發(fā)愁到底我的團(tuán)隊(duì)在這個(gè)版本中可以開(kāi)發(fā)多少需求,或是這么多需求我不知道要開(kāi)發(fā)多久.實(shí)際上有點(diǎn)解耦的味道在里面,把需求和開(kāi)發(fā)人員變化隔離開(kāi)了.

XP有許多的概念和最佳實(shí)踐,但真正要找到適合我們的最佳實(shí)踐, 還有很長(zhǎng)一段路要走.

發(fā)布:2007-04-01 15:05    編輯:泛普軟件 · xiaona    [打印此頁(yè)]    [關(guān)閉]
相關(guān)文章: