讓 Scrum 團隊有更好的預估之二

閱讀時間約 7 分鐘
圖片來源:www.freepik.com

圖片來源:www.freepik.com

在上回讓 Scrum 團隊有更好的預估之一討論 Scrum 對於估算的精神與常見的估算單位,這回就來討論一些應該避免的事項,讓團隊能有更好的估算,下回則是過去的自省與感想。

要讓團隊有較高品質的估算,agile coach 或 scrum master 可以觀察一些徵兆,若有發現盡早排除,免得讓團隊成員有壞習慣或是對估算這件事有陰影。

避免團隊成為橡皮章

首先,不論點數和時數都應該是由實際執行的團隊評估,PO 與 SM 都不要有建議,像是對團隊的數字說:『會不會估太少或估太多?』 (雖然,很多人都說遇到的 PO 大多是後者,但不管哪一種都不好)。最重要的是,不到非用不可的地步,PO 不要說:『不管怎樣,這些 stories 在這個 sprint 一定要做完。』這句話的殺傷力很大,因為就算團隊估算完後做不完也無法把 story 吐出來,會讓團隊之後更加不願意估算。而且為了趕上,犧牲掉的通常就是品質 (刪除某些細節的規格或是省略掉一些例外的處理),或堆積更多的技術債。但切記,對團隊信任度的傷害卻已經造成了。

就過去的經驗和參加其他活動聽到的經驗,很多的 dead line,都不是真的 dead line,通常是壓著說一定要做完,等到 sprint 最後一天,PO 看著牆面然後就冒出新的 dead line,或是當團隊勉強完成了,卻發現遲遲沒有真的上線,團隊才知道客戶根本沒這麼急著要。但 dead line 是一定會有的,像是奧運一定是在某一天開幕,作為支援的系統,勢必要在那一天之前上線,但如果真走到這一步,加班是避免不掉的,只是這應該是所有 agile 方法都在極力避免的 (透過減少未完成品的數量)。

避免換算

若同時使用點數與時數,要注意一點:點數與時數之間不一定有必然的關係,有可能某個 1 點的 story 切完 task 後估算結果是 8 小時,另一個 1 點的 story 估算後是 6 小時,這都是可以的。像剛剛我提到不大不小的 story,到底怎樣的 story 算是不大不小呢?我刻意避開像這樣的形容詞:『一人能在一天內完成的』story,原因就是避免讓團隊又落入以時間換算點數的情況,這樣就失去相對大小比較的好處了。

當排入 spring backlog,且 task 已經切好,也估完時數後,story 的點數雖然還是有一些統計上的意義,但沒那麼重要,因此不用拘泥於點數與實際的時數對不起來的問題,還特地回去修改點數或是調整時數,因為本來就沒有對應關係。當每個 spring 消化的點數趨於穩定,代表團隊的開發速度穩定,product owner是 是可以參考 velocity 大略估算時程,但這也不是絕對的時程。

即使事後統計發現有關係,也不需要拿出來跟團隊說,以後 1 點就是 5 小時,這會讓團隊在估算時礙手礙腳,一直在計算彼此之間的換算,或是讓團隊先估時數再回去推算點數。

避免僵局

若方法正確的話 (除了 planning poker 外,也可以參考 團隊估算遊戲),點數在估算上比較少會出現僵局,但 task 的時數就比較容易出現僵局,本來估點與估時的重點是釐清問題和尋找共識,但因為是以『如果是自己做這個 task 要花多少時間』就容易出現 senior 和 junior 就經驗上和能力上的不同有不同的數字,通常 junior 會比較擔心若在預估的時間內做不完,會不會讓自己的考績變差,因此會堅持較大的時數。此時也許可以考慮連 task 都用點數估算,所有的東西都是看相對的,這樣就可以排除不同人做同一件事時間不同,造成估算上的爭執。當全都以點數估算時,daily stand up meeting 就很重要了,因為那是團隊能知道實際還要多少時數的機會,這時就以真正做事情的人進行估算還需要多少時間,因為已經開始做了,這時候通常比較有把握,因此比較沒有爭議

一般來說,我說的是一般,但還是有些人本身很在意數字。團隊的氛圍通常是避免僵局最容易的方法,若對於多估 (實際執行時數比預估時數少) 或是少估 (實際執行時數比預估時數多),團隊能有開放性的檢討與改進,而不是批評或是做為考績的參考時,團隊也就比較不會對於數字斤斤計較,讓估時陷入僵局。

避免懼怕承諾

剛開始導入 Scrum 進行估時,通常都是估不準的,要不是過於樂觀就是過於悲觀,這都是正常現象,通常,團隊大概需要幾次的估算後才會趨於穩定,有點像下圖 (只是舉例,可能像任何數值),一開始沒經驗,因此承諾較多的點數 (40),但最後沒有完成, 於是下個 sprint 就曾諾較少的點數 (10),後來可能提前做完,因此又在下個 sprint 承諾較多的點數 (33),這震盪現象會持續一陣子,最後趨於一個穩定值 (大約20)。

raw-image

所以在自省時 (稍後會說如何看過度悲觀或過度樂觀) 也不需要過度反應,非要團隊想出一個辦法或是要團隊在下次一定要估的很準,特別是承諾的 stories 沒有做完時 (這裡排除做錯被退的情況,單看因估計錯誤造成的沒做完),過度的反應有時會有反效果,像是花更多時間預估 (造成會議時間拉長)、數字灌水 (讓統計失真)、在估算時討論過多細節 (請參考後面的 mini-waterfall) 或是懼於給承諾。

在 TCP 網路協定中有個 Reno (Slow Start) 規則,當出現速度等異常時,傳送方會將傳送速度降到一半,然後慢慢再往上增加速度,當出現預估過度樂觀時,也許可以建議團隊先降低一個 sprint 能納入的 story 點數,當在 sprint 中提前做完,可以再添入 story 或是處理技術債,並在下次的評估中增加點數的上限,反覆幾次也能找到一個穩定值。

時時梳理

先前有提到,預估有一個重點是:團隊透過估點的方式釐清問題,看是否有不清楚的部分,因此若真要說一個 user story 本身點數有什麼意義的話,當點數很大時,例如:13、20,通常代表的是團隊根本不知道這個 story 要做什麼?或是太過複雜,應該再更進一步切小。一般來說 product backlog 中,高優先度的 story 點數應該都比低優先度的 story 要小,不然就應該安排 refinement meeting 將高優先度但點數仍然很大的 story 進行 refine,refinement 的重點也不是在切割,切割只是釐清問題後的結果,不是必然的過程。若團隊將一個不大不小的 story 點數是以5點來計算時,當進入 planning meeting 的 stories 點數都介在 1 ~ 8之間,時數估算的結果通常也會比較穩定。

切小還有一個好處是讓 PO 或 stackholder 有機會挑選真正最重要的功能來開發,agile 的 12 個原則中的一個是『將未完成的工作量最大化』,這一點看起來很矛盾,但這是因為一個軟體中,通常大部分的功能是使用者沒在用的,就算開發完成也只是浪費,同樣,一個需求,當初可能規畫得很完整,但切成小 story 後,可以根據時程與各項條件,把某些較不重要的 story 優先度調降,專注在更重要的 story 上,若擔心只有一個 product backlog 無法看到需求的全貌 (那些 stories 完成了,那些還沒),可以考慮 user story mapping 協助追蹤整個全貌

小結

透過時時梳理讓 product backlog 保持在有足夠細節的狀態,讓團隊在預估時就比較容易達成共識,避免團隊成為橡皮章、避免換算、避免僵局與避免懼怕承諾措施,讓團隊更有信心說出內心的想法,如此才是團隊的共識,而不是某某人說的算,這種沒有根據的假設了。

avatar-img
53會員
104內容數
這是從 Medium 開始的一個專題,主要是想用輕鬆閒談的方式,分享這幾年軟體開發的心得,原本比較侷限於軟體架構,但這幾年的文章不僅限於架構,也聊不少流程相關的心得,所以趁換平台,順勢換成閒談軟體設計。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Spirit的沙龍 的其他內容
這同是 2016 年的舊文,根據現在的閱讀習慣重新整理,文章分成三回陸續發布,本回先談談在 Scrum 中,為什麼要估時,然後談談比較常見的單位與用法。下回則是幾個小方法,讓團隊能有更好的估算。最後一回,則是一些過去的自省與感想。
這是 2016 年的舊文重新整理,這幾年應該很少聽到軟體生命週期管理了,裡面的部分概念被其他更夯的詞取代了,像是 DevOps,所以我在一開頭便選了張比較接近潮流的圖片,不過說真的,在這個領域,常常有很多新名詞出現,但真正落實的又有多少呢?
在上回,探討 WIP Limit 的設置,但如果當被 WIP Limit 卡住時,直覺的想法是放寬 WIP Limit 而不是想著如何協助他人讓工作順利完成,那就失去使用看板方法的意義了,這回將探討如何讓團隊自覺與改善。
在上回,我們已經把工作視覺化成看板,但這只是第一步,要想用看板方法優化工作的流程,我們得設置 WIP 限制,讓團隊開始知道瓶頸在哪裡,然後才能開始改善,這一回就來看 WIP 限制的設置。
在上一回 說明看板方法相關的精實精神與原則與實務,這一回則是來設計看板,包含看板的範圍應該多廣、有哪些狀態、工作的顆粒度,以及 DoD 的呈現。
當初上完課,很激勵地寫下當時的心得,不太符合現在閱讀的習慣,所以重新整理成較適合閱讀的系列作,這篇將主要分享看板方法的精神與原理,後續會陸續更新,第二篇則是視覺化的作法,第三篇是 WIP Limit 的使用,最後是落實與其他感想。
這同是 2016 年的舊文,根據現在的閱讀習慣重新整理,文章分成三回陸續發布,本回先談談在 Scrum 中,為什麼要估時,然後談談比較常見的單位與用法。下回則是幾個小方法,讓團隊能有更好的估算。最後一回,則是一些過去的自省與感想。
這是 2016 年的舊文重新整理,這幾年應該很少聽到軟體生命週期管理了,裡面的部分概念被其他更夯的詞取代了,像是 DevOps,所以我在一開頭便選了張比較接近潮流的圖片,不過說真的,在這個領域,常常有很多新名詞出現,但真正落實的又有多少呢?
在上回,探討 WIP Limit 的設置,但如果當被 WIP Limit 卡住時,直覺的想法是放寬 WIP Limit 而不是想著如何協助他人讓工作順利完成,那就失去使用看板方法的意義了,這回將探討如何讓團隊自覺與改善。
在上回,我們已經把工作視覺化成看板,但這只是第一步,要想用看板方法優化工作的流程,我們得設置 WIP 限制,讓團隊開始知道瓶頸在哪裡,然後才能開始改善,這一回就來看 WIP 限制的設置。
在上一回 說明看板方法相關的精實精神與原則與實務,這一回則是來設計看板,包含看板的範圍應該多廣、有哪些狀態、工作的顆粒度,以及 DoD 的呈現。
當初上完課,很激勵地寫下當時的心得,不太符合現在閱讀的習慣,所以重新整理成較適合閱讀的系列作,這篇將主要分享看板方法的精神與原理,後續會陸續更新,第二篇則是視覺化的作法,第三篇是 WIP Limit 的使用,最後是落實與其他感想。
你可能也想看
Google News 追蹤
Thumbnail
徵的就是你 🫵 超ㄅㄧㄤˋ 獎品搭配超瞎趴的四大主題,等你踹共啦!還有機會獲得經典的「偉士牌樂高」喔!馬上來參加本次的活動吧!
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
如何有效運用Scrum的船舶理論來主持專案檢討會。船舶理論將專案比作船,通過風帆、礁石、錨等元素可視化檢討內容。會議前的準備、進行步驟及專案經理的主持技巧,幫助團隊在輕鬆愉快的氛圍中總結經驗、識別問題、制定改進計劃,從而提升未來專案的成功率。
Thumbnail
在數位時代,Scrum已成為專案管理的利器。本文介紹Scrum的核心角色、工件和事件,並結合我開發CDP的實際經驗,分享如何通過產品待辦清單管理、Sprint計劃與執行、每日站會和Sprint回顧來提升專案靈活性與效率。希望能啟發更多專案經理運用Scrum,優化專案流程。
Thumbnail
籌備一場百人級別的研討會需要注意哪20個細節?本篇將詳細介紹從會議主題、時間、地點、議程、講者、餐飲資訊、宣傳預備到會後結案等籌備過程中需要留意的重要細節。
上週討論的句子, 由下而上分拆解:  you can certainly tell members of your team you are going to push for raises, but don’t give them exact numbers until you know wha
需要精準的語言,不斷的來回溝通確認,才能確保每一個人都在正確的道路上 但每個人心裡想的都不一樣,每個人也都想要保護自己...
Thumbnail
這篇文章介紹瞭如何衡量客戶成功團隊的績效,以及在建立客戶成功團隊的初始階段的六項指標。
Thumbnail
這篇文章分享創業團隊在管理壓力和溝通上的心法和經驗,並提到適當的小里程碑能夠維持團隊的前進動力,以及創造溝通環境的自由性,減少溝通上的不安。
Thumbnail
可能包含敏感內容
現今的企業需要網羅不同領域的人才來組建跨部門團隊一起共創商業價值。當來自不同領域、不同單位的成員組建成一個團隊,也為團隊管理者帶來了新的挑戰,到底要如何管理團隊,才能激發成員的潛力,提高團隊效率呢? 我認為《高績效獲利團隊》書中點出了高效率團隊的本質,也就是良好的團隊氛圍和團隊共同基礎,這都會影響
Thumbnail
過去兩年來,我大部分的團務都是以“單次團”的性質為主。不過我運作單次團和單純的One Shot略有不同:角色後續仍可以延續使用,經驗值也可以累積,只是冒險事件會在當天有個收尾。自創團務的準備方式其實不一定要和官方劇本一樣,鉅細靡遺準備好一切,而應該適度留白,隨機應變和玩家互動才是…
Thumbnail
本文探討專案管理的真正意義,以及專案經理真正的價值是什麼。同時討論專案經理必修的最重要技能。
Thumbnail
徵的就是你 🫵 超ㄅㄧㄤˋ 獎品搭配超瞎趴的四大主題,等你踹共啦!還有機會獲得經典的「偉士牌樂高」喔!馬上來參加本次的活動吧!
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
如何有效運用Scrum的船舶理論來主持專案檢討會。船舶理論將專案比作船,通過風帆、礁石、錨等元素可視化檢討內容。會議前的準備、進行步驟及專案經理的主持技巧,幫助團隊在輕鬆愉快的氛圍中總結經驗、識別問題、制定改進計劃,從而提升未來專案的成功率。
Thumbnail
在數位時代,Scrum已成為專案管理的利器。本文介紹Scrum的核心角色、工件和事件,並結合我開發CDP的實際經驗,分享如何通過產品待辦清單管理、Sprint計劃與執行、每日站會和Sprint回顧來提升專案靈活性與效率。希望能啟發更多專案經理運用Scrum,優化專案流程。
Thumbnail
籌備一場百人級別的研討會需要注意哪20個細節?本篇將詳細介紹從會議主題、時間、地點、議程、講者、餐飲資訊、宣傳預備到會後結案等籌備過程中需要留意的重要細節。
上週討論的句子, 由下而上分拆解:  you can certainly tell members of your team you are going to push for raises, but don’t give them exact numbers until you know wha
需要精準的語言,不斷的來回溝通確認,才能確保每一個人都在正確的道路上 但每個人心裡想的都不一樣,每個人也都想要保護自己...
Thumbnail
這篇文章介紹瞭如何衡量客戶成功團隊的績效,以及在建立客戶成功團隊的初始階段的六項指標。
Thumbnail
這篇文章分享創業團隊在管理壓力和溝通上的心法和經驗,並提到適當的小里程碑能夠維持團隊的前進動力,以及創造溝通環境的自由性,減少溝通上的不安。
Thumbnail
可能包含敏感內容
現今的企業需要網羅不同領域的人才來組建跨部門團隊一起共創商業價值。當來自不同領域、不同單位的成員組建成一個團隊,也為團隊管理者帶來了新的挑戰,到底要如何管理團隊,才能激發成員的潛力,提高團隊效率呢? 我認為《高績效獲利團隊》書中點出了高效率團隊的本質,也就是良好的團隊氛圍和團隊共同基礎,這都會影響
Thumbnail
過去兩年來,我大部分的團務都是以“單次團”的性質為主。不過我運作單次團和單純的One Shot略有不同:角色後續仍可以延續使用,經驗值也可以累積,只是冒險事件會在當天有個收尾。自創團務的準備方式其實不一定要和官方劇本一樣,鉅細靡遺準備好一切,而應該適度留白,隨機應變和玩家互動才是…
Thumbnail
本文探討專案管理的真正意義,以及專案經理真正的價值是什麼。同時討論專案經理必修的最重要技能。