mcpField
U
user-story-mapping

user-story-mapping

github.com/deanpeters开发7.7k2.7k 次安装2 周前更新
代码仓库

关于 user-story-mapping

帮助产品、设计和工程团队梳理用户旅程的故事地图技能。它按时间顺序组织活动、步骤与任务,再按优先级划分发布范围,用于形成共同理解而非替代待办列表。

主要功能

  1. 01按用户旅程排列活动与步骤
  2. 02将步骤细化为具体任务
  3. 03按优先级划分发布范围
  4. 04识别流程缺口与体验机会
  5. 05支持团队共同梳理地图

适用场景

  1. 01为新产品或大型功能启动规划
  2. 02对齐团队对用户工作流的理解
  3. 03确定 MVP 与后续发布内容
  4. 04发现用户旅程中的遗漏

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/deanpeters/product-manager-skills --skill user-story-mapping

安装后在 Claude Code 中输入/user-story-mapping确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

template.md
examples/
sample-industrial.md
sample.md

详细介绍

目的

通过创建层级地图,将高层级活动拆解为步骤和任务,并按从左到右的叙事流程组织起来,从而可视化用户旅程。利用它在产品、设计和工程团队之间建立共识,根据用户工作流确定功能优先级,并发现用户体验中的缺口或机会。

这不是待办事项列表,而是一份战略性产物,展示用户如何达成目标,并据此指导我们构建什么。

输入

最适合提供: 要绘制地图的产品或用户工作流。 也很有帮助: 主要用户、你所理解的端到端叙事、可放入地图的现有待办事项,以及发布目标。

随调用一同提供的任何内容——技能名称之后的文本、粘贴的上下文,或附加的 ARGUMENTS: 行——都视为已回答的问题。请使用这些信息,并跳过其中已涵盖的问题;不要重复询问。

空手而来?也没问题。 此技能会询问你要绘制谁的旅程,以及他们想完成什么,然后构建主干 → 任务 → 切片。

调用示例: 为我们的费用报销流程绘制故事地图,从收据采集到报销,并为试点项目划分 MVP 切片。

核心概念

Jeff Patton 故事地图框架

故事地图由 Jeff Patton 创立,它以二维结构组织工作:

横轴(从左到右): 随时间展开的用户旅程

  • 主干: 用户执行的高层级活动
  • 步骤: 各项活动中的具体操作
  • 任务: 完成每个步骤所需的详细工作

纵轴(从上到下): 优先级和发布版本

  • 顶部各行: 必需任务(MVP / 第 1 次发布)
  • 底部各行: 有则更好的任务(未来发布版本)
故事地图结构
Segment → Persona → Narrative (User's goal)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[Activity 1] → [Activity 2] → [Activity 3] → [Activity 4] → [Activity 5]
     ↓              ↓              ↓              ↓              ↓
  [Step 1.1]     [Step 2.1]     [Step 3.1]     [Step 4.1]     [Step 5.1]
  [Step 1.2]     [Step 2.2]     [Step 3.2]     [Step 4.2]     [Step 5.2]
  [Step 1.3]     [Step 2.3]     [Step 3.3]     [Step 4.3]     [Step 5.3]
     ↓              ↓              ↓              ↓              ↓
  [Task 1.1.1]   [Task 2.1.1]   [Task 3.1.1]   [Task 4.1.1]   [Task 5.1.1]
  [Task 1.1.2]   [Task 2.1.2]   [Task 3.1.2]   [Task 4.1.2]   [Task 5.1.2]
  [Task 1.1.3]   [Task 2.1.3]   [Task 3.1.3]   [Task 4.1.3]   [Task 5.1.3]
  ...            ...            ...            ...            ...
这样做的好处
  • 以用户为中心: 围绕用户目标而非工程模块组织工作
  • 建立共识: 产品、设计和工程团队都能看到同一段旅程
  • 明确优先级: 顶部任务 = MVP,底部任务 = 未来迭代
  • 识别缺口: 缺失的步骤或任务一目了然
  • 规划发布: 绘制水平“发布线”以界定范围
反模式(这不是什么)
  • 不是甘特图: 这不是项目管理工具,而是用户旅程可视化
  • 不是功能列表: 活动不是功能,而是用户行为
  • 不是静态的: 随着对用户了解的加深,故事地图也会不断演进
适用场景
  • 启动新产品或重大功能
  • 让相关方对用户工作流达成共识
  • 根据用户需求确定待办事项的优先级
  • 区分 MVP 和未来发布版本
  • 帮助新团队成员了解产品愿景
不适用场景
  • 微不足道的功能(对于已经理解的内容,无需绘制地图)
  • 用户工作流不断变化的情况(地图有助于稳定工作流)
  • 替代用户故事(地图为用户故事提供依据,而非取而代之)

应用

步骤 1:定义背景

完整的填写结构请使用 template.md。

细分群体

你要为谁构建产品?

### Segment:
- [Specify the target segment, e.g., "Small business owners using DIY accounting software"]

质量检查:

  • 具体明确: 不要写“用户”,而要写“企业 IT 管理员”或“自由职业设计师”

用户画像

请提供该细分群体中用户画像的详细信息(参考 skills/proto-persona/SKILL.md)。

### Persona:
- [Describe the persona: demographics, behaviors, pains, goals]

示例:

  • “Sarah,35 岁的自由职业平面设计师,同时管理 5~10 个客户项目;她在发票和收款跟踪方面遇到困难,希望减少行政事务上的时间,把更多时间用于设计”

步骤 2:定义叙事

用户想要完成什么?请将其表述为一条 Jobs-to-be-Done 陈述(参考 skills/jobs-to-be-done/SKILL.md)。

### Narrative:
- [Concise narrative of the persona's objective, e.g., "Complete a client project from kickoff to final payment"]

质量检查:

  • 关注结果: 不要写“使用产品”,而要写“按时交付客户项目并收到款项”
  • 一句话: 如果需要超过一句话,范围可能太宽泛

步骤 3:识别活动(主干)

列出该角色为完成叙事而参与的 3-5 个高层级活动。这些活动构成地图的主干。

### Activities:
1. [Activity 1, e.g., "Negotiate project scope and pricing"]
2. [Activity 2, e.g., "Execute design work"]
3. [Activity 3, e.g., "Deliver final assets to client"]
4. [Activity 4, e.g., "Send invoice and receive payment"]
5. [Activity 5, optional]

质量检查:

  • **按顺序进行:**活动按顺序发生(从左到右)
  • **用户行为:**描述用户做什么,而不是产品提供什么
  • **3-5 个活动:**太少会过于简化,太多则会让人不知所措

步骤 4:将活动拆分为步骤

针对每项活动,列出 3-5 个步骤,详细说明如何开展该活动。

### Steps:

**For Activity 1: [Activity Name]**
- Step 1: [Detail step 1, e.g., "Review client brief"]
- Step 2: [Detail step 2, e.g., "Draft project proposal"]
- Step 3: [Detail step 3, e.g., "Negotiate timeline and budget"]
- Step 4: [Optional step 4]
- Step 5: [Optional step 5]

**For Activity 2: [Activity Name]**
- Step 1: [Detail step 1]
- Step 2: [Detail step 2]
...

质量检查:

  • **可执行:**每个步骤都是用户会执行的操作
  • **可观察:**可以观察到某人执行该步骤
  • **顺序合理:**步骤遵循自然顺序

步骤 5:将步骤拆分为任务

针对每个步骤,列出必须完成的 5-7 项任务。

### Tasks:

**For Activity 1, Step 1: [Step Name]**
- Task 1: [Detail task 1, e.g., "Read client brief document"]
- Task 2: [Detail task 2, e.g., "Identify key deliverables"]
- Task 3: [Detail task 3, e.g., "Note budget constraints"]
- Task 4: [Detail task 4, e.g., "Clarify timeline expectations"]
- Task 5: [Detail task 5, e.g., "List open questions for client"]
- Task 6: [Optional task 6]
- Task 7: [Optional task 7]

**For Activity 1, Step 2: [Step Name]**
- Task 1: [Detail task 1]
...

质量检查:

  • **细化:**任务是具体的小型操作
  • **面向用户或幕后操作:**两者都要包含(例如“发送邮件”和“收到确认”)
  • **可确定优先级:**你将按垂直方向确定任务的优先级(顶部 = 必备,底部 = 可有可无)

步骤 6:按垂直方向确定优先级

按优先级从上到下排列任务:

  • **顶部各行:**MVP / 第 1 次发布(必备)
  • **中间各行:**第 2 次发布(重要但非关键)
  • **底部各行:**未来 / 可有可无

画出水平的“发布分界线”以划分范围。


步骤 7:识别缺口和机会

检查地图并思考:

  • 是否缺少步骤或任务?
  • 是否有我们尚未解决的痛点?
  • 是否有让用户惊喜的机会?
  • 所有活动的衔接是否合乎逻辑?

示例

请参阅 examples/sample.md 中完整的故事地图示例。


常见误区

误区 1:活动是功能,而非用户行为

表现:“活动 1:使用仪表盘。活动 2:生成报告。”

**后果:**你描绘的是产品,而不是用户旅程。

**解决方法:**改为描述用户行为:“活动 1:监控项目进度。活动 2:向利益相关者总结工作。”


误区 2:活动太多

**表现:**主干上有 10 项以上活动

**后果:**地图会变得过于复杂,失去重点。

**解决方法:**合并活动。如果你有 10 项活动,很可能是把活动和步骤混为一谈了。目标是列出 3-5 项高层级活动。


误区 3:任务过于笼统

表现:“任务 1:做那件事”

**后果:**笼统的任务无法确定优先级,也无法估算。

**解决方法:**描述具体:“任务 1:在‘账单寄送至’字段中输入客户邮箱地址。”


误区 4:忽略垂直优先级排序

**表现:**所有任务都处于同一层级——未区分 MVP 和未来版本

**后果:**无法明确先构建什么。

**解决方法:**明确确定优先级。画出发布分界线。果断取舍,明确哪些内容属于 MVP。


误区 5:孤立地绘制地图

**表现:**PM 独自创建地图,然后向团队展示

**后果:**团队缺乏共同的归属感和理解。

**解决方法:**协作绘制地图。与产品、设计和工程团队一起举办故事地图工作坊。


参考资料

相关技能
  • skills/proto-persona/SKILL.md — 为故事地图定义角色
  • skills/jobs-to-be-done/SKILL.md — 为叙事和活动提供依据
  • skills/user-story/SKILL.md — 地图中的任务将转化为用户故事
  • skills/problem-statement/SKILL.md — 问题陈述为叙事提供框架
外部框架
  • Jeff Patton,User Story Mapping(2014)——故事地图技术的起源
  • Teresa Torres,Continuous Discovery Habits(2021)——机会解决方案树(可与故事地图互为补充)
Dean 的作品
  • 用户故事地图提示词(改编自 Jeff Patton 的方法)
来源
  • 改编自 https://github.com/deanpeters/product-manager-prompts 仓库中的 prompts/user-story-mapping.md。

技能类型: 组件 建议文件名: user-story-mapping.md 建议路径: /skills/components/ 依赖项: 引用 skills/proto-persona/SKILL.md、skills/jobs-to-be-done/SKILL.md、skills/user-story/SKILL.md、skills/problem-statement/SKILL.md

评论

支持 Markdown