1. 程式人生 > >22.敏捷估計與規劃——Why Agile Planning Works筆記

22.敏捷估計與規劃——Why Agile Planning Works筆記

00.經常進行重規劃,是敏捷規劃和估計為有效探索新產品開發解決方案控制元件提供支援的方法之一。在每次迭代開始時,都要建立該迭代的計劃。釋出計劃要麼在每次迭代後背更新,或者最差的時候也要在每幾次迭代後被更新。計劃要保持有用,就需要把這些新知識結合到計劃中。敏捷估計和規劃過程暴露出我們的知識總是不完整的,要求隨著我們瞭解更多的知識來修正計劃。

 

01.基於功能而不是基於任務制定計劃。

 

02.敏捷規劃是“更好的”規劃,因為他利用功能而不是任務。在沒有真正理解要構建的產品的情況下,使用標準的任務來規劃整個專案是很容易發生的事。使用功能來進行規劃的時候,小組對產品會有好得多的理解。

 

03.週轉時間也就是一件事從開始處理到結束處理所需要的時間量。

 

04.如果提前完成一項任務的程式設計師會被指責曾經對該任務提供了帶間隙的估計值,程式猿就會學會不要在提前完成。即使他本可以提前完成任務,他也會拖到任務的最後期限才報告完成了它。

 

05.敏捷估計和規劃的12條指導原則(重點、重點、重點)

  *讓整個小組參與。

  *在不同層次上進行規劃。不要錯誤地認為釋出計劃會讓迭代計劃沒有用,反過來也一樣。迭代計劃和每日計劃分別以不同的精度覆蓋了不同的時間範圍,而且各有其特定的用途。

  *使用不同度量單位,讓對規模和持續時間的估計保持獨立。

  *用功能或者日期來體現不確定性。沒有那個計劃是必然發生的。要確定在您制定的任何釋出計劃中都包含不確定性的體現。

  *經常重規劃。利用每次新迭代開始的時候評估當前釋出計劃的關聯度。

  *跟蹤進度並溝通。通過經常釋出有關小組進展的簡單而抑鬱理解的指示器來讓他們瞭解進度。

  *承認學習的重要性。由於專案既是想產品增加新能力,也是產生新的知識,所以必須更新計劃來包含這些新知識。

  *規劃具有適當規模的功能。

  *確定功能優先順序。按照讓專案總價值最高的順序來處理功能。

  *把估計和計劃建立在事實上。

  *保留一些鬆弛度。尤其是在規劃一次迭代的時候,不要規劃用掉所有小組成員100%的時間。

  *通過前瞻規劃協調多個小組。

 

06.小結

  敏捷規劃的目的是以迭代的方式發現總體產品開發問題的最佳解決方案,這個問題就是在哪段時間內使用哪些資源來得到那些功能。敏捷估計和規劃方法可以成功找到這樣的解決方案的原因包括:計劃是在不同層次上做出的,並且重規劃頻繁地發生;計劃是根據功能而不是根據任務做出的;首先估計規模,然後根據規模的估計值推算出持續時間;小故事保持工作的流動,而且每次迭代結束是會消除處理中的工作;是在小組層次而不是個人層次對進度進行度量;承認不確定性併為之做計劃。