Scrum and XP from the Trenches - How we do Scrum 
Henrik Kniberg
http://www.crisp.se/ScrumAndXpFromTheTrenches.html


8. 我們怎麼進行每日會議

我們每日會議都按照書中進行. 它們每天會在同一個地方, 同一時間進行. 在剛開始的時候, 我們都是在一間單獨的房間中舉行sprint規劃會議(在那個時候我們還使用電子板的sprint backlogs). 然而, 現在我們都在任務板前面舉行每日會議, 沒有什麼能比他有更好的效果.

我們通常都是站著舉行會議, 因為它可降低會議時間超過15分鐘的風險.


我們如何更新任務板

我們通常在每日會議中更新任務板. 每一個人都會說明他昨天做了什麼, 今天要做什麼, 然後一邊移動任務板上的便利貼. 如果他有提到一個沒有規劃到的項目, 他會加一張便利貼到任務版上面. 如果他需要更新時間的估算, 他會寫新的時間估算到新的便利貼上面, 放到任務板上, 然後拿掉舊的. 有時候scrum master會在大家說話的時候, 同時更新這些便利貼. 

有些團隊會規定, 每個人需要在會議之前更新任務板上的東西. 這個方法也不錯. 只要決定好規則後, 堅持執行就可以.

不管你用什麼形式存放你的sprint backlog, 試圖讓整個團隊, 一起保持sprint backlog的內容是及時更新的 我們曾試過讓scrum master扮演sprint backlog的唯一維護者, 因此他必須每天詢問大家, 各自剩餘的時間估算為何. 這個方法的缺點是:

# Scrum master花太多時間在管理工作上, 而不是對團隊提供支持, 和消除他們障礙.
# 團隊的成員不再關心sprint backlog的狀態, 所以他們不再知道sprint的狀態. 缺少回饋, 將會降低整體的敏捷性和團隊專注的程度.

如果sprint backlog設計的很好, 團隊中的每個人都應該很容易去更新它.

在每日會議一結束後, 要有人算出所有剩餘時間估算的總和, 然後在sprint burndown chart上畫上一個新的點.



處理遲到的傢伙

有些團隊會準備一個存錢筒. 當你遲到時, 即使只有遲到一分鐘, 你也要投錢到筒子裡頭. 沒有人會關心為什麼. 如果你在會議前打電話, 說你會晚一點到, 你也是要投錢.

除非你有很好的理由, 像是預約去看醫生, 或是你自己的婚禮等等, 否則是無法倖免.

在筒中的錢, 可以被使用在團隊中的一些活動, 像是我們會在遊戲之夜, 用這些錢買些漢堡來吃 :o)

這個方法效果不錯, 但是這只有在有人常常遲到的團隊才需要, 有些團隊不需要這樣的東西

處理"我不知道今天要做什麼"的狀況

有時候, 有人會說"昨天我做了這個那個, 但是今天不知道該做什麼", 這種狀況並不常見. 那現在該怎麼辦?

讓我們假設Joe和Lisa兩個人都不知道今天要做什麼.
 
如果我是scrum master, 我會讓下個人繼續講下去, 但是會先記起來哪個人沒有事做. 之後每個人都說完後, 我會和團隊從上到下檢視一下任務板, 確認每件事已經同步, 也就是確保每個人都知道每個項目所代表的意思是什麼,等等. 然後我會請人加上更多的便利貼. 接下來我會跟那些覺得沒事做的人說: "現在我們已經看過任務板, 你們是否對於今天要做的事有些概念呢?", 我希望他們會知道了

如果還沒, 我會考慮是否有採用搭檔編程(pair programming)的機會. 假設Niklas將要去實做後端系統的使用者管理系統的GUI. 我會有禮貌地建議, Joe和Lisa可能可以和Niklas去撘檔編程. 通常這都會有效果.

要是這樣還不行, 應該會採取下面的技巧:
Scrum master: "好的, 誰要展示有Beta水準的這個版本給我們看一下?" (假設這是sprint的目標)
團隊: 感到困惑, 並保持沉默
Scrum master: "我們還沒有做完嗎?"
團隊: "嗯...還沒"
Scrum master: "哦, 該死, 為什麼還沒? 還剩什麼?"
團隊: "我們還沒有一個測試的伺服器, 此外建構的腳本(build script)也有問題"
Scrum master: "哈" (在任務的牆壁上加上兩張便利貼) "Joe和Lisa, 你們今天可以幫我們什麼呢?"
Joe: "哦....我想我可以試著去找找有沒有測試的伺服器"
Lisa: ".....我可以試著去解決建構腳本的問題"

如果你很幸運的話, 會有某個人真的展示出你所要求的beta水準的版本給你看, 那真的是太好了. 你已經達到sprint的目標. 但是如果你只做了一半呢? 很簡單, 先恭喜團隊做的不錯. 然後從任務板中右下角的"next"區域, 找出一到兩個故事, 放到左邊"not checked out"的欄位中. 然後重新開始每日會議, 通知產品負責人, 你已經加了一些項目到這個sprint中.

但是如果團隊還沒有達到目標, Joe和Lisa仍然拒絕去做些有用的工作. 我通常會考慮以下幾種方法(沒有一種是令人愉快的, 但是已經是最後的手段了):
# 羞辱的方法: "如果你不知道你怎樣可以幫助團隊, 我建議你回家去吧, 或是看些書, 或是怎樣都行. 要不坐在旁邊, 等到有人需要幫忙就過去幫忙"
# 保守的方法: 隨便指派一個任務給他們
# 同事間施壓的方法: 告訴他們: "Joe和Lisa, 放輕鬆來選擇, 我們大家站在這裡等你, 直到你們找出可以幫助我們達成目標的工作為止"
# 奴役的方法: 告訴他們: "你們可以幫忙做一些雜役,像是倒咖啡, 幫人按摩, 清理垃圾, 煮午餐, 或是一些我們可能要你們幫忙的事"(你可能很驚訝, 一聽到這裡, Joe和Lisa在一瞬間就找出要做的技術性任務:o)

如果有人經常逼得你這樣做, 你應該要把她叫到一旁, 給他一些指導. 如果這個問題持續存在, 你需要評估一下是否這個人對你的團隊很重要

如果他不是太重要, 試圖把他從你的團隊中移走.

如果他很重要, 就試圖讓他和別人搭檔, 讓那個人當他的"牧羊者". Joe可能是一個優秀的開發人員和架構師, 只是他比較需要讓其他人告訴他該做什麼. 好的, 給Niklas當Joe的牧羊者, 或者你自己來做這件事. 如果Joe 在你的團隊是非常重要, 那這樣做非常值得. 我們有過這樣的例子, 多少有點效果

arrow
arrow
    全站熱搜

    kojenchieh 發表在 痞客邦 留言(0) 人氣()