回顧會議(retrospective)中最容易被忽視的一個環節
很長時間沒有更新部落格了,一直在上海,上星期剛從客戶現場回Office。在很多剛剛開始實踐Agile的團隊中,有這麼一種想法:“Retrospective太花費時間了,所有成員在那裡開上一兩個小時的會議。在會議上,要麼大家發發牢騷,要麼專案經理講講話,強調一下後續工作中的注意事項。還不如回寫座位上寫程式碼來得直接呢。”
其實,如果有這樣的認識,說明團隊還不成熟。如果沒能發揮這一實踐的重要作用,那麼可能比"不會做TDD"有更嚴重的後果。
什麼是 Retrospective ?
What is a retrospective?
在敏捷開發的上下文中,Retrospective翻譯成中文就是回顧會議。回顧會議可以鼓舞士氣,發現改進點,使團隊在接下來的迭代或 Release更有效且高效地交付價值,一般在每個迭代或release之後進行。
Retrospective (from Latin retrospectare, “look back”) generally means to take a look back at events that already have taken place.
In the software world , a retrospective is a meeting held with a project team at the end of a project or process to discuss what was successful about the project, what could be improved, and how to incorporate the successes and improvements in future projects.
In the agile software world , a retrospective is a meeting held by the project team at the end of every iteration/sprint to discuss what we learnt as a team, what we can improve as a team and plan the future iteration/sprint based on this learning.
Safety check(安全檢查)──回顧會議中最容易被忽視的一個環節
什麼是安全檢查?為了達到回顧會議的目的和積極效果,會議組織者有必要在會議開始之前做一次“檢查”,確保團隊所有成員真正認為在這個會議上的任何發言都不會影響到個人聲譽與績效,不會受到鄙視等,即“在這個會議上發言是安全的”。
如何做Safety check?
做Safety check有很多種方法,其中一種就是:
1 在會議開始之前,會議組織者可以分別與團隊成員溝通,講清關於回顧會議的目標與過程。
2 將安全性從“願意暢所欲言”到“想保持低調”分成幾個不同的等級。在會議剛一開始,由所有團隊成員將其自身所處的等級寫在一張紙片上,摺好交給會議組織者。由會議組織者統一計算各等級所得的票數。
3 如果等級都比較高的話,回顧會議可以繼續開始。如果有較低的等級,會議組織者可以考慮取消本次會議,再定時間開會,或者採納一些活動,讓大家放鬆下來,直到安全等級都比較高以後,再進行會議。
對於一個成熟的Agile團隊來說,一段時間後做一次Safety check是非常必要的。對於一個不成熟的Agile團隊,最好每次都做Safety check.
另外,牢記“不要把Safety check做成形式主義,請想各種辦法達到Safety Check的目的”。
至於“每次回顧會議到底應該花多長時間?”這個問題,很難給出一個標準。不過,一般來說,如果每個迭代時間都比較短(比如一個星期),可能只花15分鐘就夠了,因為大家很容易回想起剛過去的五天裡都做了什麼。如果每個迭代時間較長(比如一個月),可能就需要兩個小時,甚至更多一些,因為大家要回想一個月中都做了什麼,而且對於同一件事,每個人所記憶的內容可能也不相同,討論之前的同步過程還需要時間 ;D。