在連鎖咖啡店點一杯咖啡,直到拿到咖啡,觀察到這間店的 Capacity 或 Capability 是由哪些因素影響的呢?
在 Scrum Team 的日常 sprint 又一個 sprint ,專業的團隊會開始好奇我們到底怎樣預測團隊的「產能」?專業團隊很清楚知道商業目標要達成、軟體品質也要顧及,有些功能為了使用者或避免商業風險更是不能少,團隊的成員因為假期、任務狀況可能來來去去,能力也因著該團隊所處的生命週期有所不同,那麼如何相對比較能預測團隊的產能來做出山盟海誓的承諾,成為了團隊一直可以在回顧改善中提到的課題。
如果我們單純以團隊歷史的 Velocity(速度=團隊每個 sprint 完成的 story points)來定義團隊產能,算是滿暴力的說法,Velocity 可以說是一個落後指標,只是代表這個團隊過去的生命歷程裡,速度快跟慢的狀況可以產出多少點數的結果,更有甚者是 PO 單純拿一個 sprint 總點數來期望團隊多吃一點,那就會造成點數的通貨膨脹,大家開始亂喊數字。
這篇文章是因為後來學了 Kanban method 各種 metric 的意義開始蔓延,自己筆記整理一下~
簡單說結論,產能 是一個多維概念,通常用於描述團隊完成工作的能力,既可以指 Capacity(短期工作量),也可以指 Capability(技能水平)。實務中需要根據上下文,將產能與其他指標(如 Velocity、Throughput、Productivity 等)結合使用,來更精準地評估團隊的運作效率與交付能力。
產能不等於工作速度:
- Velocity(速度)是產能的一種表現,但產能還需考慮技能、資源、瓶頸等多重因素。
產能不是固定值:
- 產能會因為成員變動、技能提升、外部干擾等因素而改變,因此需要動態評估。
產能不是生產力:
- 產能描述的是團隊的「輸出能力」,而生產力則關注「交付價值」。
下面整理各個可能運用來交織定義團隊產能狀況的指標
1. Capacity(容量)
What:
Capacity 是團隊在特定時間內可以投入工作的最大能力,與資源(例如人力、工時、可用性)直接相關。
When:
在 Sprint Planning 中,用 Capacity 計算團隊能承擔的工作量。
例:
一家四口人各有 2 小時掃除時間,總 Capacity 是 8 小時。如果清單上有 10 小時的工作量,工作分配將需要調整。
2. Capability(能力)
What:
Capability 是指團隊完成工作的技能水平、專業性和解決問題的能力,決定了團隊能處理多困難或多複雜的任務。
Capability = capacity + experience + (tech) knowledge
When:
- 團隊有學習成長思維,透過技能培訓和流程改進提升 Capability,讓團隊更高效。
- 使用回顧會議分析能力瓶頸,針對弱點進行改進。
例:
掃除過程中,發現水管壞掉,但需要用水來沖刷,如果有人懂得修水管,整體效率會因為特定技能的提升而增強。
3. Predictability(可預測性)
What:
Predictability 是團隊準確預測工作完成時間和結果的能力。穩定的流程和數據是提升 Predictability 的關鍵。
When:
- 使用 Lead Time 和 Cycle Time 來追蹤流程穩定性。
- 減少工作流中的波動,提升交付的可靠性。
例:
每週家務時,基於過去的經驗,你知道清理廚房需要 1 小時,洗衣服需要 2 小時。這種準確的預測有助於按時完成計劃。
4. Throughput(吞吐量)
What:
Throughput 是指團隊在某段時間內完成的工作項目數量,反映了交付效率。
When:
- 測量團隊每個迭代完成的 User Stories 或任務數量。
- 可視化吞吐量數據(如累積流圖)來追蹤完成進度。
例:
家務清單包含 5 件任務,如果每週只完成 3 件,吞吐量偏低。優化分工後,每週可完成 5 件,Throughput 提升。
5. Productivity(生產力)
What:
Productivity 是指團隊在特定時間內交付的價值,而不僅僅是完成的工作量。
When:
- 評估完成的工作是否對用戶或業務有實際貢獻。
- 將高價值任務優先進行,避免浪費時間在低價值活動上。
生活例子:
即使掃了地、擦了窗,但如果沒人做飯,全家人餓肚子,Productivity 是低的。真正的價值在於完成對生活最重要的事情。
五個概念的整合與比較
五個概念跟 Scrum Team 的關係
雖然說這五個概念是我浮上念頭的項目,實際上的驅動來源是,無論站在哪個立場的角色,我們都想要追求 Predictability 可預測性,來讓想實現的商業目標能有所安排。往往我們可能會想要陷入「控制」的慣性裡去控制每個人能做多少量,當我們意識到「控制」的念頭產生,那就適合想一下「我想控制什麼?」、還是更多的是…我想要「可預測我的未來多一點」,至於要怎麼做,經過上面的整理,通常不會單一只看一個指標,需要每個指標我們都有相對應的具體數據來交叉歸納。而回頭看 Scrum team 中三個角色可分別用下面幾個面向提問自己的聚焦處,三個角色對這些指標的關注各有側重是:
- ScrumMaster 聚焦於提升流程效率和穩定性,支持團隊運作。
- Product Owner 更關注商業價值和需求交付,確保每次交付都有意義。
- Development Team 則專注於技能提升與任務執行,確保高質量的功能交付。
這些角色的協作與平衡,最終實現了 Predictability 和 Productivity 的提升。
下表整理每個角色對於每項指標概念的關注點: