GA4

2015年3月27日 星期五

Scrum Master 的日常 - 以 Project GATE 為例


Scrum Master 這個在 Agile Scrum 框架之中的一個角色,常常是大家很關注的話題,但其實這個角色到底做些什麼事情、該由誰擔任,也是很多人很好奇或有滿腹疑惑的地方,常常會在社群分享的場合聽到下面的疑問:

  • Scrum Master這個角色到底做些什麼?
  • 該由什麼樣技能背景的人來擔任?
  • 怎麼決定誰來擔任這個角色的?
  • 這個角色可是 開發成員 或 部門主管 兼任一下嗎?

    (特別是許多剛接觸scrum概念的人,或有想要進行敏捷轉型的單位,特別會有這種問題)  

網路上可以蒐尋找到一堆scrum master的職責、定義,但Scrum Master的活動,到底像是什麼樣子,每天做些什麼,這些工作會花費這個角色多少時間,網路上的分享卻很少。

有些剛初接觸Agile Scrum的人,覺得這Scrum Master好像團隊內隨便抓個人來做就行,但在網路上爬了文之後,看到這個角色很多的定義與執掌,又覺得這角色包山包海,又能溝通又懂流程,簡直是要找個神人來才有辦法進行。

也因此,籍由本文先就我個人在Project GATE這個專案中,身為一個Scrum Master的角色下的工作項目以及其細節展開,藉此也讓有興趣的人透過生活照圖文了解一下,並從中反思,「為什麼 Scrum Master 由一個不負責工作開發的人來負責」、「Scrum Master需要具備什麼樣的特質及技能」





Part 1 - Sprint 進行中的日常工作 (Sprint Duty)

主持各類scrum活動會議

planning sum up 會議

  • 前置整理實際要開發的條目
  • 閱讀並檢查每一個被團隊挑選的user story
    • 是否有設定iteration / point(是否有輸入) / task時數(檢查時數是否合理)
    • task scope與 story描述是否合理
  • 預告本sprint預計會進行的會議並booking meeting時間
  • 主持會議


daily scrum

  • 統計消化時數 (實體看版)
  • 更新圖表 (實體看版 & 電子化資料)
    • burn-down, bug report, crash status
  • Milestone 時間軸移動

附圖1. Scrum Master在旁邊拿著手機,用著計算機app來算著大家的消化時數

附圖2. Scrum Master更新數據於實體看板上


polish time

  • 預告Polish活動
  • 主持polish time 並主持總結

    (註: polish time 是全team於sprint review前兩天,不分身份角色,一起自食狗食的時刻,讓大家可以透過實際使用去感受成品並發言提出見解)


review meeting

  • 會前確認各review版本狀態
  • 安排各小組的展示時間與順序
  • 主持並進行會議紀錄,視情況決定在自省會議是否討論
  • 引導進行檢閱電子化專案追蹤系統的狀態,確保sprint的結束狀態是同步及透明的。
  • 品質報告狀態
附圖3. Scrum Master 於 review meeting 主持議程


自省retrospective meeting

  • 提前整理前幾次會議的結論。
  • 主持會議並整理要點 (real time processing)。
  • 帶領 team member討論各種情境的成因、行動方案 或需另外舉辦會議討論。
  • 提醒refinement meeting booking。
       附圖4. 有幾次sprint failed,Scrum Master則介紹了 5-whys + 魚骨圖 的要因分析的方法,然後帶著團隊進行 sprint failed 的團隊自我檢討。


Part 2 - 不定期發生 (Executive Duty)

Project Duty:

  • 檢閱專案的中長期報表(cumulative flow, bug statistic, 各種leading/cycle time)並與團隊溝通解決其中的問題。
  • 蒐集並更新release roadmap
  • 主持release planning 
  • 敏捷式召募規畫及執行
  • 敏捷式協作空間的規畫與討論
  • 參與Product Owners會議
  • 參與Stakeholder會議
  • 新進成員的Agile Training 
附圖5-1. offsite meeting 的場勘,提前確認地點是否合宜並一起規劃活動。

附圖 5-2. offsite meeting的場外活動,scrum master跟著PO一起場勘,因為要在戶外實際使用自己開發的app,所以途中一直要以3G iPad不斷的確認訊號強度狀況,並規劃出合宜的活動(或藉機讓團隊體會什麼情境)。

附圖 5-3. 參與offsite meeting 的活動設計,也包含了許多引導團隊思考及討論、分類、規劃,以及創意提案競賽等活動(所有的活動其實都隱含著許多的敏捷、團隊精神及工法的引導)

Personal Duty:

  • 引導團隊形成共識及規範。
  • 確保並引導團隊成員按照團隊的規範與共識在進行。
  • 觀察團隊平常的協作及活動,並紀錄這些事件與現象。
  • 參與成員的績效考核或新人考核,並提供相關參考資訊。
  • 閱讀並消化敏捷相關議題的文獻、找尋合適的解決方案去解決團隊的問題。
  • 檢閱現有的開發流程、引導優化並確保成員遵守。
  • 360度協作與溝通
附圖6. 與單位主管們一起規劃出來的敏捷團隊協作空間。而Scrum Master 平時的位子位在看板區前,並且是一個方便做觀察者的樞鈕區(互動熱點區附近,可不動聲色的觀察中)




這兩部份所花的時間比例如下:

註: 時間參考的部份,是2014年四~五月間,透過Toggl這個 Time Tracking tool 記錄了一些Scrum Master的流水帳,所整理出來的。不過,這個比例其實並沒有把下班後投入的自修時間算在內。而且這個比例也隨著團隊的當時狀況,都可能有也都會有大比例的變動。



而Scrum Master最忙的時刻,其實是這些會議的前置準備期及主持這些會議。

而成員在開發的期間,Scrum Master做的事情其實就很多元跟鎖碎了,也因此,確保自身的敏捷化、適應性 對Scrum Master而言異常重要。大家可以想像一下,只要開發團隊中有出現了某些跡象,Scrum Master的天線就要對準這些發生點進行觀察,自己正在做的事情有時就需要停下來了,甚至必要時當下就要進行排解。

當然有些巷子內的看倌們可能會發現,我怎麼沒提到Scrum裡面一定會有的 planning meeting 與 refinement meeting ? 怎麼這個team中的scrum master從裡面人間蒸發了?

以結論而言,主要是因為近期的團隊與project scope增長,這兩個events 已經演進到是 multiple tracks同時進行,一方面是我沒有練分身術,一方面是成員也都已經都能掌握精神,所以我這個Scrum Master就變成只是列席,團隊有需要時再出席,只進行場外追蹤。




大家可以再回頭想想:

    Scrum Master這個角色該由什麼樣子技能背景的人來擔任? 

延伸思考:

    是 Scrum Master?   還是 Agile Coach?  


---
延伸閱讀:



2015年1月1日 星期四

精實軟體度量 讀後感

書名: 精實軟體度量
作者: 張松
審校: Teddy Chen
( 博客來網址參考 http://www.books.com.tw/products/0010624602 )


因緣際會之下,這本書終於在前一陣子入手。這兩周花了不少零碎的時間加緊把他閱讀完,將一些小心得跟佳言整理一下,也跟大家分享一下:

與 審校者 Teddy Chen 相似,我個人在內心上也是屬於 "對於「度量」沒有特別的好感" 的人。通常度量都是伴隨著 KPI 下的產物,團隊只注重一些數字  KPI 的狀況下,多數人其實會因此而變得價值觀扭曲,或變得不那麼在意一些具有 美德 的價值觀。而且我們也看過太多、聽過 一些過於注重 KPI 而將整個組職弄的腥風血雨,進而走上衰敗的案例。

但自己身為目前團隊的 Agile Coach,若沒有任何的度量方式做為依據,進而來支持著自己對團隊的觀點的論述,進而採取行動,也會覺得不夠 "有所本" 。也因此這本書其實之所以會吸引我,也是因為 Teddy 在序中所言 "這也許是一本那麼不會讓人討厭,而又與度量有關的書"。

而在讀完之後,對於這個書的評價跟感想則是:

對於平常就有大量的在閱讀敏捷社群文章以及實際經驗的人來說,應該會覺得這本書只是把這些知識以一個有系統的方式組織起來的一本經驗談。不過這其實也可以歸因為:精實(LEAN)的度量方法原本就是以輕量、有效為前題,所以並不會有太艱澀難懂的模型。

故這本書的價值會隨讀者對於這些內容的熟悉程度有很大不同的收獲程度,但對於敏捷方法的 組織架構、有哪些指標可以度量、如何建立有效的學習性組織 等議題涉獵還不深的人,或還沒有什麼想法的人,透過閱讀這本書,我想可以達到很不錯的起頭緒的作用。


自己看完後特別有感觸的佳言則是:

(1) page 146 「簡單的度量資料並不能將我們直接引向結論,更多時候是幫助我們提出有價值的問題,來發覺更多的資訊,以做出判斷,產生行動」
 page 264,265  團隊會排斥度量的其中一個關鍵因素是 "缺乏回饋"。「對於度量曝露的問題沒有行動,或是行動沒有結果,度量體系就形同虛設,大家也就沒有興趣關注了」

=> 直白一點而言就是: 沒採取有效行動去解決,度量的結果就也只是曝險而已,沒能產生更多價值

(2) page 157 在提到 任務中斷 或 context switch 問題的章節中: 「中斷會帶來許多負面的效果,但一味地拒絕中斷可能也會帶來問題,因此我們需要區別 中斷(Interrupt) 交流(Interaction)。交流可能導致團隊成員正在進行中的任務產生中斷,但兩相比較之下,交流所帶來的學習、創新、溝通的好處可能會大於中斷帶來的壞處」

=> 如何成功 「降低 Interrupt,增加 Interaction」,一直是敏捷團隊能否有辦法成功的關鍵。但產品所成員對於什麼是 Interrupt,什麼是Interaction的認知,恐怕就會有很大意見分岐了。也因此,"一個團隊"、"同理心" 很重要。

(3) page 203 「只有激發技術卓越追求的組織氛圍,才是持續促使員工技術提昇能力的根本」

=> 心中OS: 這一點好難阿~~~