Scrum 系列:為什麼需要持續做估算?
在敏捷開發方法中,持續做估算是為了幫助團隊更好的規劃和管理工作,以確保專案能夠按時交付並符合品質要求。
有一天,團隊正在討論如何估算的更精準,對話如下:
同學A:「我發現這個 PBI 原本估 5 點,但是做下去以後比較像 8 點。」
同學 B:「對啊,我覺得估算沒有用,反正都估不準,幹嘛要浪費時間做估算。」
同學 C:「先不管是不是很浪費時間,這個 PBI 到底需不需要改成 8 點呢?」
類似的對話是不是似曾相似,在回答問題之前,我們可能要先想想估算的本質。
我認為估算活動可以分成兩個階段,第一個是在 Sprint 開始前,第二個是在 Sprint 開始後,各自有不同的目的性。
在 Sprint 開始前做估算,提供 PO 關於尺寸的資訊
在 Sprint 開始之前,團隊通常會定期舉辦 Backlog Refinement 會議。在這個會議上,PO 會提出新的需求,並邀請團隊成員進行討論。當需求清晰度足夠時,團隊成員會在此時進行初步的估算。
或許有人會質疑,在尚未深入討論實作細節或分解子任務之前,進行這樣的估算是否有意義?實際上,是有其重要性的。
根據這部影片所示,PO 在排序決策上考慮了兩個主要因素,即價值(value)和尺寸(size),價值的資訊來自利益關係人,而尺寸的資訊則來自團隊內部。
因此,在 Backlog Refinement 會議上進行的估算僅是初步估算,屬於快速估算的一種方式。由於尚未深入討論實作細節,因此估算的準確性會受到一定程度的影響,這是正常的現象。
然而,在這個階段,估算的重點並不在於準確性,而是提供給 PO 有關尺寸的資訊。我們只需知道這個需求相對於其他需求的尺寸是否更大,以及大概有多大尺寸即可。這樣的資訊足以提供 PO 參考並調整需求的優先序。
例如,在下圖中間的區塊代表了最近幾個 Sprint 預計進行的 PBI,目前排在第 11 位的 PBI 估算尺寸為 20。對於 PO 來說,這個 PBI 的尺寸是否值得現在進行呢?或者是否可以晚點進行呢?又或者是該將這個大需求拆解成幾個小需求呢?
這些都是 PO 在評估優先順序時可能會思考的問題,這些資訊對於 PO 來說非常重要。
在 Sprint 開始後重新估算,提供 Team 關於統計的準確資訊
當 PBI 開始實作後,若發現其尺寸與原估計有所出入,是否需要重新估算以進行修正呢?
首先,讓我們思考一個問題:當團隊決定開始實作某個 PBI 時,其尺寸對於實作是否具有實際用途?在解決方案不變的情況下,PBI 的尺寸是否會影響所需的工作量?
我的答案是否定的。當團隊開始實作 PBI 時,尺寸的資訊就瞬間變得不重要,因為該 PBI 的工作量不會因尺寸估計偏大或偏小而改變。
因此,有些團隊選擇不重新估算,因為重新估算所帶來的價值有限。
然而,有些團隊認為還是需要重新估算。當 PBI 的估計尺寸和實際尺寸相差過大時,這可能導致統計上的不準確,例如團隊的速度(velocity)沒有反映出每個 Sprint 可以完成的實際點數,造成團隊高估或低估每個 Sprint 安排的工作量。
總的來說,重新估算 PBI 的尺寸可以使統計資料更加準確,但是否進行此舉仍然取決於團隊的需求和情況。
最後,實現準確的估算需要團隊不斷學習和改進。透過持續的估算,團隊能夠改進準確性,進而提高未來估算的精確性,使得團隊更可靠地預測交付時間。
如果你喜歡我的文章,歡迎「拍手」給我支持,或是「Follow」我,讓我提供更多的優質文章給你。