Daily Scrum: 只是報告現狀而已嗎?
Daily Scrum: Merely a status report?
http://www.scrumalliance.org/articles/140-daily-scrum-merely-a-status-report
By: Vinay Krishna, CSM
簡介
在Scrum中最重要的, 最關鍵的一個實務, 就是daily scrum. 在sprint內的每天都要舉行, 並且整個團隊都要參加.
在daily scrum進行的時候, 每個人要回答以下三個問題:
1. What’s been accomplished since the last meeting?
2. What’s going to be done before the next meeting?
3. What obstacles are in the way?
通常很多人會把daily scrum視為是狀態的回報, 因此並不是很認真的看待它, 最後導致於不好的結果產生.
這不是只是一個狀態更新的會議, 用來讓project manager 或是team lead收集目前團隊狀態的資訊, 或者是知道誰進度落後. 相反地, 這個會議的目的, 是使每個團隊成員信守他的承諾, 幫助所有成員知道承諾的重要性, 以及他的承諾的對象是團隊中的其他成員.(不是manager而已). 這各會議不是用來 problem-solving or issue resolution. Issue提出後, 在daily scrum後會有另一個分組會議來討論. Daily scrum的時間, 應該不要超過15分鐘.
它要求的是團隊成員的紀律,而不是在詳細討論你所遇到的障礙, 只是確保其他人被通知到. 如果有需要的話, 在找有關的人, 再個別去開個會討論.
1. 意義
這裡大家可能會有問題要問: 為什麼只需要回答這三個問題, 而不是討論what’s new?
原因如下:
a. High visibility of progress
這是讓大家, 可以每天在同一個地方, 知道團隊的progres, 以及很容易了解他們的貢獻是什麼
b. Improve estimation
藉由了解大家昨天所完成的進度, 因此團隊成員可以知道, 他們自己所評估的事情的準確性為何, 漸漸地, 他們可以改善他們評估能力
c. Self-organization
團隊成員決定他們每日的工作內容, 他們需要對sprint所要做的需求負責任. 這會議會幫助成員了解他們每日的責任為何, 有助於團隊變成一個self-organization. 因此團隊成員會慢慢地變得成熟, 願意地去承諾一些事情, 或是有效率地處理他們所遇到的困難.
d. Increase the quality
每日的溝通將有助於refactor他們的工作, 並且減少因為要排除障礙所需要花的時間. 它會幫你建立相關的知識, 以及很快重新再利用這些知識.
2. 常見的問題
以下是常見的問題, 會對daily scrum帶來負面的影響:
a. Lack of a clear understanding of Scrum practices
如果團隊對於scrum的實務不是很清楚, 這將會使得daily scrum執行起來不是很正確, 會導致要花較多的時間才能完成. 時間一久之後, 團隊會失去它的耐性, 最後導致變成只是一個status meeting, 並且頻率從每天變成每週.
b. Old mindset/habit
這是很常見的障礙. 在傳統的專案,團隊成員需要向PM或是Team lead (不是scrum master)來做status report. 因此在daily scrum時, 他們會像以前一樣的方式來報告他們所做的事情. 因此會比較是generic或是high level的答案, 而不是仔細到每件task上面.
c. Faced critical problem
當有成員面臨了一些關鍵的問題, 並且嚴重影響到他目前或是將來的工作. 在這種狀況時, 大多數的人會開始解釋這個事情, 因此而浪費許多時間
d. Communication problem
有時候人們不擅長去解釋或簡化技術性的問題, 這是另一種溝通的問題
e. Information about barriers shapes the discussion
當有障礙發生時, 很容易吸引人們去討論它, 因此這會將daily scrum變成討論會, 其它的人也會因此而慢慢地加入這個討論中
f. Start requirement/design clarification/discussion
人們很容易在daily scrum中, 討論設計或是釐清需求, 因為他們認為這是一個好的時機去做這樣的事情, 並且也花不少時間做這樣的事情.
g. Team is too big
如果團隊太大, 會需要較多的時間去完成daily scrum. 在這種狀況, 人們會抱怨所討論的東西和他們沒有關係, 並且他們將會希望能及早發言, 以便能夠及早離席.
3. 如何處理這些問題
以下是一些方法來處理這些問題
a. Proper team training on Scrum
規劃正式的訓練課程給團隊成員, 或是提供偶發性, 小型的scrum 介紹課程給團隊
b. Reiterate the three questions
有需要的話, 多次重申這三個問題的重要性給團隊, 直到大家真正了解它的意圖為止
c. Avoid a lengthy technical discussion
如果有人試圖解釋一些技術性的問題, 或是無意中形成技術性話題的討論, Scrum master必須停止他們, 並且要求之後offline再討論. 只能著重於目前這個sprint中task的狀況.
d. Scrum of Scrums
如果是一個很大的團隊, 可以考慮使用scrum of scrums. 對於大型或是分散式團隊, 這是非常有效率的方法
結論
Daily Scrum有助於提高團隊成員對團隊的承諾, 以及團隊的成熟度, 和self organization的程度. 最終, 它會使團隊真正變成一個self organized 的team
留言列表