我的軟件測試之旅:(11)嘗試——Scrum Master
在試點(diǎn)項(xiàng)目之后,我們投入了另一個(gè)新產(chǎn)品的開發(fā),繼續(xù)使用Scrum結(jié)合極限編程實(shí)踐的混合式敏捷方法。不過我們從一開始就決定要采用持續(xù)集成的實(shí)踐,而且100%自動(dòng)化也無爭議得到集體認(rèn)同。當(dāng)時(shí)我自己的設(shè)想是希望能夠嘗試Scrum中的所有三種角色,就申請擔(dān)任其中一個(gè)團(tuán)隊(duì)的Scrum Master并且如愿以償。
在第一個(gè)迭代中,兩個(gè)Scrum Master有著不同的預(yù)期,我堅(jiān)定地認(rèn)為我們的開發(fā)應(yīng)該以完成標(biāo)準(zhǔn)(Done Definition)為準(zhǔn),必須達(dá)到。于是,我們將完成標(biāo)準(zhǔn)打印出來,帖在每天開站會(huì)的墻上,和Sprint Backlog以及燃盡圖貼在一起,每天都要檢查它的滿足情況。于是乎,在迭代結(jié)束的時(shí)候,我們團(tuán)隊(duì)完全滿足了完成標(biāo)準(zhǔn)的所有要求,這也是我一直以來最自豪的事情之一。當(dāng)然,在Sprint計(jì)劃會(huì)議上,我們也已經(jīng)預(yù)先將不可能完成的特性(Feature)剔除出去,大家只選擇了在Sprint中按照完成標(biāo)準(zhǔn)可以完成的那些特性。
承擔(dān)Scrum Master角色的同事必須同時(shí)也要在團(tuán)隊(duì)中擔(dān)綱實(shí)際的工作任務(wù),我也就選擇了繼續(xù)做測試,兩個(gè)角色各分配一半時(shí)間。不過隨著產(chǎn)品開發(fā)進(jìn)度的不斷進(jìn)展,有越來越多的各種閑雜事務(wù)需要Scrum Master這個(gè)角色去解決,導(dǎo)致我無法很好地履行團(tuán)隊(duì)成員這一角色的職責(zé)。團(tuán)隊(duì)內(nèi)部連續(xù)好幾個(gè)Sprint回顧會(huì)議都在討論這個(gè)問題,試圖尋找解決方案。最后的辦法是我不再承接具體的測試工作任務(wù),以免影響其他人的工作進(jìn)度,轉(zhuǎn)而把時(shí)間用來輔導(dǎo)團(tuán)隊(duì)里的兩位測試工作者,和他們結(jié)對工作。大概在2~3個(gè)Sprint之后,大家提高的測試效率、質(zhì)量得到了回報(bào),因此而節(jié)省下來的時(shí)間或多或少地填補(bǔ)了我不干活的那0.5個(gè)人頭。
由于產(chǎn)品變得更加復(fù)雜,持續(xù)集成系統(tǒng)也同樣更復(fù)雜,維持其運(yùn)轉(zhuǎn)也更不容易,還得考慮到有很多新的成員加入,他們并不熟悉持續(xù)集成實(shí)踐以及實(shí)踐對他們提出的要求。Scrum Master通常也是持續(xù)集成監(jiān)管團(tuán)隊(duì)的一員,專門監(jiān)控系統(tǒng)狀態(tài),集成失敗時(shí)就要一起分析、定位問題并且找到相應(yīng)的人員解決問題,以及阻止其他人員檢入代碼。這在前期尤為重要,需要幫助所有人都養(yǎng)成習(xí)慣,保持版本一直可工作,遇到版本失敗第一反應(yīng)是去修復(fù)而不是繼續(xù)寫代碼。
還有就是實(shí)踐可接受性測試驅(qū)動(dòng)開發(fā),包括結(jié)對編程、結(jié)對測試和測試驅(qū)動(dòng)開發(fā)等等實(shí)踐。這些實(shí)踐的推動(dòng)效果很受Scrum Master擔(dān)當(dāng)者能力的影響,如果Scrum Master自身不具備相應(yīng)的能力,只是靠空口說話很難贏得大家的信任。就算是要引入外部咨詢師、教練也一樣,他們需要能夠花時(shí)間和團(tuán)隊(duì)一起干活,幫助團(tuán)隊(duì)習(xí)得動(dòng)手能力。言傳不如身教,絕對是真義。
為了更好地培育Scrum Master,幫助大家不斷提高,我們設(shè)立了Scrum Master Network實(shí)踐社區(qū),周期性地聚在一起討論問題,分享自己的經(jīng)驗(yàn)。和測試關(guān)系不大,就不多說了。
相關(guān)鏈接:
我的軟件測試之旅:(1)起點(diǎn)——作為軟件開發(fā)人員
我的軟件測試之旅:(2)轉(zhuǎn)變——作為專職測試人員
我的軟件測試之旅:(3)同期——加入測試自動(dòng)化小組
我的軟件測試之旅:(5)難點(diǎn)——功能改進(jìn)的測試
我的軟件測試之旅:(6)跳轉(zhuǎn)——追逐新鮮事物的探險(xiǎn)者
我的軟件測試之旅:(8)困難——沒有現(xiàn)成的測試工具
posted on 2012-08-10 11:20 順其自然EVO 閱讀(177) 評(píng)論(0) 編輯 收藏