風險管理的簡要的指南,參見我的文章“Know Your Enemy: Software Risk Management”(Oct. 1998)。
11. 根據工作計劃而不是日歷來作估計
人們通常以日歷時間作估計,但是我傾向于估計與任務相關聯(lián)的工作計劃(以人時為單位)的數量,然后把工作計劃轉換為日歷時間的估計。這個轉換基于每天我有多少有效的小時花費在項目任務上,我可能碰到的任何打斷或突發(fā)調整請求,會議,和所有其他會讓時間消失的地方。
12. 不要為人員安排超過他們80%的時間
跟蹤你的組員每周實際花費在項目指定工作的平均小時數,實在會讓人吃驚。與我們被要求做的許多活動相關的任務切換的開銷,顯著地降低了我們的工作效率。不要只是因為有人在一項特定工作上每周花費10小時,就去假設他或她可以馬上做4個這種任務,如果他或她能夠處理完3個任務,你就很幸運了。
13. 將培訓時間放到計劃中
確定你的組員每年在培訓上花費多少時間,并把它從組員工作在指定項目任務上的可用時間中減去。你可能在平均值中早已經減去了休假時間、生病時間和其他的時間,對于培訓時間也要同樣的處理。
14. 記錄你的估算和你是如何達到估算的
當你準備估算你的工作時,把它們記錄下來,并且記錄你是如何完成每個任務的。理解創(chuàng)建估算所用的假設和方法,能夠使它們在必要的時候更容易防護和調整,而且它將幫助你改善你的估算過程。
15. 記錄估算并且使用估算工具
有很多商業(yè)工具可以幫助你估算整個項目。根據它們真實項目經驗的巨大數據庫,這些工具可以給你一個可能的進度和人員分配安排選擇。它們同樣能夠幫助你避免進入“不可能區(qū)域”,即產品大小,小組大小和進度安排組合起來沒有已知項目成功的情況
16. 遵守學習曲線
如果你在項目中第一次嘗試新的過程,工具或技術,你必須認可付出短期內生產力降低的代價。不要期望在新軟件工程方法的第一次嘗試中就獲得驚人的效益,在進度安排中考慮不可避免的學習曲線。
17. 考慮意外緩沖
事情不會象你項目計劃的一樣準確的進行,所以你的預算和進度安排應該在主要階段后面包括一些意外的緩沖,以適應無法預料的事件。不幸的是,你的管理者或客戶可能把這些緩沖作為填料,而不是明智的承認事實確實如此。指明一些以前項目不愉快的意外,來說明你的深謀遠慮。
18. 記錄實際情況與估算情況
如果你不記錄花費在每項任務上的實際工作時間,并和你的估算作比較,你將永遠不能提高你的估算能力。你的估算將永遠是猜測。
19. 公開、公正地跟蹤項目狀態(tài)
創(chuàng)建一個良好的風氣,讓項目成員對準確地報告項目的狀態(tài)感到安全。努力讓項目在準確的、基于數據的事實基礎上運行,而不是從因為害怕報告壞消息而產生的令人誤解的樂觀主義。使用項目狀態(tài)信息在必要的時候進行糾正操作,并且在條件允許時進行表揚。
20. 只有當任務100%完成時,才認為該任務完成
使用英寸大小的小圓石的一個好處是,你可以區(qū)分每個小任務要么完成了,要么沒有完成,這比估計一個大任務在某個時候完成了多少百分比要實在的多。不要讓人們只入不舍他們任務的完成狀態(tài);使用明確的標準來判斷一個步驟是否真正的完成了。