本文从「用户故事」的概念、准则、创建用户故事地图到建立用户故事卡的方法无一不包,帮你完整掌握「用户故事」这个知识点。
1. 什么是用户故事?
- 迭代开发的一种工具;
- 代表了可开发的一个工作单元;
- 帮助我们跟踪一个功能的生命周期。
2. 什么是用户故事地图?
- 一个有风向的图表;
- 横轴为时间线,放置延时间线的用户故事;
- 纵轴为优先级,自上而下;
- 覆盖所有用户故事,表达需求全景。
3. 为什么使用用户故事?
从设计赋能角度来讲,用户故事地图可以帮助设计师从产品计划层面,提升产品用户体验,避免沉入细节之中;找到一种落地产品思维的方法,即平衡用户价值、产品价值、开发成本三者的关系;关注项目和产品,设计出落地、有效的产品方案,避免理想化。
从项目管理角度,用户故事地图可以解决以下问题:
- 只见树木不见森林,重要内容埋没在细节中,难以排列优先级;
- 无法看到版本贡献功能的完整价值流;
- 无法方便的使用迭代方法跟踪、优化内容,确定版本计划和目标。
从团队协作角度,用户故事可以降低沟通与达成共识的成本,将关注力更多集中在产品上。
4. 用户故事简述
- 作为一个(角色):谁要使用这个功能。
- 为想要(功能):需要完成什么样的功能。
- 以便于(价值):为什么需要这个功能,带来什么样的价值(用户价值和组织价值)。
构建用户故事地图需要:时间线、用户活动、用户任务、用户故事、故事地图结构。用于实现目标的用户功能 > 活动 > 任务 > 史诗 > 故事。
- 将用户要素从左向右拖动到地图的顶行。地图顶行中的每个功能都是呼叫用户活动。
- 创建完成活动所需的许多步骤,称为用户任务。
- 这些用户任务中的每一个都可以分解为多个史诗。
- 在史诗下,可以定义用户故事列表,其大小适合放入 sprint。
1. 用户故事的3C原则
3C 原则是由 Ron Jeffries 提出的,它包括三个部分:
- Card 卡片,用来简要描述软件特性或改进点;
- 描述的内容简洁、词汇含义统一,项目成员不会对同一内容有差异性理解;
- 这些卡片用于后续的沟通、对需求内容的组织和排列优先级。
Conversation 交谈 ,与 Product Owner(或客户)交谈来明确细节。
- 卡片的内容是由团队在沟通中获得,而非由同一个人输出或更新的,不然它与传统的需求分析方法无异;
- 项目成员需要一起就卡片内容进行讨论。在复杂逻辑中,梳理出清晰的需求脉络,并在这一过程中,达到共识和理解的统一。
Confirmation 确认,每个故事应具有验收标准(验收条件),能够确认被正确完成。
- 以始为终,先行确认以怎样的结果,来判断开发任务的完成;
- 它保证每个故事都是独立的、完整的逻辑,可以单独交付;
- 它为驱动测试驱动开发、行为驱动开发和持续集成提供可能。
2. 用户故事原则
- I 独立的(Idependent):独立且完整,不依赖于其他任何用户故事;
- N 可谈判的(Negotiable):引导团队跟干系人之间对话和谈判的介质。在任何时候,用户故事都可以被改写甚至丢弃。一个用户故事不会像石头一样固定不变,直到它将要在接下来的 Sprint 里被实现;
- V 有价值的(Valuable):需要将价值给干系人,不论是最终用户还是采购者;
- E 可估算的(Estimable):团队需要能够粗略地估算出完成用户故事所需工作量规模;
- S 小规模的(Small):以一个大的「占位符」开始其生命周期。随着时间的推移,当人们对用户故事所表达的愿望的复杂度更加了解时,这个较大的「占位符」就将被拆分成小的用户故事。当最重要的那些用户故事将进入 Sprint 被实现并交付时,它们需要变得足够小,这样才能在一个 Sprint 里被完成。
- T 可测试的(Testable)):一个用户故事必须提供必要的信息,清楚地界定了故事的验收标准,这样才能在它完成时判断是否验收。
用户故事地图是一个用于需求收集的 4 级层次结构。故事地图从不同来源(即积压)收集的用户特征集合开始,这些用户特征将通过执行某些任务作为活动来实现。这些任务可以转换为史诗后,转换为软件开发的用户故事。
1. 产品定义
一般是在故事编写工作坊准备阶段,首先由 PD 主导产出,主要有几点内容:
- 产品的目标用户
- 解决了哪些问题
- 用户目标
- 产品目标
2. 梳理骨干故事
写出不同颗粒度的故事,需要设计师把控故事的大小,这段故事可以再往下梳理一层颗粒度更小一点的故事。这样骨干故事就有两层,一级故事和二级故事,故事的发生从左至右是一个叙事流。
3. 拆分故事
在刚刚梳理的每一个二级故事下面做停留,去拆分二级故事获取更多细节内容。项目组会围绕这个故事写出很多细节来。按照以下几个维度对细节进行归类,分别是:故事细节、想法、痛点、机会、情绪。其中情绪可以通过固定的问题获得,也可以通过用户想法、用户的痛点结合主观判断。
4. 沟通确认
这里我们的故事已经变得很丰满,甚至变得臃肿,所以沟通确认变得极为重要。我们在这步需要花费相对多的时间,大家对内容进行对标、充足讨论,把公认的留下来,无用的剔除掉。同时可以区分要做的故事细节的优先级。
卡与迭代的关系:
- 卡是迭代开发的一个工具;
- 卡代表了一个可以的工作单位;
- 帮助我们跟踪一个功能的生命周期。
管理卡片:
- 估计工时
- 分配工作
- 追踪进度
如何使用?
- 书写故事卡;
- 将卡放在墙内(物理墙/数字墙);
- 领卡需要与 QA/BA 澄清需求(一人不能有两张正在做的卡);
- 故事卡完成后需要做 Desck Check(block里的卡片要尽快消灭)。
IPM:Iteration Plan Meeting,迭代计划会议主要是跟客户保持沟通与信息更新的会议。
- 下一个迭代的 Story;
- 对下一个迭代的期望;
- 团队的人员可用性;
- 风险的评估总结。
敏捷宣言里面有一条:客户协作优于合同谈判。在 Scrum 团队中有一个角色叫做产品负责人,他的核心职责是确保业务需求的清晰和透明,保证开发团队对业务有足够的了解,并将这些待完成的业务需求(Story)按照优先级排列出来,按照任务卡的方式来驱动团队的开发。
IPM 的主要产出是下一个迭代中完成的 Story,这些 Story 即为下一个 Story 要完成的目标,通过敏捷看板工具来管理它们。
Sprint:业务流,Sprint1,Sprint2,Sprint3-N,已交付的故事。业务流就是史诗故事,每个史诗故事一个泳道。Sprint1,Sprint2,Sprint3-N 里面是不同史诗故事拆分出来的用户故事,并且根据优先级放到了不同的 Sprint 里面,横向的泳道代表的是史诗故事和史诗故事拆分的子故事的对应关系。
burn down chart:燃尽图,一个sprint 内,人/时是一个比较固定的值。在这个时间框架充分安排开发任务,每天进行时间结算,绘制时间燃尽图。项目成员通过燃尽图获知时间进展,若项目燃尽所用时间与预期时间契合,则需求时间预估和安排合理,若不契合则需要在下一个 sprint 进行调整。
Retro(回顾):即 retrospective 的简写,团队针对目前状态总结,目的为保持好的方面及加强,做的欠佳的方面一起讨论改进措施,并尽力落实。在实践中摸索出适合团队的最佳实践,引导团队和个人不断自我完善,追求卓越。
- 确认构建安全的环境;
- 建立几项总结指标(well,less well,suggestion,action)前三项列出看法,第四项针对前三总结;
- 一个点写在一张便利贴,分栏贴上墙;
- 将同一类的问题归纳起来,总结出相应的解决措施;
- Iteration 栏中的 sticker 指派并落实。
欢迎关注作者微信公众号:「Design Thinker」
复制本文链接 文章为作者独立观点不代表优设网立场,未经允许不得转载。
发评论!每天赢奖品
点击 登录 后,在评论区留言,系统会随机派送奖品
2012年成立至今,是国内备受欢迎的设计师平台,提供奖品赞助 联系我们
AI绘画艺术风格设计
已累计诞生 649 位幸运星
发表评论 已发布4条
↓ 下方为您推荐了一些精彩有趣的文章热评 ↓