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