用户故事实践作为敏捷转型推进过程中的关键一环,既对需求的管理和输出方式产生影响,也会对迭代方式和执行产生影响,对敏捷实践而言具有非常重要的作用,实践的效果也直接或间接地影响着敏捷实践的效果。

关于用户故事的定义,一般是这样描述:

用户故事(User
Story)是一段简单的功能描述,以用户或者使用者的角度,写下有价值的功能(Functionality/Feature)。与其说它是规格文件(Documentation),不如说它代表客户的一个需求而已。

用户故事描述了客户或用户如何使用产品,它从用户的角度进行表达。另外,用户故事特别有助于捕捉特定的功能,例如搜索产品或进行预订。

用户故事是描述对用户有价值的功能,好的用户故事应该包括角色、功能和商业价值三个要素。

用户故事通常的格式为:作为一个<角色>, 我想要<功能>, 以便于<商业价值>。

一个好的用户故事包括三个要素:
1.角色:谁要使用这个功能。
2.功能:需要完成什么样的功能。
3.价值:为什么需要这个功能,这个功能带来什么样的价值。
用户故事通常按照如下的格式来表达:
英文:As a , I want to , so that .
中文:作为一个<角色>, 我想要<功能>, 以便于<商业价值>

想必不少人都知道用户故事的六个特征,即INVEST:

独立的(Independent):我们要尽量避免故事间的相互依赖。在对故事排列优先级时,或者使用故事做计划时,故事间的相互依赖会导致工作量估算变得更加困难。通常我们可以通过两种方法来减少依赖性:1.将相互依赖的故事合并成一个大的、独立的故事;2.用一个不同的方式去分割故事。
可讨论的(Negotiable):故事卡是功能的简短描述,细节将在客户团队和开发团队的讨论中产生。故事卡的作用是提醒开发人员和客户进行关于需求的对话,它并不是具体的需求本事。一个用户故事卡带有了太多的细节,实际上限制了和用户的沟通。
对用户或客户有价值的(Valuable):用户故事应该很清晰地体现对用户或客户的价值,最好的做法是让客户编写故事。一旦一个客户意识到这是一个用户故事并不是一个契约而且可以进行协商的时候,他们将非常乐意写下故事。
可估算的(Estimable):开发团队需要去估计一个用户故事以便确定优先级,工作量,安排计划。但是让开发者难以估计故事的问题来自:1.开发人员缺少领域知识;2.开发人员缺少技术知识;3.故事太大了。
小的(Small):一个好的故事在工作量上要尽量小,最好不要超过10个理想人/天的工作量,至少要确保的是在一个迭代或Sprint中能够完成。用户故事越大,在安排计划,工作量估算等方面的风险就会越大。
可测试的(Testable):故事必须是可测试的。成功通过测试可以证明开发人员正确地实现了故事。如果一个用户故事不能够测试,那么你就无法知道它什么时候可以完成。一个不可测试的用户故事例子:用户必须觉得软件很好用。

因此,如何拆分用户故事也显得尤为重要。通常的方法有基于流程步骤的切分,基于业务操作、不同业务规则、简单/复杂、数据类型、工作量、体验质量等六种维度的切分,同时还需要考虑非功能需求-延迟优化等特殊情形。
在拆分用户故事的过程中,需要考虑优先级的确定,通常从经济价值、开发成本、获取新知识的重要性、故事之间的依赖关系、开发新功能所减少的风险等几个因素综合考虑。
此外,还需要掌握用户故事估算方法。

实际操作过程中,常用的方法可以采用规划扑克的方法进行估算。

除此之外,还有T恤尺码、点投票、水桶体系、三分法、找相似、排序方法等用户故事估算方法,具体可以根据不同团队的实际需要进行选择。





敏捷转型行动笔记:用户故事实践相关推荐

  1. 敏捷转型行动笔记:研发流程及规范建设

    企业进行数字化转型,需要提升软件研发效能,效率.质量是永恒的主题,提升软件研发效能的关键是要提升持续交付能力. 软件研发效能是我们关注的重要指标,主要从交付效率(实现端到端快速交付.及早交付).交付质 ...

  2. DevOps系列之 —— 持续规划与设计(四)敏捷需求管理【用户故事 敏捷估算】

    DevOps系列之 -- DevOps概览(一)软件产业和交付模式发展趋势 DevOps系列之 -- DevOps概览(二)新型软件技术及交付模式 DevOps系列之 -- DevOps概览(三)De ...

  3. 15.用户故事与敏捷方法——Scrum与用户故事笔记

    00.本用户故事源自于基线编程,所以故事能够很自然地狱基线编程的其他时间形成一个体系.不过,用户故事作为一种管理需求的方法,也可以应用到其他类型的软件过程中. 01.一轮迭代过程是一种持续改进的过程. ...

  4. 敏捷转型行动笔记:内部敏捷教练实践

    在敏捷转型的推进过程中,抓好内部敏捷教练的培养是敏捷转型成功的基本保证,也是敏捷转型的源源不断的动力所在. <敏捷教练>一书的作者之一,瑞秋·戴维斯(Rachel Davies)对敏捷教练 ...

  5. 用户故事与敏捷方法笔记 --- 用户故事

    用户故事 用户故事描述了对用户.系统或软件购买者有价值的功能. 用户故事应该具备以下特点: 1) 独立的:应该避免故事间的项目依赖.在对故事排列优先级时,或者做计划时,故事间的相互依赖会导致问题. 2 ...

  6. 敏捷转型行动笔记:启动

    从今年2月份开始,本人所在的研发部门打算启动敏捷&DevOps转型,对于我们这样的传统项目型公司而言,目标是什么.道路怎么走.从哪里开始.具体如何做等等问题都会一一摆在我们的面前.为了记录我们 ...

  7. 【敏捷5.2】用户故事的层次和用户故事地图

    用户故事的层次和用户故事地图 经过上一篇的学习,你对用户故事有了一个大概的了解了吗?用户故事这个东西,是需要多多练习的,并且最好是有经验的 Scrum Master 能够带着你一起学习并建立合适的用户 ...

  8. 敏捷转型行动笔记:价值流分析

    价值流分析是敏捷转型前期非常重要的一环,也是最基础的一项必做工作. 关于价值流,百度百科中这样定义: 价值流是指从原材料转变为成品.并给它赋予价值的全部活动,包括从供应商处购买的原材料到达企业,企业对 ...

  9. 敏捷转型行动笔记:敏捷导入课程培训

    对于毫无任何敏捷开发经验的团队而言,在经历前期的初始学习了解后,要想快速地迈上敏捷转型的道路,仍然少不了要引入外部培训,通过导入课程让转型团队逐步建立精益-敏捷的思维方式,较为深刻地理解敏捷的价值观和 ...

最新文章

  1. XPath crash course note
  2. GitHub-jekyll静态博客快速构建与优化--jekyll serve --incremental --profile
  3. Tensorflow—继续优化,使MNIST准确率98%以上
  4. 未来智能实验室成立,建设世界第一个智能系统智商评测和趋势研究机构
  5. flash java 通信_FLASH与服务器通讯 (JAVA)
  6. gRPC源码分析2-Server的建立
  7. 计算机房的英语用谐音怎么读,“人机对话”学英语 发音不准就过不了电脑关...
  8. java null错误事例_java – aspectJ示例中的nullpointer异常
  9. 【Java】优雅停机时的一点思考
  10. PHP生成HTML的技术原理
  11. Java程序性能优化
  12. [RK3399][Android7.1] 调试笔记 --- 虚拟声卡驱动添加
  13. 聊聊世界编程语言排行榜的事
  14. 台式计算机能分享热点吗,如何在电脑上开热点 台式电脑开热点的方法有哪些...
  15. C语言练习-day25
  16. jQuery读取JSON数据(jQuery调用JSON数据学习第二天)
  17. 谁的青春不疯狂-----致青春
  18. redis设置expire以及删除机制
  19. 系统分析师学习笔记(六)
  20. 2022“杭电杯”中国大学生算法设计超级联赛(1)1003 Backpack个人题解

热门文章

  1. Uniapp微信小程序视频全屏播放功能极简实现法
  2. Apache Maven 最全教程,7000 字总结!
  3. PLUG AND PLAY LANGUAGE MODELS: A SIMPLE APPROACH TO CONTROL LEDTEXT(PPLM):代码深入理解(二)—PPLM_Discrim
  4. 配色神器ColorCube
  5. Centos7 kvm环境制作qcow2 格式镜像
  6. 快递停发区域查询(需指定快递公司) 接口说明
  7. css实现跳动的心形图案
  8. 云和恩墨加入京东云“云筑计划”,共筑PaaS新生态
  9. [数分提高]2014-2015-2第6教学周第1次课讲义 3.3 Taylor 公式
  10. Warshall算法C语言实现