出現(xiàn)庫(kù)存堆積的時(shí)候,就是我們需要改進(jìn)的時(shí)候。如果“待測(cè)試”這一欄有太多的任務(wù)卡片,那么就說明我們的測(cè)試活動(dòng)沒有跟上,有可能是我們的測(cè)試環(huán)境出了問題,或者大連防火墻軟件開發(fā)測(cè)試人員人力不足。如果太多的卡片位于“測(cè)試完成”狀態(tài),說明我們的發(fā)布和最終交付過程出了某些問題。如果“待開發(fā)”這一欄中任務(wù)過多,說明我們的計(jì)劃有可能超出了當(dāng)前團(tuán)隊(duì)的開發(fā)能力,或者說反映了開發(fā)人員的不足。還有一種情況是“待開發(fā)”這一欄空了很久,這可能說明了另外一個(gè)問題,那就是我們的分析師的分析速度匹配不上團(tuán)隊(duì)的開發(fā)能力。一個(gè)良好的團(tuán)隊(duì),必然是各種角色協(xié)調(diào)配合,并行工作,同時(shí)他們之間的任務(wù)銜接也能夠比較流暢。
致遠(yuǎn)服軟認(rèn)為:http://www.soft8.com.cn/團(tuán)隊(duì)在每個(gè)迭代所能完成的工作量,通常被稱為迭代的速度(velocity),是衡量團(tuán)隊(duì)每個(gè)迭代產(chǎn)能的一個(gè)指標(biāo)。這個(gè)指標(biāo)能夠幫助團(tuán)隊(duì)制定迭代計(jì)劃。根據(jù)大連防火墻軟件開發(fā)測(cè)試團(tuán)隊(duì)估計(jì)任務(wù)工作量的方法不同,迭代的velocity的單位也可能不同(例如故事點(diǎn)數(shù))。通常,我們只需要在迭代結(jié)束的時(shí)候,數(shù)一數(shù)狀態(tài)墻上完成的任務(wù)工作量就可以了。
當(dāng)我們經(jīng)歷了若干個(gè)迭代以后,通常大連防火墻軟件開發(fā)測(cè)試團(tuán)隊(duì)的迭代速度會(huì)趨于穩(wěn)定,我們?cè)谧鱿乱粋€(gè)迭代計(jì)劃的時(shí)候,會(huì)參考以往迭代的數(shù)據(jù)。如果上一個(gè)迭代完成了15個(gè)點(diǎn),那么下一個(gè)迭代我們通常也會(huì)計(jì)劃15個(gè)點(diǎn)左右的工作量,將這些卡片放到“待開發(fā)”這一欄中。也就是說,每個(gè)迭代結(jié)束時(shí),我們都會(huì)對(duì)狀態(tài)墻進(jìn)行更新,將即將到來的迭代的卡片放到墻上,而且將一些處于半成品狀態(tài)的卡片進(jìn)行適當(dāng)?shù)恼{(diào)整。
前面提到,狀態(tài)墻上可能有三種卡片,除了需求,還可能有 bug 和技術(shù)任務(wù)。測(cè)試人員每次在迭代中測(cè)出一個(gè)bug,就會(huì)將bug 寫成卡片,放到“待開發(fā)”這一欄。當(dāng)bug不多的時(shí)候,團(tuán)隊(duì)可以在不太影響原有計(jì)劃的情況下消化掉這些 bug,確保軟件的質(zhì)量持續(xù)地得到保證;如果bug太多,則需要做一些計(jì)劃,將bug分散到幾個(gè)迭代里去消化。然而到這個(gè)時(shí)候,團(tuán)隊(duì)可能更需要及時(shí)反省一下出現(xiàn)這么多bug的原因了。
另一類技術(shù)任務(wù)也需要和 bug 以及需求卡片一起被考慮到迭代計(jì)劃中去。通常技術(shù)任務(wù)包括諸如搭建持續(xù)集成環(huán)境、準(zhǔn)備測(cè)試環(huán)境、重構(gòu)這樣的任務(wù)。它們雖然不直接給用戶帶來價(jià)值,但是卻是保證蘋果手機(jī)指紋軟件開發(fā)質(zhì)量、確保團(tuán)隊(duì)效率的重要因素。比如重構(gòu)類的任務(wù),對(duì)于工作在遺留系統(tǒng)上的團(tuán)隊(duì)來說可能是需要一直考慮的事情,為了保障新需求的順利實(shí)現(xiàn),可能需要有計(jì)劃地重構(gòu)之前的一些遺留代碼。