用户故事地图
- 一个个用户故事让人只见树木不见森林。看不到全景图。
- 用户故事地图就是在讲大故事的同时进行拆分。
通过故事地图帮助团队看到全景图,做到既见树木又见森林。
边讲边记
思考–>记录–>讲解–>摆放
故事地图六步法
- 理清问题。用户是谁,带来什么价值。
- 构建全景图。广度优先,尝试描述所有内容,包括用户的痛苦和喜悦。
- 探索。向深度拓展,讨论其他类型的用户,这些人又要做什么,哪些环节会出问题。
- 制定发布策略。要发布的东西总是太多,聚焦于业务目标的达成和目标用户。获取达成目标的最小方案。
- 制定学习策略。最小方案还只是假设,通过故事地图和讨论,识别风险,逐步了解到对用户最有价值的东西。
- 制定开发策略。早期先聚焦于关键技术问题和开发风险。
Ro Jeffries的3C原则(《极限编程实施》)
- 卡片(Card)
在一堆卡片上写下你期望的软件特性
- 交谈(Conversation)
聚在一起对要开发的软件进行深入讨论
- 确认(Confirmation)
对完工条件进行确认
故事卡片
- 卡片的内容
简短的标题
描述信息
故事序号
估算、规模或预算
优先级
度量
依赖
状态
日期
- 提升效果的检查单
讨论用户角色who
讨论要做的功能what
讨论为什么why
讨论软件之外的事
讨论异常情况
讨论更好的解决方案
讨论方案如何实现
讨论开发周期
碎石行动—故事大小很重要
- 将故事拆分成两三天时间内完成开发和测试的模块,是一个非常好的经验法则。
- 从用户角度看,大小规模适当的故事,是一个可以满足某一需要的故事。
- 从开发团队角度看,大小规模适当的故事,是一个只需要几天时间就可以完成开发和测试的故事。
- 从业务角度看,大小规模适当的故事,是一个有助于实现业务目标的故事。
- 无法预测出开发启动之后会遇到哪些情况,为每天都开展频繁的非正式故事对话做好准备。
- 与用户一起评估,与业务干系人一起评估。
如何创建故事
- 分步骤写出故事
- 组织情节
- 探索替代故事
- 提取故事地图的主干
- 切分出能够帮你达成特定目标的任务
分步骤写出故事
- 列举所有的任务,任务就是我们所做的事
- 使用目标层级,汇总小任务或者分解大任务
- 使用摘要性的任务来描述一堆任务
比如,“晨间洗漱”这个事情,可以列出:
洗澡
刮胡子
刷牙
其他事务
组织情节
- 按照从做到右的顺序将卡片放好,先发生的在左,后发生的在右。
探索替代故事
- 细节、替代、变化、异常,构成故事地图的主题。
比如:
普通的一天
美妙的一天
忙乱的一天
提取主干
- 在一系列可以达成一个更大目标的任务上方放一张颜色不同的便签,叫做活动,由活动组成故事地图的主干。
切分出能帮你达成特定目标的任务
- 使用一条横线从做到右划分整个故事地图,将特定目标不需要的卡片移动到横线下放
- 使用切分来识别和特定结果相关的所有任务和细节
可以逐步达成的开发计划
迭代计划就是:正好、更好、最好的游戏