多圖讀懂為何敏捷開發需要Scrum Master

掃盲Scrum

敏捷開發(Agile Development)是一種以人為核心、迭代、循序漸進的開發方法。Scrum和XP就是敏捷開發的具體方式。

Scrum的英文意思是橄欖球運動的一個專業術語,表示 「爭球」的動作;把一個開發流程的名字取名為Scrum,我想你一定能想像出你的開發團隊在開發一個項目時,大家像打橄欖球一樣迅速、富有戰鬥激情、人人你爭我搶地完成它,你一定會感到非常興奮的。而Scrum就是這樣的一個開發流程,運用該流程,你就能看到你團隊高效的工作。

Scrum團隊中三個關鍵角色

先了解下Scrum團隊中三個關鍵角色:Scrum Master,Scrum Product Owner和Scrum開發團隊

Scrum關鍵角色一:產品負責人 Product Owner

---確保Team做正確的事

產品負責人負責將產品和開發團隊工作的價值最大化,主要抓手就是Scrum工件中的產品Backlog。通過明晰產品Backlog條目、確定條目優先順序,產品負責人實現對產品Backlog的使用效果及產品本身負責。

Scrum團隊只有一個產品負責人,但並不是所有的事情都由產品負責人一個人負責。產品負責人通常是離項目的「業務面」最近的人,一般由組織指派來負責「把這個產品做出來」,而且通常期望他以最好的工作成果來滿足所有的利益干係人。

要做到這些,產品負責人需要管理產品待辦事項列表,並確保產品待辦事項列表和它的進度可見。產品負責人通過選擇開發團隊下一步應該做什麼以及要推遲什麼,來權衡範圍和進度,以得到儘可能好的產品。

Scrum關鍵角色二:開發團隊 Team

---負責產品需求實現

Scrum開發團隊不同成員可以擁有不同的專長和專攻領域,但Scrum開發團隊作為一個整體共同負責並完成產品開發。開發團隊的規模是靈活可變的,小可到足以保持敏捷性、大可到足以滿足產品開發需要,但通常在3-9人之間。

開發團隊成員需要以自組織的方式實現Sprint目標,根據Sprint的計劃完成產品增量。

產品負責人準備一個有序的代辦事項列表。開發團隊成員共同預測在一個Sprint里能完成的工作量,並決定如何實現。

Scrum關鍵角色三:Scrum Master

---確保Team正確地做事

ScrumMaster是一個「僕人型領導」,幫助Scrum團隊遵守他們的流程。ScrumMaster必須對Scrum框架有很好的理解並且有能力培訓其他人去了解Scrum的微妙之處。

ScrumMaster幫助產品負責人理解如何創建和維護產品待辦事項列表(Product Backlog)。為了確保團隊在Sprint結束時能夠完成工作,他和開發團隊一起發現並實施技術實踐。他和整個Scrum團隊一起來演進完成的定義。

作為Scrum團隊的教練,ScrumMaster幫助團隊執行Scrum的流程。他幫助團隊更好地合作,幫助他們理解Scrum框架,並且保護他們遠離內部和外部干擾。他可以引導會議,幫助Scrum團隊保持正確的方向,提高效率,並提升能力。

為何Scrum Master如此重要?

ScrumMaster的職責簡單的說可以總結為: 確保team 按照scrum的方式運行,team的coach,幫助team更好的工作,process的owner,能夠在team和PO之間平衡。移除項目進度的障礙,保護團隊成員被過度commit等。

具體的來說,ScrumMaster的職責到底是什麼呢?

1)ScrumMaster的首要職責就是教練,對該怎麼踢負責的教練,不是為進幾個球負責的教練

TA幫助PO,團隊理解如何應用Scrum開發方式工作。比如PO如何梳理產品列表,團隊如何做故事點的估算,Scrum的5個活動該怎麼做。TA是過程上的權威,工作是否做的下來,TA說不上話,但是工作該如何遵守Scrum的流程,ScrumMaster說了算。

ScrumMaster是教練,並且還是服務型的教練。TA並不去要求團隊們要做到什麼(注意我是說的做到什麼,而不是依照什麼流程做)。TA應該去問團隊,我怎樣能幫助團隊工作得更有效。

2)ScrumMaster要充當團隊的保護傘

TA要代表團隊給管理層彙報,TA也會有原則的把管理層的信息傳達到團隊。確保團隊能集中精力完成衝刺。經理對團隊成員安排額外任務時候,PO想給團隊增加Sprint Backlog的時候,ScrumMaster都會充當保護傘,有原則的把這些干擾屏蔽在團隊之外。

3)ScrumMaster是清除障礙的人

TA要確保創造team能夠順利工作的條件,掃除各種障礙比如團隊對外部的硬體或者軟體依賴;比如需要其他團隊的支持;需要工具的支持等

4)ScrumMaster溝通連接的橋樑

經常說TA是牧羊犬。牧羊犬的作用一是讓羊有秩序的行進,不能掉隊。牧羊犬還有另一個作用不是和狼打架,通常也是打不贏的。這個作用是叫,如果遇到狼,大叫把人類叫過來打狼。在這點上,ScrumMaster就是團隊的代言人,團隊遇到問題,ScrumMaster要負責大部分的對外溝通工作。

5) ScrumMaster是變革代言人

TA要促成組織內部人員轉變思維,迎接敏捷開發方式。TA需要見多識廣,引入變革改變組織,讓組織運行更加高效。比如,改變項目經理過去安排任務的習慣;改變團隊成員等著分配任務習慣;引進新的測試工具;推進更多的敏捷實踐到團隊,比如TDD。

具體職責如下圖:

ScrumMaster是沒有被授予實實在在權利的角色。這些變革的推動,更多的是靠TA的溝通技巧,比如探索式提問;耐心引導,讓團隊發現問題;勇敢對外部不合理的安排說不;等等這都對ScrumMaster提出更高的要求。

一般人很難當好Scrum Master。Scrum Master實際上是一個複合型人才,其實產品經理,項目經理,team leader等都不一定能夠成為一名好的Scrum Master。那麼都需要什麼技能才能做一個好的Scrum Master呢?

具體參考下圖:

這樣的人才,在團隊中應該是很重要的位置。夠起到足夠重要的作用來幫助團隊達成目標,推動團隊成員的發展和技能提升,同時幫助組織來實現願景。

所以這也是Scrum框架中,為什麼Scrum Master如此重要的原因。現在很多企業轉型的時候,往往對Scrum Master賦予了很高的期望,希望他們能夠幫助組織轉型成功,保證團隊高效交付,提升團隊成員技能水平等。

在整個組織中,Scrum Master都是神一般的存在。


推薦閱讀:

TAG:Scrum | 敏捷開發 | 專家 |