第3章 场景故事编写方法:用户故事三要素、Acceptance Criteria、故事卡模板
场景故事是需求捕捉的起点,但要让开发团队有效执行,必须将其转化为结构化的用户故事。本章讲解用户故事的三要素、验收标准的编写方法以及标准故事卡模板,帮助学员掌握从场景描述到可执行需求的转化技能。学完本章后,你将能够把一段自然语言描述的场景,拆解为格式规范、可测试、可追踪的用户故事。
本章学习目标
• 掌握用户故事三要素(角色‑功能‑价值)的拆解方法
• 学会编写可测试的验收标准(Acceptance Criteria)
• 能够使用标准故事卡模板完成需求交付物
• 理解从场景故事到用户故事的完整转化路径
• 掌握用户故事三要素(角色‑功能‑价值)的拆解方法
• 学会编写可测试的验收标准(Acceptance Criteria)
• 能够使用标准故事卡模板完成需求交付物
• 理解从场景故事到用户故事的完整转化路径
3.1 用户故事三要素
用户故事是敏捷需求的最小表达单元,它不描述具体实现,而是聚焦于“谁需要什么、为什么需要”。三要素构成了用户故事的骨架:
- 角色(Who) — 使用功能的用户类型或系统角色,例如“房主”“访客”“管理员”。
- 功能(What) — 系统需要提供的能力或行为,描述要做什么,而非怎么做。
- 价值(Why) — 用户通过该功能获得的业务收益或体验改善,是需求存在的根本理由。
三要素的标准句式:
作为【角色】,我想要【功能】,以便【价值】。
| 要素 | 英文 | 说明 | 智能家居示例(远程调温) |
|---|---|---|---|
| 角色 | Who | 使用功能的用户类型 | 房主(Homeowner) |
| 功能 | What | 系统需要提供的能力 | 通过手机 App 远程调节室内温度 |
| 价值 | Why | 用户获得的好处 | 回家时环境已经舒适,无需等待 |
实战提示:在智能家居场景中,角色不应只写“用户”,而要尽量细化,如“独居老人”“双职工夫妇”“短租访客”。角色越清晰,功能设计越精准。
一个完整示例:
作为 房主,我想要 通过手机 App 在下班路上提前打开客厅空调,以便 到家时室内温度已调节到 24°C,无需等待。
3.2 验收标准(Acceptance Criteria)
验收标准定义了用户故事“完成”的具体条件,是需求可测试、可交付的保障。每条标准必须能被客观验证。
推荐使用 Given‑When‑Then 结构:
- Given — 前置条件或上下文状态
- When — 用户或系统执行的操作
- Then — 期望产生的可观察结果
以上述远程调温为例:
- Given 房主已登录 App 且手机联网,家中空调处于待机状态
- When 房主在 App 上将目标温度设为 24°C 并点击“发送”
- Then 家中空调在 5 秒内启动制冷模式,设定温度更新为 24°C
- And App 界面显示“已发送,目标温度 24°C”的确认提示
| 验收标准属性 | 说明 | 反例(不可测试) |
|---|---|---|
| 可测试 | 每条标准都有明确的验证手段 | “系统响应要快” |
| 明确 | 无歧义,所有干系人理解一致 | “温度舒适即可” |
| 完整 | 覆盖正常、异常、边界情况 | 只写成功路径,无离线处理 |
| 独立 | 每条标准可单独验证 | 两条逻辑混在一条描述中 |
常见错误:把验收标准写成实现方案,例如“前端调用后端 API 的 /setTemp 接口”。验收标准应聚焦于用户可感知的行为和结果,而非技术细节。
3.3 故事卡模板
故事卡是将用户故事、验收标准及管理属性整合为一的交付物载体。标准故事卡便于团队排期、估算和追踪。
| 字段 | 说明 | 示例值(远程调温) |
|---|---|---|
| 故事 ID | 唯一标识,便于追溯 | US‑003 |
| 故事标题 | 简短概括,一眼可知 | 手机远程调温 |
| 用户故事 | As a… I want… So that… | 作为房主,我想要通过手机 App 远程调节空调温度,以便到家即享舒适 |
| 验收标准 | Given‑When‑Then 列表 | (共 4 条,含正常与离线场景) |
| 优先级 | 业务排级 | P1(核心体验) |
| 工作量估算 | Story Points 或人天 | 5 SP |
| 依赖 | 前置或关联需求 | US‑001(设备绑定)、US‑002(用户登录) |
| 备注 | 附加上下文或决策记录 | 需兼容 iOS 和 Android 两种 App 版本 |
最佳实践:故事卡应保持“小而美”。如果一个故事的工作量超过 8 SP,说明颗粒度过大,需要进一步拆解。智能家居场景中,一次只聚焦一个设备、一个用户角色、一个操作意图。
3.4 从场景故事到故事卡的转化流程
下图展示了如何将一段原始的场景故事,经过三要素提取、验收标准定义,最终产出标准故事卡的完整路径。该流程是需求分解的核心环节,也是后续方案设计的基础。
在实际课程项目中,建议学员按照以下步骤操作:
- 捕获原始场景 — 通过用户访谈或观察,记录用户在使用智能家居时的自然语言描述。
- 识别三要素 — 从场景中标记出角色、功能、价值,剔除实现细节和冗余信息。
- 编写用户故事 — 用“作为…想要…以便…”句式重组,确保三要素完整且聚焦。
- 定义验收标准 — 与产品经理和 QA 共同编写 Given‑When‑Then 列表,每条可测试。
- 填充故事卡 — 将故事、验收标准、优先级、估算等填入模板,形成可交付的需求单元。
课程交付物提醒:本章结束后,学员需提交 3 张完整的故事卡(含验收标准),覆盖智能家居中“照明控制”“安防告警”“能耗监测”三个子场景。每张故事卡必须体现三要素的清晰拆解。
3.5 本章要点速查
| 概念 | 核心规则 | 智能家居应用建议 |
|---|---|---|
| 用户故事三要素 | 角色‑功能‑价值缺一不可 | 角色细化到具体人群,功能避开技术术语,价值可量化(如“节省 30% 等待时间”) |
| 验收标准 | Given‑When‑Then,每条可独立测试 | 包含正常路径、异常路径(如断网、设备离线)和边界条件 |
| 故事卡 | ID + 标题 + 故事 + AC + 优先级 + 估算 | 单卡工作量不超过 8 SP,超过则继续拆解 |
| 转化流程 | 场景 → 三要素 → 故事 → AC → 卡 | 每步都需干系人确认,避免跳步导致需求失真 |
避坑指南:不要将“系统如何实现”写进用户故事或验收标准。例如“App 通过 MQTT 协议下发指令”属于技术方案,应放在后续的设计文档中,而非需求层。用户故事只关心“用户能做什么、获得什么”。