SCRUM節外生枝(一)

2022-02-08 23:39:21 字數 2349 閱讀 2104

每個接觸

scrum

的人,可能很快被

scrum

框架所描繪出的美好景象所吸引,

scrum

所運用的方法和流程不難被理解,很容易被擁戴者拿來試驗或實施。但當到達某個微觀步驟時,一些節外生枝的事情總會發生,

scrum

的聖經裡沒有藥到病除的良方,有的只是過來人親身體驗的痛苦和有關成敗的感慨。

1.牴觸

scrum

的實施者,最先碰到的節外生枝的事情莫過於在實施剛剛開始時(亦或剛剛被提出來討論時)來自團隊內部的牴觸。

mountaingoatsoftware

的創始人

mike cohn

在《succeeding with agile: software development using scrum

》(中譯名《

scrum

敏捷軟體開發》)的第

ii部分第

6章分析了牴觸的方式和原因以及消除這些牴觸的方法。他的分析全面而透徹。在此,我只寫寫我的切身體會。

在我們的

scrum

實踐中,無可避免的也遇到過牴觸。

首先,我們是分布式團隊,中國與美國各有乙個軟體研發團隊,每個團隊都有各自的開發和測試人員。語言、地理與文化的差異,阻礙著主張緊密協作、結對程式設計、面對面交流的

scrum

和極限程式設計的實施,使得有些人(類似

mike cohn

所述懷疑論者)對使用

scrum

存有疑慮。針對這些問題,我們採取的應對措施包括:

1)兩個團隊的互訪。經常性地派技術人員到彼岸訪問,通過學習、培訓、討論、會議等方式,以增加認識、促進交流。

2)英語培訓。聘請美國外教,對團隊成員進行每週

2次,每次

2小時的英語口語培訓,以美國文化和商務交流為主,以增進對對方的了解和減少語言障礙。

3)4)

每人安裝

skype

等軟體,配備耳麥等裝置以便隨時進行遠端交流。

5)使用

code collaborator

進行design review

、code review

、test document review

等,在大洋間,最大限度地靠近結對程式設計所體現的精神。

6)兩個團隊的主管每天發

status update

,所有團隊成員都能看到,每個人都能知道對方團隊正在做什麼,將要做什麼,遇到哪些障礙(

blocks

),解決了哪些我方團隊所遇到的障礙。

通過這些措施,逐步地使兩個團隊的成員感覺到我們是乙個團隊,藉著奧運會「

one world one dream

」的口號,我們提出

「one team

」的精神,並使其深入每個人的內心。

其次,在

scrum

的實施過程中,也有很多細節步驟,被有些人(包括我本人)稱作「形式主義的東西」,遭到抱怨。舉兩個例子:第乙個,

planning poker

,每個人都要參加

planning poker

,但事實往往是,那個最了解這個

user story

如何來實現的人,他所估算的結果跟其他人差距甚大,這使得他不得不向其他人講解這裡面隱藏的玄機,而使其他人靠近他的想法。這有助於其他團隊成員深入了解此

user story

的技術機理,但同時也較費時間。最終由於這些抱怨,我們去掉了這個「遊戲」,直接由最了解的一兩個人直接估算。我不知道,這個經驗在開

retrospective meeting

時應該放進

pros

,還是放進

cons

。第二個被稱為「形式主義」而遭抱怨的東西是

daily standup meeting

。倒不是因為這個會不重要,被抱怨的是:每天開這個會,形式多於內容。改為2天或

3天開一次,似乎並不影響什麼。漸漸地,每日例會改為隔日例會或三日例會,而不開會的日子,組員發給

update

給scrum master

,scrum master

把他們彙總起來,再

email

給每個人,這樣

15分鐘開會時間的變為

5分鐘寫

update加上5

分鐘(或者只要

1分鐘)看彙總的郵件。既然大家沒感覺這樣有什麼不好,調整也許不是壞事。

我覺得,巨集觀上對原則的牴觸,我們應該提出巨集觀的方案來打消牴觸,而微觀上對過程的牴觸,我們可以考慮通過調整來減少思想上的和行動上的矛盾。

(待續……

下一節:在

sprint

中間改變目標

SCRUM節外生枝(五)

上接 scrum節外生枝 四 5.bug!bug!bug!理想中的scrum世界,不需要驗收測試階段,因為每個sprint結束,都會交付乙個可發布的版本。但是,現實中每個sprint結束後都會不斷湧現新的bug。所以 硝煙中的scrum和xp 說 你大概沒法取消驗收測試階段 但正是這sprints之...

SCRUM節外生枝(四)

上接 scrum節外生枝 三 4.太多的外界干擾 很多公司,都面臨乙個問題,在研發新產品的同時,還要應付對舊產品的維護任務。另外,來自市場 客戶服務 人力資源等部門的事情不斷地打斷專注於研發的scrum團隊。比如 市場部門需要技術人員參加展覽展示會做技術後備,客戶服務部門要請技術人員到現場解決在客戶...

SCRUM節外生枝(三)

上接 scrum節外生枝 二 3.乙個程式設計師卡殼了 有了一些工作經驗的程式設計師 也許可以擴充套件到所有的技術人員 都遇到過這樣的情況 在乙個本以為容易的技術實現上遇到未能 到的難關,長時間無法逾越。本來乙個小時能完成的feature,可能因為乙個severe 0 的bug,折騰得一天下來也無法...