User Story Mapping 是Jeff Patton倡导的一项技术。它为咱们提供了一种将整个产品或服务设想为用户完成的一系列任务的方法。app
从纯粹的实际角度来讲,它涉及构建一个用户故事网格,这些故事在标题下排列,表明用户在产品中的体验。这能够经过团队成员之间的一系列对话迭代完成。所以,第一次尝试可能看起来像这样,用户故事按其各自的功能分组(有些可能称这些顶级功能'Epics')。工具
在这里,咱们将产品的高级功能(骨干,若是您愿意)分解为组件用户故事。很容易看出每一个用户故事属于哪一个功能,所以每一个用户故事都在整个产品的上下文中呈现,而不单单是列表中的项目。网站
虽然这种方法有助于组织咱们的想法 - 它已经比简单的故事列表更具信息性 - 它实际上尚未构成故事地图,由于它没有考虑用户旅程的流程。spa
开发故事地图
让咱们经过想象一个简单的电子商务网站让咱们的例子更加具体,产品愿景板提到了三个特征:3d
最初的故事地图可能以下所示:blog
咱们有“产品页面”功能,其中包含与下面列出的功能相关的用户故事,一样适用于“产品搜索”和“结账”功能。可是这些故事尚未特别好地发展,而且没有迹象代表每一个故事的重要性。ip
例如,用户须要在订购以前阅读产品说明,但这是在他们阅读评论以前或以后发生的吗?哪一个为用户提供更多价值?项目管理
在进行了更多的研究并收集了来自利益相关者的更多意见以后,另外一次迭代可能看起来像这样。开发
请注意,咱们经过将其中的一些细分为更小的部分来改进咱们的用户故事,咱们引入了一个新的维度,故事按照用户旅程中的位置排列,咱们已经开始安排最高的咱们地图顶部附近的优先故事rem
在这个方向上进一步发展,很容易看出咱们最终是如何得出一张地图,指出在前几个版本中须要包含哪些故事。
故事地图是一个用于需求收集的4级层次结构。故事地图从不一样来源(即积压)收集的用户特征集合开始,这些用户特征将经过执行某些任务做为活动来实现。这些任务能够转换为史诗,而后转换为软件开发的用户故事。
故事地图结构:用于实现目标的用户功能(待办事项记录)>活动>任务>史诗>故事
为了促进敏捷开发,Story Map能够接收从不一样来源识别的用户功能。如上所述,它多是来自EA合同的要求,来自项目管理计划的工做包或特殊分析(例如 - 是和未来的分析),使用图中的用例与敏捷软件开发集成等等。
假设咱们已经从多个不一样的来源累积了故事地图积压中的用户特征列表。经过执行某些任务,将实现用户功能做为活动。每一个任务均可以进一步分解为几个史诗(更大的用户故事)。每一个史诗都包含一个用户故事列表,这些用户故事被分解为适合适合sprint迭代的大小。如下是规划故事地图所涉及的步骤:
请注意:咱们能够考虑从左到右安排实施的优先级,从顶部到底部安排用户故事。