用户故事详解——“作为……我想要……以便……”格式、INVEST、验收标准——以及常被称为 sprint 规划的迭代规划,在 East Agile Tracker 中如何结合速率进行。
用户故事是从用户视角写下的、对用户所需之物的简短描述。迭代规划是团队决定在下一个时间盒里做哪些故事的方式。许多团队把这个时间盒称为 sprint,把这场会议称为 sprint 规划;East Agile Tracker 则称之为迭代和迭代规划。
什么是用户故事
Section titled “什么是用户故事”常见的模板是:
作为 [某类用户],我想要 [某种能力],以便 [某种收益]。
例如:作为项目经理,我想要看到哪些故事被阻碍了,以便在迭代结束前清除它们。
这个模板点明了谁受益、需要什么以及为什么。“为什么”能让团队找到更简单的方式来交付同样的收益。故事是一场对话的占位符,而不是一份完整的规格:细节由提出需求的人和构建的人共同敲定。
INVEST:故事准备好了吗?
Section titled “INVEST:故事准备好了吗?”INVEST 是一份检验故事是否成形的清单:
- Independent(独立)——可以单独构建和交付。
- Negotiable(可协商)——细节可以讨论。
- Valuable(有价值)——交付用户或客户在乎的东西。
- Estimable(可估算)——团队对它的理解足以定出大小。
- Small(小)——能从容地装进一个迭代。
- Testable(可测试)——有清晰的方式判断它已完成。
验收标准说明故事要算作完成必须满足哪些条件。以 Given / When / Then 形式书写,能让每一条都成为一个验收测试:
Given 一个带有未解决阻碍的故事,when 我打开 Blocked 列,then 该故事会列在那里。
验收标准在工作开始前就达成一致,这样团队和负责接受该故事的人对“完成”有同一个定义。
迭代规划回答一个问题:这个迭代我们要做什么? 它需要三项输入:
团队从待办列表顶部开始取故事,直到总数达到其速率。取得更多,就得指望团队突然加快速度;取得更少,则会让产能闲置。
East Agile Tracker 的做法
Section titled “East Agile Tracker 的做法”- 故事有四种类型: 功能、缺陷、杂务和发布。默认只有功能取点数。见故事。
- 验收标准写在描述里。 没有单独的字段;验收标准应在故事开始之前写进描述。故事被交付后,产品负责人会对照这些标准接受或拒绝它。见状态机与验收闭环。
- 待办列表是一份严格有序的清单, 它会根据速率投影出即将到来的迭代,向前三四个,并标出超出速率的分组。见迭代。
- 迭代规划在很大程度上是自动的。 开启自动规划迭代(默认)后,当前迭代会填充到你的速率为止;拉入一个新故事,会把优先级最低的故事移回 Backlog 顶部。以 Scrum 方式承诺固定范围的团队可以关闭自动规划,想规划多少就规划多少,超出速率时计数器会变红。见规划迭代。
- 创建故事会打开一个编辑器,用于填写标题、描述、类型、估算和负责人。见创建故事。
- 什么是故事点?——为故事定大小。
- 什么是速率?——规划中的产能一面。
- eXtreme Programming——用户故事和规划游戏的来源。