如何評估自己的開發(fā)工作量
關注公眾號?前端人,回復“加群”
添加無廣告優(yōu)質(zhì)學習群
概述
開發(fā)人員在進行開發(fā)工作之前都需要給出一個工作量的評估,以便后續(xù)的工作任務可以基于該時間進行排期。大多數(shù)開發(fā)人員評估工作量主要是基于過往的工作經(jīng)驗拍腦袋決定,并會給自己預留出一定的Buffer時間。這樣可能的問題就是過度依賴個人的開發(fā)經(jīng)驗,且Buffer時間的沒辦法量化。我們需要一種科學的工作量評估方法——三點估算。
詳解三點估算
什么是三點估算
先來介紹一下什么是三點估算法:
三點法評估需要將一個任務的時間評估分成:最樂觀時間、最可能時間、最悲觀時間。好比上班路上花費的時間,一般最可能花費時間是30min;樂觀情況不堵車都是綠燈只需要20min,如果悲觀考慮到可能趕上上班高峰,路上很堵則需要50min才能到公司。
將工作量模擬成正態(tài)分布的形式。那么就可以得到如下的公式:
期望值μ?=?(最樂觀時間?+?4?x?最可能時間?+?最悲觀時間)???6
標準差σ=?(最悲觀時間?-?最樂觀時間)???6
通過計算得到的期望值μ是一個預期工作的持續(xù)時間,標準差σ代表由于開發(fā)過程中的不確定因素導致實際工期和期望工期的浮動時間。
Buffer時間的設定
我們先來回答一個問題:我們在計算得到的【期望值μ】之前完成開發(fā)工作的任務的概率是多少——沒錯,不論開發(fā)經(jīng)驗是否豐富都只有50%!明顯如果你給出一個工作量評估并跟PM說我只有50%的可能性完成,他可能會告訴你,我也有50%的可能性不給你發(fā)項目獎金。學過概率論正態(tài)分布我們會知道點落在各個區(qū)間的概率存在如下規(guī)律:
| 標準差區(qū)間 | 區(qū)間概率 | 完成概率 |
|---|---|---|
| 1倍標準差 | 68.3 | 84.15 |
| 2倍標準差 | 95.4 | 97.7 |
| 3倍標準差 | 99.7 | 99.85 |
用于小型簡單的任務 | 因此我們我們可以通過在計算得到的期望值的基礎上適當增加標準差時間作為Buffer,來保證我們的工作可以按時交付。
### 關于三點估算的思考
工作評估粒度問題 在評估前我們都需要對當前任務進行拆分,使用三點估算我們不需要粒度拆分的很小,因為最初沒辦法面面俱到考慮到所有功能點,粒度維持在一個中小型獨立的功能模塊為宜。
標準差的理解
數(shù)學上標準差代表著數(shù)據(jù)的穩(wěn)定性,標準差越大數(shù)據(jù)波動越大,在三點估算中標準差也反映著開發(fā)者的對于當前工作熟練程度,因此,越是經(jīng)驗豐富在熟悉的領域最終的標準差就會越小,陌生的領域也會計算得到較大的Buffer時間,保證可以如期交付。
為什么使用三點評估
三點評估在評估過程中考慮到了項目中不確定性的風險,且有概率統(tǒng)計的依據(jù),保證了評估的準確性,同時該方法計算簡單、容易理解在實際開發(fā)工作中的使用門檻還是較低的
其他評估方法
除了三點評估,下面的一些方法也常常用來進行工作量的評估:
| 方法 | 描述 | 評價 |
|---|---|---|
| 類比法 | 和過往類似項目進行類比估算 | 不同項目之間往往存在較大差異,存在較大風險 |
| 專家推斷 | 行業(yè)內(nèi)經(jīng)驗較豐富人員的給出指導性意見 | 過度依賴個人經(jīng)驗,不具備普適性 |
| 參數(shù)估算 | 根據(jù)任務進行中特定材料的耗費情況進行估算 | 不適用于軟件開發(fā) |
| 自下而上估算 | 將任務拆分成一個一個細致的工作包,并單獨評估,最終匯總 | 最準確,但是評估成本較高,在開發(fā)中適用于小型簡單的任務 |
總結
不要輕視啟動階段的計劃評估工作,這一過程也是對需求深入理解的過程,從而規(guī)避復工、回爐重造的風險。
一個好的工作量評估,需要建立在對當前的需求足夠了解,可以識別潛在風險的基礎上。評估中往往允許我們合理加入一定的Buffer時間,因為一旦延期,你可能影響到的是后續(xù)他人的工作計劃,從而影響整體的交付時間。
管理規(guī)范的團隊延期后往往會組織復盤會,所花費的代價遠不止少評估了工作量這么簡單。當然也為了避免延期預留過多的Buffer時間,造成人力資源的浪費。最后分享帕金森定律中最常被引用的一句話:
Work expands to fill the time available for its completion. —— 你可以用來完成工作的時間有多少,你的工作就會拖延、膨脹、復雜到讓你足以填滿那段時間為止。
希望使用三點評估法可以幫助你合理科學的評估開發(fā)工作量。
原文地址:juejin.cn/post/6932431639335141384
回復 資料包領取我整理的進階資料包回復 加群,加入前端進階群console.log("文章點贊===文章點在看===你我都快樂"Bug離我更遠了,快樂離我更近了
