user-story-writer 的简体中文翻译,英文版本为规范版本。
用户故事撰写
这个技能根据功能说明、PRD 的某一部分或口头描述,产出可以直接使用的用户故事。每个故事都遵循标准格式:清楚的谁 / 做什么 / 为什么,按 Given / When / Then(假如 / 当 / 那么)格式写的行为验收标准、边界情况和完成定义。产出可以直接粘贴到 Jira、Linear 或你的规划工具中。
所需输入
如未提供,请向用户询问:
- 要拆成故事的功能或改动:粘贴说明、PRD 部分,或描述功能
- 涉及的用户类型 / 角色(例如管理员、最终用户、访客、API 调用方)
- 范围:写一个故事,还是把一个史诗拆成完整的一组故事?
- 验收标准格式偏好:Given / When / Then、要点清单,还是两者都要?
- 技术约束或说明:工程团队提出的、应当影响故事的任何事项
输出结构
每个故事:
故事:[简短标题,动词加名词,例如"按日期范围筛选搜索结果"]
史诗: [所属史诗名称,例如"高级搜索"]
故事编号: [Jira / Linear 编号,还没创建就留空]
优先级: [P1 / P2 / P3]
故事点: [留空,由工程团队估算]
用户故事
作为 [具体的用户类型,不要写"用户"],
我想要 [他们想采取的具体行动],
以便 [他们得到的结果:业务价值,而不是功能描述]。
示例:
作为客户经理,
我想要按最近联系日期筛选我的客户列表,
以便快速找出 30 天以上没有联系过的客户,并优先跟进。
背景
[1 到 3 句用户故事本身没有的背景:这个故事什么时候重要、是什么触发了这个需要、它如何融入更大的流程。这能帮助工程师在提问之前就理解为什么。]
验收标准
格式:Given / When / Then(假如 / 当 / 那么)
每条标准只测试一个具体行为。每个可观察的结果写一条,而不是整个功能只写一条。
AC1:[这条标准的简短名称]
假如 [初始状态或背景]
当 [用户行动]
那么 [可观察的系统行为]
AC2:[简短名称]
假如 [...]
当 [...]
那么 [...]
AC3:[简短名称]
假如 [...]
当 [...]
那么 [...]
边界情况
[列出不明显但必须处理的场景。它们会成为额外的验收标准或给工程团队的说明。]
不在范围内
[明确写出这个故事不包括什么:防止范围蔓延,并说明下一个故事从哪里开始。]
- 保存和分享筛选预设(另一个故事,见 [故事 X])
- 对筛选结果的批量操作
- 把筛选后的客户列表导出为 CSV
完成定义
史诗拆解模板
如果用户提供的是史诗或功能说明,先把它拆成完整的一组故事,再逐个撰写:
史诗: [名称]
目标: [完成这个史诗带来什么结果?]
故事:
建议的迭代顺序: [哪些故事是 MVP 的 P1?哪些可以放到之后的迭代?]
常见的故事反模式及修正
在交给工程团队之前,用这些来审查故事:
示例:一个功能的完整故事集
功能说明: "允许用户把发票历史导出为 PDF 或 CSV"
故事 1:把发票列表导出为 CSV
作为财务管理员,
我想要把我的发票历史导出为 CSV 文件,
以便不用手动录入就能导入我们的会计软件。
AC1:导出成功
假如 我在发票页面,且至少有一张发票
当 我点击"导出"并选择"CSV"
那么 下载一个 CSV 文件,包含所有可见发票,列为:发票编号、日期、金额、状态、客户名称
AC2:空状态
假如 我在发票页面,且没有任何发票
当 我点击"导出"
那么 导出按钮不可用,提示显示"没有可导出的发票"
AC3:筛选后导出
假如 我已应用日期筛选,只显示 2026 年 1 月的发票
当 我点击"导出"并选择"CSV"
那么 导出内容只包含 2026 年 1 月的发票,而不是全部发票
边界情况:
不在范围内: PDF 导出(故事 2)、定时导出(未来的史诗)
故事 2:把发票列表导出为 PDF
作为财务管理员,
我想要把我的发票历史导出为排版好的 PDF,
以便和会计分享一份专业的汇总。
[……验收标准按同样的模式……]
延伸材料
这个技能附带支持文件,可用时请使用:
references/acceptance-criteria-craft.md:真正起把关作用的验收标准。在产出时应用它;它包含上面方法摘要压缩掉的校准和判断。
templates/story-card.md:可填写的成果模板,质量关卡写在里面。当用户想自己完成文档而不是生成时提供。
评分量表(0 到 40)
交付前给这个技能的任何产出打分;32 分以上才算可以交付。
质量检查
反模式
示例触发语
- “根据这份说明为 [功能] 写用户故事”
- “把这部分 PRD 拆成带验收标准的用户故事”
- “把这些功能需求转成 Jira 任务”
- “为 [功能名称] 写用户故事和验收标准”
- “把这个史诗拆成可以进入迭代规划的独立故事”