创建用户故事地图(User Story Mapping)的8个步骤

[小编]上周六了解了用户故事地图后,小编又查阅了一些资料,找到了以下这篇关于如何组织用户故事地图规划的文章,分享给大家。也希望大家如果有好的实践,也可以留言一起交流。

原文地址:http://winnipegagilist.blogspot.jp/2012/03/how-to-create-user-story-map.html



感谢Jeff Patton和其他人的大力推广,用户故事地图已经成为敏捷需求规划中的一个流行方法。用户故事地图可以将你的backlog变成一张二维地图,而不是传统的简单列表。用户故事地图可以解决以下问题:

– 让你更容易看清backlog的全貌
– 为新功能筛选(grooming)和划定优先级提供了更好的工具,帮助你做出决策
– 便于使用静默头脑风暴模式和其他协作方式来产生用户故事
– 帮助你更好的进行迭代增量式开发,同时确保早期的发布可以验证整体架构和解决方案
– 为传统的项目计划提供了一个更好的替代工具
– 有助于激发讨论和管理项目范围
– 允许你从多个维度进行项目规划,并确保不同的想法都可以得到采纳

创建用户故事地图的8个步骤

  1. 召集到3-5名对产品非常熟悉的人员参与。3-5人听上去像是个魔法数字,实际上是的。因为更少的人意味着你无法获得足够的建议,而更多人则会因为讨论和协调降低会议效率。
  2. 使用静默头脑风暴模式,让每个人在便签纸上写下自己认为重要的“所要做的事情”也就是 用户任务(user task)。每个人都用同样颜色的便签来书写自己的用户任务描述,这个阶段不要互相讨论。一旦大家都基本完成了准备,让每个人轮流大声读出自己的内容,并把便签纸全部放置在桌面上,这时如果出现重复的内容就可以省略掉:
    1. 根据你的产品规模,这个过程可能需要3-10分钟的时间;你可以观察大家的行为来判断是否需要停止。
    2. 基本上每张便签都会以一个动词开头,如:发送邮件,创建联系人,添加用户等。
    3. 这些便签组成了一级用户故事,Jeff Patton称为用户任务(user tasks),它们组成了用户故事地图上的 “行走的骨骼” (the walking skeleton)部分。
    4. 这时可以提示参与者:我们只用了很少的时间就完成了需求的收集过程,而且有些内容你可能没有想到,而其他人帮你想到了。
  3. 然后,让大家将桌面上所有的便签进行分组,将类似的任务分为一组,其他的的类似
    1. 这个过程最好也让大家采用静默模式进行,因为这样做会更快。如果发现重复的内容,就略过
    2. 基本上分组会很容易完成
    3. 这时同样观察每个人的行为,判断大家是否已经做完,基本上这个过程需要2-5分钟
  4. 选择另外一个颜色的便签,对每个组进行命名,并贴在每组便签的上部
  5. 对这些分好组的便签进行排序,一般按照用户完成操作的顺序,从左到右摆放
    1. 如果大家无法决定顺序,那么顺序可能没有那么重要(明显)。
    2. 这一组便签,Jeff Patton称为 用户活动 (User Activities)
    3. 这时你的地图应该类似于
  6. 现在,按照 “行走的骨骼” 用户行为 这行开始讲述用户故事,确保你没有遗漏任何用户行为和用户任务。这时一般由组织者进行讲述,其他人提出意见,甚至可以让最终用户来参与讨论。
  7. 这时,我们已经完成了用户故事地图的基本框架;可以在每个用户任务下面添加更加细节的 用户故事(User Stories)了。这时仍然建议使用静默头脑风暴的模式来进行第一轮用户故事的产生,同时借助如Persona和Scenario等方式协助完成这个过程。一旦你完成了用户故事的创建,就可以开始划定你的 发布计划(Releases)
    1. 一般我习惯在第一个发布中只选择每个用户任务的2-3个用户故事。这对于帮助大家排定优先级和范围将很有帮助。
    2. 基本上我们不必使用用户故事的标准句法(As a …)来书写这些故事,因为每张便签都处于我们的地图的特定位置,大家很容易识别其所处的场景和角色。
  8. 最后,针对第一个发布的所有用户故事进行分解,确保我们的第一个发布越小越好,基本上你需要保证在1-2个迭代后就可以发布你产品的第一个版本。

用户故事地图样例

这里是一个电子邮件系统的用户故事地图

– 第二行所包含的内容就是“大家在电子邮件系统所要做的事情”,包括类似:书写邮件,发送邮件,创建约会等等。
– 第一行对这些事情进行了分组
– 黄色的便签的第一行包含了最小化的用户故事,如:写邮件只包括发件人,收件人,标题,内容和发送取消按钮。其他如支持RTF,HTML格式,添加附件,从通讯部获取联系人邮件地址等,都不在此行,放入更靠下的便签中。
– 黄色便签上的更小的蓝色和橘黄色便签表示了不同的状态,比如:蓝色代表完成,橘黄色代表进行中(wip),这样你就可以看到项目的进展

现在如果我们专注于从左到右完成第一行的黄色便签,我们就可以确保很快发布一款包含了最最基本功能的邮件系统。这样我们就可以验证我们的邮件系统整体架构(发送邮件同时确保其可以被阅读)可行。同时也可以帮助我们对系统的功能进行端到端的测试,确保我们可以从用户处获取到反馈,知道我们是否解决了它们的问题(提供了商业价值)。注意我们在第一行没有包含“删除邮件”这一功能,因为并不一定要完成所有用户任务的开发。

用户故事地图规范

– 第2个步骤中的便签表示 用户任务(user tasks),蓝色便签
– 第3-4个步骤中的便签表示 用户行为(user activies),橘色便签。Jeff 称这两行的内容为 “行走的骨骼”(walking skeleton)和 “主干”(backbone)
– 用户故事(user stories),黄色便签在每个用户任务下自上而下排列,便于我们确定优先级
– 一般来说用户会按照从左到右的顺序来使用你的系统(用户故事地图)



请关注微信公众号 devopshub,获取更多关于DevOps研发运维一体化的信息

时间: 2024-10-05 04:40:43

创建用户故事地图(User Story Mapping)的8个步骤的相关文章

用户故事地图(User Story Mapping)之初体验

北京这几日的天儿真是好的出奇,白天风和日丽,晚上繁星漫天:在这样一个周六的下午,小编参加了一次北京敏捷社区(微信号:Agile1001)组织的活动:<用户故事地图User Story Mapping 实战工坊>,虽然对用户故事地图是第一次接触,但也有一些小小的体会,回到家中是在按捺不住想写下来分享给大家. 今天的活动由<百度方法+>发起人,软件工程团队负责人李涛引领大家进行实战体验,他也是<用户故事地图>这本书中文版的译者. <用户故事地图>这本书的原作者 

每周一书《用户故事地图》分享!设计、产品、开发必读!

内容简介用户故事地图作为一种有效的需求工具,越来越广泛地应用于开发实践中.本书以用户故事地图为主题,强调以合作沟通的方式来全面理解用户需求,涉及的主题包括怎么以故事地图的方式来讲用户需求,如何分解和优化需求,如果通过团队协同工作的方式来积极吸取经验教训,从中洞察用户的需求,开发真正有价值的.小而美的产品和服务.本书适合产品经理.用户体验设计师.产品负责人.业务分析师.IT项目经理.敏捷教练和精益教练阅读和参考,也更适合用作企业培训手册,打造高效能的团队协作能力. 作者介绍Jeff Patton在

21天敏捷打卡-用户故事地图

上图是基于敏捷故事的一个看板或者说敏捷流程中的一种,没有什么比亲身投入的效果更好.用户.组员需求方通过自身的投入.表达以便于让团队成员更加了解其想法和统一组员的想法.用户故事是一种思维,通即故事思维,运用故事的元素进行思考和设计,解决问题.达到某种效果.用户故事设计中核心是通过故事传递信息,引起共鸣,决绝问题. 讲故事不是一个简单工作,需要优秀的组织能力,清晰的表达方式,达到听众清晰明了我们想表达的.这里笔者建议,如果平时和人交流的时间太少,可以通过书写博客等方式,组织自己的中心思想,让听众知道

用户故事地图对应到Epic及其缺点

??用户故事地图,提供了2维的角度来分析用户故事,直观,更加有利于优先级的表达. 在理解用户故事地图时,需要注意其作者的用词跟一般的用户故事不一致,因此要注意跟普通的用户故事用词之间的对应关系. 推荐一般理解如下: 一幅用户故事地图展现1个史诗Epic User Acitivites(Backbone)行,可以理解为对史诗Epic的一级功能分解 User Tasks(Walking Skeleton)行,可以理解为对史诗Epic的二级功能分解.这里千万注意,这与一般用户故事的任务完全不是一回事,

怎么用leangoo做需求管理?(用户故事地图)

用户故事是在敏捷开发中表达需求的主要方式,我们在做敏捷开发的时候都有需求池的概念,在Scrum中这个需求池就是产品backlog,需求池里面是条目化的需求,每一条通常是一个用户故事.按照Scrum的定义,产品backlog是一个基于价值强制排序的队列,团队按照价值的高低,顺序地交付需求. 在开发的过程中,团队会逐步的细化产品backlog,为了保证短平快的交付,高优先级的用户故事会被分解为较小的粒度.但是这样带来了一个问题,对于那些规模稍大一些的产品来讲,故事的数量就会很多,故事拆分后通常会有只

UDAD 用户故事驱动的敏捷开发 – 演讲实录

敏捷发展到今天已经在软件行业得到了广泛认可,但大多数敏捷方法都是为了解决某一特定问题而总结出来的特定方法或实践,一直缺乏一个可以将整个开发过程串接起来的成体系的方法.用户故事驱动的敏捷开发(User Story Driving Agile Development – UDAD)就是这样一套方法和实践,希望能够在软件开发的各个过程都提供最有效的方法让希望采用敏捷的团队能够有一个整体的方法论作为指导. 如何你对敏捷还缺乏了解,可以阅读以下文档: 关于敏捷开发 UDAD中采用了以下几个已经被广泛认可的

用户故事驱动的敏捷开发 – 1. 规划篇

敏捷开发现在已经不是新鲜事物了,我们都从各种渠道听到过不同的团队实施敏捷的胜果,听的时候觉得很美,回到家就发现那都是别人家的团队,结合自己的情况一看就发现问题一大堆.就算是最终打算一试,也经常会不知如何开始.这就是我希望编写这份文档的原因,能够找到一个遵循的敏捷项目管理模型,虽然我们都知道没有一个放之四海而皆准的方法,但在更高的层面上我觉得这仍然是可行的.也就是说,管理模型是一致的,但是其中采用的方法可能各有不同,最终目标是唯一的:打造一支可以快速适应变化的高质量团队,并输出高质量的产品! 今天

用户故事驱动的敏捷开发 – 2. 创建backlog

本系列的第一篇[用户故事驱动的敏捷开发 – 1. 规划篇]跟大家分享了如何使用用户故事来帮助团队创建需求的过程,在这一篇中,我们来看看如何使用这些用户故事和功能点形成产品backlog.产品backlog是敏捷开发中用来管理需求列表,排定优先级,形成迭代计划,组织开发/测试和交付过程的工具.可以说,产品backlog是一个敏捷团队管理开发过程的核心,所有的活动和交付物都围绕backlog来进行.一旦需求明确,我们就必须在开发过程中持续的跟踪backlog内容的实现和交付过程,确保我们的想法可以按

使用Leangoo玩转故事地图

用户故事是在敏捷开发中表达需求的主要方式,我们在做敏捷开发的时候都有需求池的概念,在Scrum中这个需求池就是产品Backlog,需求池里面是条目化的需求,每一条通常是一个用户故事.按照Scrum的定义,产品backlog是一个基于价值强制排序的队列,团队按照价值的高低,顺序地交付需求. 在开发的过程中,团队会逐步的细化产品backlog,为了保证短平快的交付,高优先级的用户故事会被分解为较小的粒度.但是这样带来了一个问题,对于那些规模稍大一些的产品来讲,故事的数量就会很多,故事拆分后通常会有只