有可能影響、修正版本發(fā)布規(guī)劃的事情包括:
上個迭代中交付工作的實際速度。它比預(yù)計的是快還是慢?速度的變化會改變在項目剩余時間中的工作范圍。
現(xiàn)有故事和史詩在優(yōu)先級方面的變化。
由于項目環(huán)境發(fā)生的變化,導(dǎo)致需要引入新的故事和史詩。
隨著工作進(jìn)行而顯現(xiàn)出來的缺陷和技術(shù)債務(wù)【原注8】。
風(fēng)險識別完成后,出現(xiàn)了新的故事,或是已有故事發(fā)生改變。
之前迭代中懸而未決的故事。
非項目工作,降低了團(tuán)隊領(lǐng)取項目工作任務(wù)的能力。
迭代規(guī)劃會議的首要任務(wù),是要發(fā)現(xiàn)當(dāng)前重要的故事和史詩,團(tuán)隊將會在當(dāng)前迭代中針對它們開展工作。產(chǎn)品負(fù)責(zé)人會說明當(dāng)前的優(yōu)先級,還有發(fā)生改變的原因,確保整個團(tuán)隊對于優(yōu)先級為什么要改變有明確認(rèn)識。
當(dāng)史詩和故事的列表重新排序完成,而且所有團(tuán)隊成員都已經(jīng)了解了修正后的發(fā)布規(guī)劃之后,團(tuán)隊會制定當(dāng)前迭代中需完成工作的詳細(xì)迭代規(guī)劃。
團(tuán)隊會基于“昨天的天氣”(很可能他們在當(dāng)前迭代完成的工作量與上一個迭代相同,除非工作環(huán)境或是團(tuán)隊構(gòu)成發(fā)生重大變化)和常識,估算自己能夠在當(dāng)前迭代中完成多少工作。然后團(tuán)隊會基于自己的工作交付能力,選擇當(dāng)前迭代要開發(fā)的工作。
選定故事和史詩之后,團(tuán)隊會把工作拆分成特定的任務(wù),并分配給每個團(tuán)隊成員。理想狀況下,任務(wù)分配會以“拉”的形式完成,團(tuán)隊成員根據(jù)自己的工作能力,選擇自己要做的任務(wù)。任務(wù)應(yīng)該非常小,從幾個小時到1天不等,而且要是分散的、可度量的活動。迭代經(jīng)理(Scrum中是Scrum Master)確定所有的工作任務(wù)都有人領(lǐng)取,而且會對承諾完成的工作做健全性檢查(sanity check):根據(jù)項目的環(huán)境現(xiàn)狀,團(tuán)隊是否有能力交付他們承諾完成的任務(wù)?
當(dāng)任務(wù)都被識別完成后,團(tuán)隊成員會對其排序和估算。估算現(xiàn)在基于完成某項任務(wù)需要的小時數(shù)。這些任務(wù)應(yīng)該寫在任務(wù)卡片上,并在故事墻上跟蹤這些任務(wù)卡。
任務(wù)與故事連在一起,在故事墻上跟蹤某個故事的狀態(tài)遷移,要與其所包含任務(wù)的完成狀況相聯(lián)系。
迭代中的任務(wù),包括為了完成故事需要完成的所有工作,還有為下個迭代的準(zhǔn)備工作。
迭代Backlog列出了當(dāng)前迭代中在故事墻上要跟蹤的故事和史詩。
下面展示了一個任務(wù)列表的部分示例。
在迭代中,團(tuán)隊成員要根據(jù)任務(wù)來報告和跟蹤他們的工作進(jìn)度。這是他們個人每天做出的承諾。
燃盡圖能夠展示出初始的估算和迭代剩余的工作。每個任務(wù)實際花費的時間會得到跟蹤,并用來幫助團(tuán)隊在下次迭代規(guī)劃會議中的改進(jìn)估算效果。
每日承諾
團(tuán)隊成員是在這時候監(jiān)控他們的進(jìn)度,并根據(jù)他們承諾要完成的任務(wù)報告進(jìn)度。
在迭代內(nèi),每日立會是團(tuán)隊溝通進(jìn)度的首要溝通工具。在項目的每個工作日里,團(tuán)隊聚在一起,并向彼此報告各自承諾要完成的任務(wù)進(jìn)度狀況。每日立會有一些簡單的規(guī)則:
它采取站立方式進(jìn)行。
長持續(xù)時間是15分鐘。
每個團(tuán)隊成員發(fā)言時間不超過1分鐘。
僅從用戶故事和任務(wù)的層面報告進(jìn)度。
任務(wù)報告只有兩種狀態(tài):完成或未完成。
未完成任務(wù)要說明還需要幾個小時/幾個點數(shù)/多少工作量才能完成。
阻止任務(wù)完成、或是項目進(jìn)度的障礙要單獨報告。
每個團(tuán)隊成員都要回答以下3個問題:
從上次會議開始,你完成了哪些工作?(要指明完成哪些任務(wù),而不是如何度過你的)
你將會在下次會議之前做哪些工作?
哪些東西阻礙你的進(jìn)度?(“沒有問題”,意味著你能夠交付自己當(dāng)前的任務(wù),而且符合估算的時間范圍)
如果遇到需要解決的問題,可以在每日立會之后處理。在每日立會之后進(jìn)行一個簡短的1對1會議解決特定問題,這是常用做法。
迭代經(jīng)理主要負(fù)責(zé)移除障礙,讓團(tuán)隊充分發(fā)揮工作效率。
敏捷項目必須提供能夠“安全失敗”的環(huán)境,團(tuán)隊成員不會因為沒有達(dá)成任務(wù)承諾遭受懲罰。大家要能夠安全說出任務(wù)狀態(tài)的真實情況,并且了解項目環(huán)境的現(xiàn)實情況。有時,我們的估算可能很糟糕(只是估算而已,又不是報價),又或者某些事情的發(fā)生讓某些成員無法完成任務(wù),整體環(huán)境必須讓他們能夠說出真實情況,這樣團(tuán)隊成員能調(diào)整他們的日程表,將任務(wù)排序,并調(diào)整適應(yīng)項目的現(xiàn)實。
當(dāng)一個故事所有的任務(wù)都已經(jīng)完成后,故事會移動到“完成”狀態(tài),而且這部分工作的故事點數(shù)會算到團(tuán)隊速度中。