Scrum Master與Project Manager的區別
一個傳統的Project Manager與Scrum Master到底有什麼區別?很多企業在實踐敏捷開發時,經常會把Project Manager,Scrum Master和Team Leader混淆起來,甚至在一些公司會讓同一個人同時承擔以上兩種不同的角色。這些公司認為沒有必要明確的劃分Project Manager和Scrum Master,他們的職責都是為專案成功交付負責。我所經歷過得一個組織中,就出現過兩種不同的問題:
組織的開發方法論轉型之後,曾經優秀的Project Manager很難適應Scrum Master的角色;儘管進行了Scrum培訓和實踐,但是這位所謂的Scrum Master實際上常常仍然以Project Manager的角色和工作方法開展工作,結果導致Scrum團隊眾多的人員離職。離職的原因很簡單:不適應團隊的管理方式;時常搞不清楚自己處於一個什麼樣的團隊中,甚至有時候都不知道該如何工作了。
Product Owner與Scrum Master無法一起工作。實際上Scrum Master同時還承擔Dev. Leader的角色,領導一個6人的開發團隊在工作。開發過程中,這位Scrum Master有超過10年的軟體開發和專案管理經驗,曾經也是一位優秀的軟體開發工程師,編碼能力和處理專案難題的能力極強;但是在領導開發團隊工作時,表現出的控制慾極強,幾乎是“家長式”的作風,團隊成員都必須聽他的指揮。最終的結果是,Scrum開發團隊工作效率不高,團隊成員之間合作出現問題,相互推諉工作任務,團隊氣氛緊張而壓抑。
其實以上問題是很多從傳統開發團隊向敏捷開發團隊轉型過程中都會遇到的問題,如果處理不好,最終結果之一就是人員流失。
那麼問題究竟出現在哪裡?
1. 角色衝突
儘管Scrum方法論僅僅提供了一個框架,但是Scrum方法論明確的劃分了一個Scrum團隊中的三個不同的角色:Product Owner,Scrum Master和Scrum開發團隊。
在這裡其實沒有所謂的Project Manager。及時在組織中存在Project Manager的角色,但它也絕不應該出現在Scrum團隊中。
一名習慣於傳統方法的Project Manager一定是一名能夠勝任的Scrum Master嗎?答案是“不一定”。現實中,那些“身經百戰”的Project Manager習慣了傳統的專案管理方式,本質上是專案的“微管理”,動輒就會搬出“百寶箱”中的各種武器:過程管理,過程控制,PMP的理論等等。但是Scrum依賴於團隊的自組織和自我管理。團隊成員從上到下都深知Scrum過程框架的精髓,團隊成員之間有充分的信任和自我管理能力。
角色背後是什麼?是職責。
那麼在一個職責明確的Scrum團隊中,Scrum Master到底負責什麼?第一責任就是維護Scrum過程框架中的規則和過程得以實施。但是並不是僅僅停留在表面上。例如:Scrum Daily Meeting並不是在每天早晨開始工作之前,團隊成員站立在那裡,討論15-20分鐘的工作而已;而是在一個相對固定的時間,所有團隊成員在一起分享昨天的工作進度,今天的工作計劃,以及Scrum團隊遇到的問題。這個“相對固定的時間”也是由團隊來決定在什麼時間進行Scrum Daily Meeting,而不是由一個人來決定的時間。當然,很多Scrum團隊習慣於在早晨上班之後20分鐘之內進行,理由是這是一天工作的開始,這個時間更容易被接受。但是如果你所在的公司是一個實行彈性工作制的公司呢?大家可以在早晨8:00至10:00之間到達公司上班。作為Scrum Master你應該如何處理這個問題呢?或許這對你來說是一項挑戰。(答案其實很容易,及解決這個問題其實很容易。)
傳統意義上來說,專案經理扮演的是領導者、決策者、計劃者的角色,他要管理專案和團隊,是負責達成專案商業目標的人。Scrum Master更側重於教練和引導者,是設立在專案和客戶之間的角色。Scrum Master不管理實際工作的團隊;反而,他會協助產品負責人,輔導團隊,確保專案遵循Scrum流程。Scrum Master只負責Scrum流程能夠正確、持續的實施,發揮出它的最大效用。
2. 管理的“控制慾”,即權力。
很多做慣了Project Manager的專案經理們認為自己在公司屬於中層管理者。無論從年齡還是資歷來說,他們都自認為自己所承擔的是“管理者”的角色。因為他們時常在談論“專案管理”,“人員管理”,“時間管理”,“成本管理”,“資源管理”等等。他們本質上表現出來了很強的“控制慾”,他們希望擁有更多的權力。這一點其實與組織文化相關。
但是在Scrum團隊中,Scrum Master真的有那麼大的“權力”嗎?一個很簡單的問題,Scrum Master能夠為Scrum團隊的開發者指派具體的開發任務嗎?例如:張三,你必須在明天上午10點之前完成訂單管理功能;李四,你需要在明天下班前完成線上支付功能中信用卡支付功能的開發和單元測試。
如果你遇到這樣的Scrum Master,你就可以直接和這個Scrum團隊道別了。
有時候真的不明白,為什麼很多公司在選拔和招聘Scrum Master時,列出了那麼一大堆崗位職責和技能要求,希望Scrum Master是一名“十項全能”型人才。