Scrum敏捷開發 實際執行遇到的問題和方案(研二)
Scrum執行規則
1. 每個小組3-6人,儘量做到高低年級,男女搭配,讓大家可以接觸到不同型別的合作伙伴。
2. 每個sprint週期開始之前,一定要保證即將開始的sprint週期有足夠多的已經準備好的任務(足夠多:1-1.5個週期的任務量;已準備好(滿足如下任意條件):a)已形成測試用例、確定好優先順序和story points數目並通過老師的審批;b)修復bug類的任務要描述bug的現象,對應的svn的版本號;c)整合類任務要描述整合的預期結果)。
3. 在討論任務的story points時候,務必做到以事實為依據,不能因為這個任務可能要交給某個基礎比較差的同學做,就人為擡高該任務的story points數目。
4. 任務的提出和解決方案的形成,最好能在全組討論中通過,保證全組人都知道該任務的存在,以及解決方案被全組人充分討論過。避免任務的重複執行,或者設計出不好的解決方案。
5. 對於全組討論不出解決方案的任務,可以指定專人花額外更多的時間去研究制定解決方案(制定解決方案可以作為一個單獨任務),然後全組討論通過或否決該解決方案;不能直接把討論不出結果的任務直接交由某人全權負責設計和實現。
6. 在確定了任務的解決方案後,才由全組確定storypoints的數目。
7. 對於非修復bug類和整合類的任務,堅持測試用例/解決方案的提出者和任務的實現者分開的原則,保證一個任務至少有兩個人可以知道實現細節,且在實現過程中,至少有人可以討論實現細節問題。
8. 在經過全組確定了技術解決方案和story points數目之後,才決定任務的具體執行人,避免在任務的討論和設計階段就私自定下執行人,導致其他組員在任務的相關討論中事不關己高高掛起。
9. 任務執行者的確定,建議採取如下兩種方式之一:a)在進行story points表決時,若給出最低story points的組員堅持自己的意見,該組員可直接成為該任務的執行者;b)按照story points的數目,將任務分成難度高、中、低三檔,由組員自行決定希望做哪個檔次的任務,在該檔次中,通過隨機選取的方式,來確定任務執行者。
10. 建立任務退出機制,即在分配任務時,由任務執行者結合任務的story points(由全組討論得到,參見第3點)和自己的能力,在全組同意的情況下,給出任務完成的deadline(精確到小時,例如明天中午12點)。在任務deadline到期仍然未完成任務的情況下,其他任何組員在任何時候有權利接管該任務,成為新的任務執行者。在任務完成後,任務的story points數歸新的任務執行者所有。
11. 加強組內溝通,儘量檢查每日例會和多進行全組討論;
Scrum Monitor任務列表
1. 每個sprint週期由一人出任Scrum Monitor,用以保證scrum能夠順利執行;
2. Scrum Monitor完成如下任務來監控scrum的執行:
a) 監測釘釘星任務中已準備好但尚未開始執行的任務的總story points數目,當該數目低於一個sprint週期的任務量時,發起全組會議討論並增加新的任務;
b) 每日負責把釘釘上的星任務的執行情況更新到excel表中,在每天早上9點之前把excel表發給導師的釘釘上;
c) 當星任務逾期後,負責每天在釘釘群中提醒任務責任人,直至該任務完成或者責任人發生變更;
d) 當sprint週期完成2/3的時間後,評估當前sprint週期是否能完成預期任務。若評估結果為不能完成,在釘釘上對導師預警;
e) 對於沒有完成預期任務的sprint週期,負責在sprint週期結束2天內組織全組進行反思,並提交1000字以上的整改報告給導師;
f) 在釘釘上記錄每個sprint週期內全組會議的情況;
g) 在sprint週期會議上,負責嚮導師彙報上一個週期的執行情況,具體包括每個成員的總工作時間,花在執行任務的工作時間,花在討論上的時間,完成的story points數目;
h) 在sprint週期會議上,嚮導師彙報馬上要執行週期的任務的解決方案;
i) 在sprint週期會議上,準備好組內所有成員的工作日誌備查。
Scrum開發成員責任
1. 負責一起討論sprint週期內的任務,制定執行方案,確定任務的story points;
2. 每天將自己工作的情況反饋給ScrumMonitor;
3. 當遇到無法解決的問題時,儘量發起全組進行討論;
4. 星任務結束時,建立二級審批,首先交由測試用例的建立者進行審批,對於修復bug和重構類任務,交由組內其他一名成員進行審批,完成組內審批後再交由導師進行審批;
5. 任務完成的標準是通過導師的審批。