完成定义(DoD) 是一个必须满足的清单,团队才能认为用户故事已完成。而验收标准 用户故事的验收标准包括一组必须满足的测试用例,以确认软件按预期工作。
关键区别在于完成定义适用于所有用户故事,而验收标准则针对每个单独的用户故事。每个用户故事的验收标准将根据该故事的具体需求而有所不同。
换句话说,只有当完成定义和验收标准都满足时,用户故事才能被视为完成。除非两个清单都完全满足,否则产品增量不被视为完成。因此,我们需要定义完成定义的两个方面:完成定义和验收标准:
完成定义与验收标准
完成定义:
完成定义以清单形式组织,每个项目都作为故事或产品待办事项(PBI)的验证点。其目的是确保开发团队对交付工作的质量达成一致。它作为检查清单,用于验证每个 产品待办事项项目(也称为PBI或用户故事)。完成定义中的各项内容旨在适用于产品待办事项中的所有项目,而不仅仅是单个用户故事。可以总结如下:
- 适用于整个产品增量
- 意味着在大多数情况下,产品增量具有可交付性
- 在《Scrum指南》中定义
- 作为团队成员之间的沟通工具:
- 整体软件质量
- 增量是否可交付
完成定义的目标
- 在团队中建立对质量和完整性的共同理解
- 作为验证用户故事(或PBI)的检查清单
- 确保冲刺结束时产生的增量具有高质量,并且所有参与者都清楚质量标准
示例 – 完成定义
例如,在软件行业中,团队可能会提出以下问题来定义其完成定义:
- 代码是否经过同行评审?
- 代码已完成?
- 代码已审查?
- 代码已提交?
- 单元测试通过?
- 功能测试通过?
- 验收测试已完成?
- 产品负责人已审查并接受
验收标准
验收标准
用户故事包含了验收标准,因此我们经常在Scrum流程中看到“完成的定义”与验收标准并存。用户故事为团队应交付的功能提供了背景。验收标准提供了关于功能应如何运作以及客户如何接受它的详细指导。它们共同定义了完整的可交付成果。
一些验收标准是在冲刺开始前持续进行的待办事项梳理会议中发现的,而另一些则是在冲刺计划之后立即确定,以便团队能够与用户故事进行讨论。因此,验收标准是用户故事或产品待办事项的独特属性。
- 适用于单个产品待办事项/故事
- 每个产品待办事项/故事的验收标准各不相同
- 未在Scrum指南中定义
- 作为沟通工具,以满足特定产品待办事项/故事的要求
- 也被称为验收测试、满足条件,或在某些情况下称为“测试用例”
验收标准的目标
- 明确团队在开始工作前应确定的内容
- 确保每个人都对需求有共同的理解
- 帮助团队成员理解故事何时才算完成
- 通过自动化测试帮助验证故事
示例 – 验收标准
- 用户在未填写所有必填字段的情况下无法提交表单
- 表单中的信息存储在注册数据库中
- 客人可以通过信用卡支付
- 表单提交后,会向用户发送电子邮件确认
用户故事与验收标准的示例
下图展示了一个用户故事的验收标准示例。
完成定义的示例