定義:
DoD 全稱 Definition of Done, 是我們敏捷中常說的“完成的定義”。
在我們Scrum中,需要預(yù)先定義DoD,我們項(xiàng)目中DoD條款有:
1,所有完成的用戶故事得到PO的驗(yàn)證
2,所有新增代碼得到人工評(píng)審
3,所有完成的用戶故事都有對(duì)應(yīng)的測(cè)試用例
分類:
不同類型的DoD關(guān)注的宏觀層次不同。
1,故事DoD:每個(gè)故事完成了哪些事情才算這個(gè)故事徹底開發(fā)完成,達(dá)到可交付的標(biāo)準(zhǔn)了?
2,迭代DoD:每個(gè)迭代的所有故事做到什么程度才算完成,完成哪些事情了,本次迭代的輸出才是可交付的?
3,發(fā)布DoD:每次交付完成了哪些事情,才是可以交付的?
我們的項(xiàng)目每兩周有一個(gè)DoD,包含以上3項(xiàng)。
作用:
1,明確對(duì)完成的預(yù)期,確保項(xiàng)目中的內(nèi)外部的干系人對(duì)完成的含義達(dá)成理解一致;
2,承諾的可視化,隱藏的、內(nèi)部的質(zhì)量投入對(duì)外暴露出來,增強(qiáng)團(tuán)隊(duì)的透明性;
3, 避免快而臟的開發(fā)模式,不留技術(shù)債務(wù),不遺留問題給后續(xù)迭代;
4,作為迭代策劃的前提與約束條件,幫助我們合理估算工作量,制定切實(shí)可行的計(jì)劃;
5,聚焦目標(biāo),減少不必要的活動(dòng),定義完成任務(wù)的最小活動(dòng)集合;
6,在做計(jì)劃時(shí)判斷是否有遺漏的活動(dòng);
7,在驗(yàn)收時(shí)檢查是否有遺漏的活動(dòng),比如作為sprint review的檢查單的一部分
案例:
以下是我們項(xiàng)目中完成一個(gè)用戶故事需要做到的標(biāo)準(zhǔn)。
1,開發(fā)人員所有的代碼都通過了單元測(cè)試,語句覆蓋率達(dá)到了100%;
2,完成了集成,并通過了自動(dòng)化測(cè)試;
3,非功能性需求已經(jīng)測(cè)試通過了;
4,PO對(duì)照故事的驗(yàn)收標(biāo)準(zhǔn)認(rèn)可了完成的功能;
發(fā)布:
我們項(xiàng)目中每一次發(fā)布需要做到下面的要求。
1,滿足了迭代DoD;
2,產(chǎn)品通過了全量回歸測(cè)試;
3,已經(jīng)通過了用戶體驗(yàn)測(cè)試;
4,交付給用戶的文檔都經(jīng)過了評(píng)審或測(cè)試;
5,在客戶預(yù)期的環(huán)境中做了確認(rèn);
6,未能按期交付的故事得到了PO的認(rèn)可;
7,產(chǎn)品已經(jīng)自動(dòng)部署到生產(chǎn)環(huán)境中;
檢查單:
下面是我們項(xiàng)目的中的DoD檢查單。
