3. 识别用户角色:角色地图、涉众分析、主角色与副角色划分
用户故事的核心公式是“作为<角色>,我希望<功能>,以便<价值>”。其中“角色”是故事成立的起点——选错角色,故事的目标和价值就会全部偏移。很多产品经理在转写用户故事时,习惯于直接写“用户”二字,导致后续的验收标准无法对齐真实场景。本章将系统讲解如何通过角色地图、涉众分析和主副角色划分,精准锁定每一个用户故事的“主语”。
常见误区:一提到“角色”就写“普通用户”或“管理员”两种角色。真实产品的角色往往超过5种,遗漏副角色会导致需求链路断裂,上线后才发现运营、审核、通知等支撑角色缺失。
3.1 为什么用户角色识别如此重要?
用户角色识别不是简单的“起名字”,而是对业务场景中所有参与者的系统化梳理。角色识别的好坏直接决定:
- 故事完整性:是否覆盖了所有需要与系统交互的人或系统。
- 需求颗粒度:角色越精准,故事拆解越细,验收标准越可测。
- 优先级排序:主角色的故事优先级最高,副角色的故事支撑主链路。
- 沟通效率:团队统一角色语言,避免“你说的用户和我说的用户不是同一个人”。
3.2 角色地图:可视化角色关系
角色地图(Role Map)是一种用节点+连线表达角色之间协作、依赖、汇报关系的轻量工具。它帮助产品经理在15分钟内梳理出完整的角色全景,避免遗漏。
角色地图构建五步法:
- 穷举涉众:列出所有与产品发生直接或间接交互的人/系统/角色。
- 去重聚类:将相同职责、相同场景的角色合并(如“班主任”和“助教”可归为“教学管理角色”)。
- 定义目标:每个角色在场景中最想完成的一件事。
- 连线关系:用箭头表示“使用/依赖/通知/审核”等关系。
- 标记主副:在角色节点上标注“主”或“副”,区分核心与支撑。
案例:在线教育平台的角色地图片段
主角色:学生(听课、交作业)、老师(授课、批改)
副角色:助教(辅助批改)、教务管理员(排课、统计)、系统通知机器人(自动发送提醒)、家长(查看学习报告)
关系:学生→老师(听课依赖),助教→老师(批改汇报),教务→老师(排课通知)
主角色:学生(听课、交作业)、老师(授课、批改)
副角色:助教(辅助批改)、教务管理员(排课、统计)、系统通知机器人(自动发送提醒)、家长(查看学习报告)
关系:学生→老师(听课依赖),助教→老师(批改汇报),教务→老师(排课通知)
下面是用文本模板表示的角色地图结构,适合在PRD文档中直接使用:
角色地图模板(在线教育平台)
┌─────────────────────────────────────────┐
│ 主角色(Primary Actors) │
│ ├─ 学生(听课、做题、查看成绩) │
│ └─ 老师(创建课程、授课、批改作业) │
├─────────────────────────────────────────┤
│ 副角色(Secondary Actors) │
│ ├─ 助教(批量批改、回复答疑) │
│ ├─ 教务管理员(排课、统计报表) │
│ ├─ 家长(查看学习报告、接收通知) │
│ └─ 系统通知机器人(自动发送提醒) │
├─────────────────────────────────────────┤
│ 角色关系 │
│ 学生 ──听课──→ 老师 │
│ 助教 ──汇报──→ 老师 │
│ 教务 ──排课──→ 老师 │
│ 系统通知 ──提醒──→ 学生 │
└─────────────────────────────────────────┘
3.3 涉众分析:发现所有相关方
涉众分析(Stakeholder Analysis)是角色地图的前置步骤,目的是在绘制角色地图之前,先系统化地识别所有可能影响产品或被产品影响的人和组织。
| 涉众类别 | 典型角色举例 | 分析要点 |
|---|---|---|
| 直接用户 | 学生、老师、客服 | 高频使用系统完成核心任务 |
| 间接用户 | 家长、教务管理员 | 不直接操作系统,但依赖系统输出 |
| 决策者 | 产品负责人、业务方总监 | 对需求优先级和上线决策有最终话语权 |
| 支撑角色 | 系统对接方、数据运维、审核团队 | 不参与核心流程,但缺失会导致功能不可用 |
| 被动接收者 | 被通知人、数据报表查看者 | 只接收信息,不主动操作 |
实践技巧:在用户访谈阶段,除了访谈主角色,至少访谈2-3个副角色。很多关键需求都来自“看起来不重要”的支撑角色。例如在线教育平台的“助教”角色,往往能提出老师想不到的批量操作需求。
3.4 主角色与副角色划分
划分主角色和副角色不是简单的“谁重要谁就主”,而是基于角色在用户故事中的目标驱动程度。主角色是“主动发起操作并直接获得价值”的角色,副角色是“响应主角色或提供支撑”的角色。
| 对比维度 | 主角色(Primary Actor) | 副角色(Secondary Actor) |
|---|---|---|
| 行为发起 | 主动触发操作 | 响应触发或被动接收 |
| 目标完成 | 直接获得业务价值 | 间接支持价值实现 |
| 使用频率 | 高频(每日/每周) | 中低频(每周/每月) |
| 故事优先级 | 高(P0/P1) | 中低(P1/P2) |
| 典型例子 | 学生提交作业、老师发布课程 | 助教批量批改、教务生成报表 |
划分决策树:当不确定某个角色是主还是副时,依次回答三个问题:
- 该角色是否主动打开系统并执行操作?——否 → 副角色
- 该角色完成后是否直接获得业务结果?——否 → 副角色
- 该角色的操作是否被其他角色依赖?——是 → 主角色
避坑提醒:不要把“系统”或“第三方服务”直接当作副角色忽略。虽然它们不是真人,但在用户故事中应当以“系统管理员”或“集成服务”的角色身份出现,否则技术需求会被遗漏。
3.5 实践案例:在线教育平台的用户角色识别
我们以一个“作业提交与批改”场景为例,展示从涉众分析到主副角色划分的完整过程。
Step 1:涉众分析清单
场景:在线教育平台 - 作业提交与批改
涉众列表:
├─ 学生(直接用户)
├─ 老师(直接用户)
├─ 助教(间接用户)
├─ 教务管理员(决策者)
├─ 家长(被动接收者)
└─ 系统通知服务(支撑角色)
Step 2:角色地图构建
绘制角色地图,识别角色间关系:学生提交作业后,老师或助教进行批改,教务管理员查看批改完成率,家长接收成绩通知,系统通知服务在截止日期前发送提醒。
Step 3:主副角色划分
- 主角色:学生(提交作业的核心发起者)、老师(批改作业的核心执行者)
- 副角色:助教(辅助批改,响应老师分配)、教务管理员(查看统计,不直接操作批改)、家长(接收通知,不主动触发)、系统通知服务(自动触发,但无业务目标)
Step 4:用户故事转写示例
主角色故事:
作为【学生】,我希望【在截止日期前提交作业附件】,以便【老师能及时批改并给出成绩反馈】。
副角色故事:
作为【助教】,我希望【接收老师分配的待批改作业列表】,以便【分担批量批改任务,缩短反馈周期】。
作为【教务管理员】,我希望【查看各科目作业批改完成率报表】,以便【评估教学执行进度并及时调整】。
关键结论:同一个功能(作业批改)至少拆出3个用户故事,分别对应学生、老师、助教三个角色。如果只写“作为用户,我希望提交和批改作业”,会导致助教的批量操作需求、教务的统计需求全部遗漏。
3.6 交付物模板:角色识别清单
在每个PRD的“用户角色”章节,建议使用下面模板进行结构化输出,方便团队对齐和后续需求追溯。
PRD角色识别清单模板
产品名称:___________ 版本:___________ 日期:___________
1. 涉众分析清单
┌──────────────┬──────────────┬──────────────┬──────────────┐
│ 涉众类别 │ 角色名称 │ 核心目标 │ 参与阶段 │
├──────────────┼──────────────┼──────────────┼──────────────┤
│ 直接用户 │ │ │ │
│ 间接用户 │ │ │ │
│ 决策者 │ │ │ │
│ 支撑角色 │ │ │ │
│ 被动接收者 │ │ │ │
└──────────────┴──────────────┴──────────────┴──────────────┘
2. 角色地图(关系描述)
主角色:___
副角色:___
关键依赖线:___→___, ___→___
3. 主副角色划分结果
├─ 主角色:___(原因:___)
├─ 副角色:___(原因:___)
4. 风险提示
遗漏角色风险:___
角色冲突风险:___
课程交付成果:学完本章后,你应能独立完成任意业务场景的角色识别,并输出包含涉众分析、角色地图、主副划分的《角色识别清单》。这份清单将直接作为第4章“用户故事场景拆分”的输入。