Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >4步曲: 如何用故事点估计用户故事?

4步曲: 如何用故事点估计用户故事?

原创
作者头像
Warren2Lynch
修改于 2019-01-11 08:21:43
修改于 2019-01-11 08:21:43
3.1K0
举报
文章被收录于专栏:UMLUML

有多种方法可以估算应用开发项目。一种方法是使用所谓的故事点。虽然这种类型的估算可能不是最简单的,但使用Story Points进行估算可为应用开发者和客户带来好处。

故事点方法使用历史数据将一个项目的特征与先前类似项目的特征进行比较,以生成精确估计。

Story Point Estimation - 故事点估计
Story Point Estimation - 故事点估计

上图中的齿轮具有不同的尺寸并具有独特的属性 - 就像软件开发项目中的功能一样。想象一下,没有办法测量圆的大小。我们怎样才能确定每个齿轮的确切尺寸?我们可以使用故事点!

让我们通过Story Points了解估算过程的每一步。

第1步 - 确定基础故事

故事点是一个复杂的单元,包括三个要素:风险,复杂性和重复。

故事点的复杂性和重复
故事点的复杂性和重复

为了找到我们的基本故事,我们搜索一个与用户故事的完成定义的内部标准相对应的基本任务,并为其分配一个故事点。这将是我们的基础故事。

第2步 - 创建估算矩阵

有两种类型的尺度用于创建估计矩阵:线性尺度(1,2,3,4,5,6,7 ......)和斐波那契序列数(0.5,1,2,3,5,8,13 ... )。

在RubyGarage中,我们使用Fibonacci序列号。我们这样做是因为人们非常善于比较尺寸,而不是估计绝对值,例如小时数。1和2之间的差异似乎微不足道。但是,1和5之间的差异是显而易见的。

当使用Fibonacci序列号进行估算时,我们创建一个矩阵,其中包含每个序列号及其相关故事的行。然后,我们收集所有故事并开始将它们分成几行,将故事相互比较以及与其他已完成的故事进行比较。请注意,我们的基本故事已经在第一行的此矩阵中,其值为一个故事点。

这是我们的一个矩阵:

用户故事的故事点排名
用户故事的故事点排名

第3步 - 筹划扑克

为每个故事分配故事点,我们召开一次会议,让所有参与该项目的专家聚在一起玩规划扑克。

Planning Poker是一种基于共识的估算技术,用于估算产品积压。它可以与各种估算单位一起使用,但我们使用带有故事点的规划扑克。

扑克计划卡
扑克计划卡

以下是它的工作原理:

规划扑克评估流程

  1. 每个估算器获得一组卡片;
  2. 所有估算人员都会选择积压项目,讨论功能并提出问题;
  3. 当一个特征被充分讨论时,每个估计者私下(为了估计目标)选择一张卡来代表他或她的估计;
  4. 当所有评估者都做出估计时,他们会同时显示他们的卡片。如果所有估算值都匹配,则估算工具会选择另一个积压项目并重复相同的过程。当估算不同时,估算人员会讨论该问题以达成共识。

在规划扑克结束时,我们已经填写了整个矩阵。我们的任务按实现它们所需的故事点数分成几行。最后,我们将每个积压项放在适当的行中。一排可以有几个故事。

带故事点的用户故事列表
带故事点的用户故事列表

第4步 - 规划Sprint

现在我们有一个尺寸估计,您可能想知道我们如何将这些尺寸转换为工时估算。不幸的是,在第一次冲刺完成之前我们无法做到这一点。当第一个冲刺正在进行中时,我们可以跟踪团队的速度。一旦sprint结束,我们就会知道团队每个sprint可以完成多少个Story Points。我们使用这些数字来预测团队在下一个冲刺中的表现。

当我们根据故事点估算所有积压任务时,我们可以了解完成项目需要多少冲刺。最后,我们可以将这些抽象单位转换为真实的日历时间表。

RubyGarage使用Story Points进行估算,因为它很快并且有助于我们理解我们以前从未遇到的故事所需的相对努力。故事点帮助我们为客户提供更准确的估算。经验和参考点比抽象的工时更好。

其他Scrum参考

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
敏捷项目管理实战:Scrum/Kanban/Lean/SAFe方法和工具解析
在传统瀑布式项目管理中,需求定义、设计、开发、测试等环节如同工业流水线般严格线性推进,展现出强大的流程控制能力。不过今天的软件迭代周期已压缩至周级乃至日级,瀑布式管理难以应对需求的快速变化,敏捷式项目管理则以“小步快跑+快速响应”的动态机制,成为项目团队应对不确定性的有效方法论。
你掉的是这个金键盘还是银键盘
2025/06/19
3300
敏捷项目管理实战:Scrum/Kanban/Lean/SAFe方法和工具解析
敏捷里的故事点 Story point
故事点是敏捷项目管理和开发中的一种抽象的度量单位,用于估计实现一个或多个用户故事的复杂度,它是对工作量的一种描述方式。一个故事点就是一个数字,透过这个数字告诉整个团队用户故事的复杂度。复杂度包括功能的难易程度、风险和花多大的功夫。
PM吃瓜
2023/03/02
1.8K0
敏捷里的故事点 Story point
谁在S​​crum中创建产品Backlog项目或用户故事?
谁在S​​crum中创建产品Backlog项目或用户故事?这个问题比听起来要复杂一些。首先,您可能会说产品Backlog Item可以包括: 用例 (use cases),史诗 (epics),用户故事 (user stories),甚至是错误 (bugs),或者是产品积压 (Product Backlog) 中的时间盒 (timeboxed) 研究任务 (research tasks)。
Warren2Lynch
2018/12/13
1.6K0
谁在S​​crum中创建产品Backlog项目或用户故事?
(十三)什么是用户故事?
用户故事(user story)是个用来确定用户和用户需求的简短描述,用户故事是从用户的角度来描述用户苛求得到的功能。一个好的用户故事包括三个要素:
砖家认证
2019/12/30
7.1K0
(十三)什么是用户故事?
【敏捷5.3】敏捷计划的概念与估算
我们已经准备好了用户故事,也了解到了用户故事的一些相关的知识。这个时候,就要开始敏捷计划的制定。我们将学习到一系列的概念和方法用于敏捷中计划的制定。或许他们和 PMP 中关于计划的概念和形式有很大的不同,但这也是敏捷和传统项目管理最典型的区别。
硬核项目经理
2023/03/03
3910
【敏捷5.3】敏捷计划的概念与估算
相较于Scrum, 我更推崇精益Kanban,帮助团队建立价值交付流,识别瓶颈问题
Agile是一套理论和原则,就像天边的北极星。Devops是一种软件开发和运维团队间自动化和集成过程的方法。当实现Agile和Devops方法时,Kanban和Scrum提供了管理这些复杂工作的不同的实践。 简单来说,Kanban和Scrum是进行敏捷开发或项目管理工作的两个不同的策略或者方法论。
DevOps在路上
2023/08/29
6780
相较于Scrum, 我更推崇精益Kanban,帮助团队建立价值交付流,识别瓶颈问题
(十五)什么是敏捷估算?
估算是对交付计划产品所需的成本、进度、投入或者技能进行的预测。对项目的可行性、商业案例的投资回报进行评估非常有必要。
砖家认证
2020/01/09
3K0
(十五)什么是敏捷估算?
最佳实践:怎样评估软件开发时间
据统计,有差不多 70% 的项目都没能准时完成,你的项目也可能是其中之一。总是 delay 是不是很烦人?你也希望在满足市场需求的同时,还能按时交付项目,对不对?正因如此,软件开发时间的估算,应该是构建研发流程时优先考虑的事项。我们编制了一份清单,列出了为获得贴近实际情况的软件开发时间,你需要做的一些基本动作和步骤。下面我们就来具体谈谈,如何估算开发时间。
dys
2021/10/19
1.8K0
最佳实践:怎样评估软件开发时间
做好Sprint规划原来这么简单
Sprint规划是scrum中用来启动Sprint的事件。迭代规划的目标是定义Sprint可以交付的内容,以及如何完成各项工作。迭代规划需要整个scrum团队合作完成。
Worktile
2019/07/10
1.2K0
做好Sprint规划原来这么简单
3. 软件测试——开发模型(瀑布模型,螺旋模型,递增迭代,敏捷开发)
软件工作的范围不仅仅局限在程序编写,而是扩展到了整个软件生命周期; 【软件开发的周期:、需求分析、设计、实现、测试、安装部署、运行维护】
小雨的分享社区
2022/10/26
9920
3. 软件测试——开发模型(瀑布模型,螺旋模型,递增迭代,敏捷开发)
一只猪的 Scrum 开发经历
Scrum 是一种方法论,有很多术语、定义、规则。 本文不是讲 Scrum 理论,而是从应用的角度,讲述我自身 Scrum 实践的经验体会。理论运用到实践中时,一定会有所变化。本文中根据我切身经历,对
CSDN技术头条
2018/03/26
1.6K0
一只猪的 Scrum 开发经历
敏捷(Scrum)和功能点(FPA):朋友还是敌人?
许多组织已经了解到,通过使用功能点对其进行估计,他们可以更好地控制软件项目。同时,我们看到越来越多的组织采用敏捷的工作方式,通常是通过应用 Scrum。最大的问题是功能点是否仍然存在。
Hopestarit
2021/11/22
6140
PMI Agile Certified Practitioner (PMI-ACP)7A备考心得
考完PMP之后,想对项目管理有更好的了解,就用备考PMI-ACP,一次通过,以下是备考心得:
freesan44
2022/10/08
8020
PMI Agile Certified Practitioner (PMI-ACP)7A备考心得
SAFe大规模敏捷框架功能&SAFe敏捷支持工具
Leangoo领歌覆盖了敏捷项目研发全流程,包括小型团队敏捷开发,Scrum of Scrums大规模敏捷。
一只爱生气
2023/07/24
4830
Scrum团队如何运作? - 简要指南
Scrum团队是一组合作的人员,他们共同提供所需的和承诺的产品增量,其中包括三个角色:
Warren2Lynch
2019/01/02
2.1K0
Scrum团队如何运作? - 简要指南
如何做好敏捷开发下的需求管理?免费敏捷工具
传统的瀑布工作模式使用详细的需求说明书来表达需求,需求人员负责做需求调研,根据调研情况编制详细的需求说明书,进行需求评审,评审之后签字确认交给研发团队设计开发。在这样的环境下,需求文档是信息传递的主体,也是一份契约。
一只爱生气
2023/07/26
3600
《硝烟中的Scrum和XP》第4章 我们怎样制定sprint计划
第4章 我们怎样制定sprint计划 sprint计划会议非常关键,应该算是Scrum中最重要的活动。只是它执行得不好,整个sprint甚至都会被毁掉 举办sprint计划会议,是为了让团队获得足够的信息,能够在几个星期内不受干扰地工作,也是为了让产品负责人能对此有充分的信心 sprint计划会议会产生一些实实在在的成果 sprint目标 团队成员名单(以及他们的投入程度,如果不是100%的话) sprint backlog(即sprint中包括的故事列表) 确定好sprint演示日期 确定每日scrum会
yeedomliu
2020/04/01
5740
《硝烟中的Scrum和XP》第4章 我们怎样制定sprint计划
敏捷方法面试题-2023面试题库
顾名思义,敏捷方法论是一组方法和实践,其中软件开发和项目管理发生在称为冲刺的短开发周期中交付以客户为中心的产品。这是一种迭代方法,每次迭代都经过专门设计,体积小且易于管理,以便可以在特定的给定时间段内交付。敏捷方法对随时间变化的需求持开放态度,并鼓励最终用户不断反馈。这是最受欢迎的方法,因为在此过程中,客户也参与其中,以便他们可以获得有关其产品的更新,并确保他们是否满足其要求。
jack.yang
2025/04/05
730
大规模敏捷之Big Room Planning
本文要点 Big room planning是每季度举行一次的为期两天的计划会议,参与人员包括所有项目和团队成员 如果正确地推进,让100个或更多的人在一起做计划是可能的,有利的 人们一边在所在的团队中做计划,一边和其他团队协作计划 Big room planning让每个人有个总体了解,知道其他人在做什么,了解谁和谁之间有依赖关系 达成共识和总体方向(总体规划,the master plan)是一个成功的big room planning的先决条件 大规模计划 大规模计划,包括切片和总体规划,是帮助你应对
用户1263954
2018/04/04
1K0
大规模敏捷之Big Room Planning
【敏捷5.1】规划的核心:用户故事
一看到这个标题,是不是感觉马上就激动起来了,自从讲完敏捷框架之后,我估计大家最激动的地方就在今天这篇文章了。用户故事这个东西吧,现在已经是在敏捷中用来描述需求的通用工具了。但凡提敏捷,必须要问用户故事。之前我们学习过的 待办事项列表 ,迭代冲刺事项列表 之类的内容,记录的都是用户故事。在冲刺中,白板、任务板上贴的,都是用户故事。那么,真正的用户故事你知道怎么写么?
硬核项目经理
2023/03/03
2940
【敏捷5.1】规划的核心:用户故事
推荐阅读
相关推荐
敏捷项目管理实战:Scrum/Kanban/Lean/SAFe方法和工具解析
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档