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

更新於 發佈於 閱讀時間約 6 分鐘
圖片來源:www.freepik.com

圖片來源:www.freepik.com

這同是 2016 年的舊文,根據現在的閱讀習慣重新整理,文章分成三回陸續發布,本回先談談在 Scrum 中,為什麼要估時,然後談談比較常見的單位與用法。下回則是幾個小方法,讓團隊能有更好的估算。最後一回,則是一些過去的自省與感想。

2016 離開水果公司,和朋友一起創業,對於要不要要求團隊估時與 CEO 曾有一些討論,當時討論的結論忘了 (路人:怎麼覺得這兩位是好隨便的 CEO 和 CTO,笑),不過,最後決定先照目前的流程跑,然後用 kanban 進行持續的觀察與優化,不過,對於 Scrum 團隊估時倒是有些個人想法可以分享。

為什麼要估時 (或估點)?

剛開始導入 Scrum 時,團隊大概最不能適應的事情之一,就是預估這件工作從 PM 移交給團隊了,過去由 PM 負責切 WBS,然後根據 WBS 規劃時程,有經驗的 PM 也許還好 ,沒經驗的 PM 則是用 dead line 天馬行空地認為團隊能在某個時間點全部開發完畢、然後進行測試等等,反正,一般來說,開發人員在水深火熱之中對於預估是無感的,甚至是排斥的,畢竟要花多少時間,開始開發才知道,說那麼多都沒用,即便 PM 規劃的時程多麼不合理都隨它去了。

在 Agile 方法中,預估的目的首要還是提供進度的可預測性度量,這是不可避免的,即便是粗略的估算,也是要有個大概的時程讓 stackholder 有個譜 (但是這譜有時會變成爭執的焦點又是另外的故事了),但在進行預估的會議中,像是 refinement meeting 或是 planning meeting,預估還有另一層意義:透過預估的方式,確定團隊對於工作內容都有一致的共識,個人認為,這才是將預估這件事交由團隊負責最有價值的地方。

至於可預測性量度,如果我們計劃得夠詳細了 (稍後會提到),是不是就能估算的很精確呢?答案是否定的,因為變異性是難以預測,在 Scrum 中的則是當團隊有穩定的預估穩定的開發能力後,相對來說就比較具有可預測量度。感覺很玄吧!難就難在穩定不是嗎?基本上,答案就是信賴團隊全體的智慧

以點數為例,當大小或複雜度差不多的 stories (或任何要進行預估的工作單位),團隊都能給予相近的點數,此時團隊的預估是彼此有共識的且穩定的;在有穩定的估預估前提下,當團隊能在一定的衝擊範圍 (有人突然重病無法上班、有人離職、新人加入或是遇上原先不預期的困難) 內,團隊能夠互相支援,依然能交付承諾的工作,此時團隊就有穩定的開發能力了。但這上述二點,不是瞬間就能擁有,是要團隊一定時間的磨合後才會穩定下來的。

預估的單位種類

穩定的開發能力需要多種 practice 組合和團隊組合的優化 (cross-functional team),不在這次討論的範圍,即便是有穩定的開發能力,但預估的大小變動範圍很大,也很難有一個穩定的數值可以參考,因此前面才會提到穩定的預估是很重要的前提,大多數 Scrum 書籍都會建議 user story 用點數當作單位,以小時當作 task 的估算單位,但這不是絕對,單位可以分成幾種:

時數

這是最直覺的單位,大家都習慣以『我要花多少時間』完成這個 story 或 task 的想法來估算,但也是最難估的準的單位,特別是用時數估算 story 時,除非 story 夠小,不然動不動就出現 20 或 40 以上的數字,意義就不太大了。如果團隊估時是用 planning poker 方法的話,有時也會容易造成 senior 與 junior 對於時數僵持不下的情況 (稍後再提),不過對剛開始使用 scrum 的團隊來說,用時數當成 task 的單位,在還沒有 velocity 參考數字之前,多一個數字作為一個 sprint 可以選多少 story 的參考。

通常是把每個團隊成員的實際可工作時數 (工作天數 * 5 - 休假時數 - 已知開會時數) 加總,作為一個 sprint 可選進 stories 的上限,從最優先的 story 開始挑,挑到時數已滿時,就不再加 story 了。

點數

和時數這種量測的單位相較,點數就有點抽象,但其實相對大小是比較容易比較的,點數代表複雜度的相對程度,也就是 2 點的 story 其複雜度會比 1 點的 story 要多複雜一倍,這也是為什麼撲克牌會是 1、2、3、5、8 的數列。那單看一個故事的點數有意義嗎?本身沒有,相對來看才有意義,在沒有 velocity 的情境下,也無法得知這個 story 要做多久。一般來說,點數可以用在 story 和 task 上,要使用點數作為單位估算,團隊必須先從過去開發的經驗中,找出一個不大不小的工作項目,訂下一個基礎點數 (3 點或 5 點),接下來所有的估算都是依照新工作比這個基礎複雜幾倍或簡單幾倍來估算。

有一種方法是找到一個最小的工作,當作是 1 點或 0.5 點,但『最小』有時候不容易找到,且也難保未來不會有更簡單的工作項目出現。

工作數

這個單位,我個人是比較建議團隊較成熟後,團隊的 task 切割有一定的慣性,例如切割方式都很類似,大小接近,此時可以簡化成 story 點數估完後,拆解完 task ,團隊對於 task 的內容有共識後,就可以開工了,PO 與 SM 看有多少 task 就大概知道時數的分布會在哪個區間,加快 planning meeting 的進行。由於缺少時數的 burn down chart,若真的想觀察更細微的團隊進度,可以用 task burn down chart 搭配 story burn down chart 來觀察。

個人的想法是,剛開始使用 Scrum 的團隊,還是用點數估算 user story,然後以時數估算 task,至少在一開始決定要納入多少個 stories 到一個 sprint 時,有比較好的參考點,當漸漸成熟時,是可以省去 task 時數的估算,但 story 的點數還是要有,因為團隊是會持續進步的 (當然也可能是退步),或是有人員異動,story 的消耗情況雖然是落後指標,但依舊可以觀察團隊的情況,即使有浮動或劇烈震盪,也應該要慢慢趨向一個穩定值才是夠成熟的團隊。

小結

這回讓大家了解在 Scrum 中,估算背後真正的價值是取得對需求的共識,不管是用點數還是時數,就只是個討論用的工具,最後的數字,雖然有用,但卻不是最重要的產物,真正有價值的產物是團隊把對的東西交付給客戶。下回,將介紹幾個常見在估算時要避免的事項。

留言
avatar-img
留言分享你的想法!
Spirit-avatar-img
發文者
2023/10/25
讓 Scrum 團隊有更好的預估之二提及了這篇文章,趕快過去看看吧!
avatar-img
Spirit的沙龍
54會員
107內容數
這是從 Medium 開始的一個專題,主要是想用輕鬆閒談的方式,分享這幾年軟體開發的心得,原本比較侷限於軟體架構,但這幾年的文章不僅限於架構,也聊不少流程相關的心得,所以趁換平台,順勢換成閒談軟體設計。
Spirit的沙龍的其他內容
2023/11/01
在上回提到一些應該要避免的措施,以及時時梳理 product backlog 讓團隊有較好的估算,這回則是作為一位 scrum master,我們該如何自省與發現估算的問題,也是以自我反省的方式完結這個系列。
Thumbnail
2023/11/01
在上回提到一些應該要避免的措施,以及時時梳理 product backlog 讓團隊有較好的估算,這回則是作為一位 scrum master,我們該如何自省與發現估算的問題,也是以自我反省的方式完結這個系列。
Thumbnail
2023/10/25
在上回討論 Scrum 對於估算的精神與常見的估算單位,這回就來討論一些應該避免的事項,讓團隊能有更好的估算,下回則是過去的自省與感想。要讓團隊有較高品質的估算,agile coach 或 scrum master 可以觀察一些徵兆,若有發現盡早排除,免得讓團隊成員有壞習慣或是對估算這件事有陰影。
Thumbnail
2023/10/25
在上回討論 Scrum 對於估算的精神與常見的估算單位,這回就來討論一些應該避免的事項,讓團隊能有更好的估算,下回則是過去的自省與感想。要讓團隊有較高品質的估算,agile coach 或 scrum master 可以觀察一些徵兆,若有發現盡早排除,免得讓團隊成員有壞習慣或是對估算這件事有陰影。
Thumbnail
2023/10/11
這是 2016 年的舊文重新整理,這幾年應該很少聽到軟體生命週期管理了,裡面的部分概念被其他更夯的詞取代了,像是 DevOps,所以我在一開頭便選了張比較接近潮流的圖片,不過說真的,在這個領域,常常有很多新名詞出現,但真正落實的又有多少呢?
Thumbnail
2023/10/11
這是 2016 年的舊文重新整理,這幾年應該很少聽到軟體生命週期管理了,裡面的部分概念被其他更夯的詞取代了,像是 DevOps,所以我在一開頭便選了張比較接近潮流的圖片,不過說真的,在這個領域,常常有很多新名詞出現,但真正落實的又有多少呢?
Thumbnail
看更多
你可能也想看
Thumbnail
家中修繕或裝潢想要找各種小零件時,直接上網採買可以省去不少煩惱~看看Sylvia這回為了工地買了些什麼吧~
Thumbnail
家中修繕或裝潢想要找各種小零件時,直接上網採買可以省去不少煩惱~看看Sylvia這回為了工地買了些什麼吧~
Thumbnail
👜簡單生活,從整理包包開始!我的三款愛用包+隨身小物清單開箱,一起來看看我每天都帶些什麼吧🌿✨
Thumbnail
👜簡單生活,從整理包包開始!我的三款愛用包+隨身小物清單開箱,一起來看看我每天都帶些什麼吧🌿✨
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
在上回提到一些應該要避免的措施,以及時時梳理 product backlog 讓團隊有較好的估算,這回則是作為一位 scrum master,我們該如何自省與發現估算的問題,也是以自我反省的方式完結這個系列。
Thumbnail
在上回提到一些應該要避免的措施,以及時時梳理 product backlog 讓團隊有較好的估算,這回則是作為一位 scrum master,我們該如何自省與發現估算的問題,也是以自我反省的方式完結這個系列。
Thumbnail
在上回討論 Scrum 對於估算的精神與常見的估算單位,這回就來討論一些應該避免的事項,讓團隊能有更好的估算,下回則是過去的自省與感想。要讓團隊有較高品質的估算,agile coach 或 scrum master 可以觀察一些徵兆,若有發現盡早排除,免得讓團隊成員有壞習慣或是對估算這件事有陰影。
Thumbnail
在上回討論 Scrum 對於估算的精神與常見的估算單位,這回就來討論一些應該避免的事項,讓團隊能有更好的估算,下回則是過去的自省與感想。要讓團隊有較高品質的估算,agile coach 或 scrum master 可以觀察一些徵兆,若有發現盡早排除,免得讓團隊成員有壞習慣或是對估算這件事有陰影。
Thumbnail
這同是 2016 年的舊文,根據現在的閱讀習慣重新整理,文章分成三回陸續發布,本回先談談在 Scrum 中,為什麼要估時,然後談談比較常見的單位與用法。下回則是幾個小方法,讓團隊能有更好的估算。最後一回,則是一些過去的自省與感想。
Thumbnail
這同是 2016 年的舊文,根據現在的閱讀習慣重新整理,文章分成三回陸續發布,本回先談談在 Scrum 中,為什麼要估時,然後談談比較常見的單位與用法。下回則是幾個小方法,讓團隊能有更好的估算。最後一回,則是一些過去的自省與感想。
Thumbnail
打造團隊也要懂得營造快樂的氛圍,當你問高績效團隊,最令人快樂的是什麼,他們會說快樂是來自於努力的過程,把自己的身體、心理及精神狀態發揮到極限。
Thumbnail
打造團隊也要懂得營造快樂的氛圍,當你問高績效團隊,最令人快樂的是什麼,他們會說快樂是來自於努力的過程,把自己的身體、心理及精神狀態發揮到極限。
Thumbnail
敏捷怎麼編預算?敏捷講的不是軟體開發、專案管理、團隊運作的方式嗎?為什麼也要談預算呢?當然要囉,做什麼事都是資源有限,有多少錢做多少事,Scrum Guide以及過往許多的文章、書籍沒有談到預算怎麼編,並不代表敏捷手法是「自助餐吃到飽」或不用考慮投入成本、ROI,讓我們一起瞭解敏捷與預算的關係
Thumbnail
敏捷怎麼編預算?敏捷講的不是軟體開發、專案管理、團隊運作的方式嗎?為什麼也要談預算呢?當然要囉,做什麼事都是資源有限,有多少錢做多少事,Scrum Guide以及過往許多的文章、書籍沒有談到預算怎麼編,並不代表敏捷手法是「自助餐吃到飽」或不用考慮投入成本、ROI,讓我們一起瞭解敏捷與預算的關係
Thumbnail
老實說,從中文書名無法聯想回原文書是《The Elements of Scrum》,雖然書名翻譯沒有太離譜(和內容無關之類的),但總覺得貼近原意會好一點。『Scrum團隊週記』這一章,整個讀完,其實就差不多可以了解Scrum的大部分,所以,若要讀這本書,又沒有太多時間,就先看這一章吧!
Thumbnail
老實說,從中文書名無法聯想回原文書是《The Elements of Scrum》,雖然書名翻譯沒有太離譜(和內容無關之類的),但總覺得貼近原意會好一點。『Scrum團隊週記』這一章,整個讀完,其實就差不多可以了解Scrum的大部分,所以,若要讀這本書,又沒有太多時間,就先看這一章吧!
Thumbnail
一般來說,會斤斤計較估算的數字,一個可能的潛在原因是來自管理層,忘記從哪看來的一句話:總是會得到想要的 KPI。意思是當制定一個指標,總是能得到期望的數字卻不一定能達到預期的效果。
Thumbnail
一般來說,會斤斤計較估算的數字,一個可能的潛在原因是來自管理層,忘記從哪看來的一句話:總是會得到想要的 KPI。意思是當制定一個指標,總是能得到期望的數字卻不一定能達到預期的效果。
Thumbnail
過去擔任 Scrum Master 時,曾觀察團隊用 planning pork 估時超過三或四輪仍無法取得共識,但點數或時數有時只差一點點 (2 or 3),或是差距很大 (3 or 8),若仔細聽他們的討論會發現,之所以會沒有共識,是因為成員都帶入一個心態:如果我做這個 task 要多久?
Thumbnail
過去擔任 Scrum Master 時,曾觀察團隊用 planning pork 估時超過三或四輪仍無法取得共識,但點數或時數有時只差一點點 (2 or 3),或是差距很大 (3 or 8),若仔細聽他們的討論會發現,之所以會沒有共識,是因為成員都帶入一個心態:如果我做這個 task 要多久?
Thumbnail
「怎麼隕石又來了!急件又來了?我該怎麼處理?」 面對這件事,你的選擇只能是「加班」和「死命的加班」嗎?有沒有更好、更科學的處理方式,能幫助你不加班的順暢解決呢?我相信是有的,並且整理並條列如下的推薦給你: 有效運用 Yesterday’s Weather:Scrum 是一個大量運用數據的科學...
Thumbnail
「怎麼隕石又來了!急件又來了?我該怎麼處理?」 面對這件事,你的選擇只能是「加班」和「死命的加班」嗎?有沒有更好、更科學的處理方式,能幫助你不加班的順暢解決呢?我相信是有的,並且整理並條列如下的推薦給你: 有效運用 Yesterday’s Weather:Scrum 是一個大量運用數據的科學...
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News