什么是敏捷中的Scrum DoD?

DoD是指 Definition of Done ,也就是 在Scrum中 “完成的定义”。DoD可以贯穿于整个Scrum流程中,往往有这样几个节点:

用户故事DOD

  • 针对需求分析,用户故事是否已经准备完成,可以纳入最近的sprint开发了?
  • 针对故事本身,开发完成后,是否可以产品交付出去了?

1. 用户故事就绪标准

  • 用户故事优先级已排定
  • 用户故事拆分粒度,已可以放入迭代中
  • 用户故事已经估算完成
  • 用户故事的验收条目已完成
  • 是不是有点像用户故事的准出条件?

2. 用户故事完成标准

  • 故事涉及的自动化用例全部跑通
  • 完成和其他功能的集成测试
  • 完成回归测试
  • showcase通过
  • 产品经理做完内部验收
  • 相关的部署文档已更新

迭代DoD

  • 所有完成的用户故事得到PO的验证
  • 所有代码得到静态分析,纠正最高级别的不符合项,静态分析的规则参见…
  • 所有新增代码得到人工评审
  • 所有完成的用户故事都有对应的测试用例

发布DoD

  • 完成发布规划所要求的重点内容
  • 通过发布的全量测试,回归测试范围是全范围,回归比率不低于50%
  • 修复所有等级为1、2、3的缺陷,4级及4级以下缺陷不超过200个。1、2级缺陷必须修复,3级缺陷经过带缺陷发布审批后可以发布。

每日DOD

  • 每天下班前,至少checkin代码一次,checkin的change-log要填写清晰
  • 当天的代码必须要经过结对走查
  • checkin的代码有经过自动化单元用例
  • 每天晚上触发静态代码检查、自动化回归测试
  • 当天持续集成、构建环境中的问题,请当天解决

版本DOD

  • 产品文档已全部更新
  • 代码已部署到产品服务器上
  • 运维在验收测试环境上冒烟通过
  • 原始需求提交人对功能已经验收通过
  • 运维、市场、客服对新功能已经培训完成

每周DoD

  • 上上周发现的缺陷是否解决
  • 上周新增功能的自动化测试是否加入到每周测试集。