一文说通用户故事点数是什么?

一文说通用户故事点数是什么?
 

 第26期:一文说通用户故事点数是什么?

用户故事点数是一种采用相对估算法进行估算的一种工具,一般采用斐波那契数列表征用户故事里说的大小,采用0 1 2 3 5 8 13这样的一些数字来表征用户故事的大小,那么用户故事点说到底是什么?

 我们在实现过程当中看到很多人理解的都是错的。为了能够澄清什么是用户故事点数特编写本文,以澄清视听。

01

用户故事点数和绝对工时没有关系

用户故事点数是一种相对估算的单位,它表征了一个用户故事和另一个用户故事之间的开发规模的相对关系,而并不表示它的绝对规模。

用户故事点数和实际的工时没有任何的比例关系。

以镶地砖为例,镶两块地砖的工作量是镶一块地砖的工作量的两倍,这个和是张师傅来镶还是李师傅来镶是没有任何关系的。

图片

图片

在一些开发团队当中,会把用户故事点数和工时进行一个比例设定,这个设定是错的。

这个设定会导致了工作量失去了比例关系,而依赖于个人的生产能力。

同一个功能,不同水平的师傅来干,工时需要的不同,如果绑定这个关系则失去了相对估算的意义。

02

用户故事点数表示了团队的效率提升

每个迭代可以交付的用户故事点数合计表示了团队的速率。 

   

图片

如果按照绝对工时作为度量单位,那么一个人一周只有40小时的工作时间,这是一个无法通过个人努力或者团队努力而改变的客观约束。

那么,在绑定故事点数和绝对工时的前提条件下,就无法表征出团队的持续改进情况。

而采用和绝对工时无关的故事点数是可以表征出来团队的改进情况的。

比如说,一个团队,每周原来可以生产100个故事点数,而经过改进之后,在原来的同样的估算体系下,已经可以每周交付120个故事点数的任务。那么这表示,团队提升了20%。

图片

但是如果采用了故事点数和绝对工时绑定的情况下。

原来一个团队,一周可以交付200个工时(5人x40小时)的任务,现在一周可以交付240个小时的任务,那么反而表明这个团队通过加班来完成任务,实际效率下降。

这是一种错误的估算方式。

所以,采用这种把用户故事点数和绝对工时绑定比例关系的团队,有这么几种原因:

  1. 不懂什么是用户故事点数

  2. 对持续改进没有追求

这样的团队,趁早放弃敏捷比较好。

【特殊情况】

如果遇到特殊情况,上述速率公式仍然可以表征团队的实际效率。比如,工程师小张这个迭代休假了,团队从5个人变成4个人,交付的总故事点数从100变成了80。

但是速率没有变化,以两周迭代,每人80小时为例。

图片

速率没有变化

【不同的工程师速率就是不同的】

的确,不同的工程师开发速率是不同的,很多人对此有疑惑。

不同的工程师开发同一个功能效率可能差上几倍乃至几十倍。相对估算是不是表征不了这个特点。

不是的。

假设小张的速率是,每天可以交付8个故事点数,而小李可以交付12个。

那么

  

图片

可以很客观的反应二者的效率差,也能够表明改进的着力点。

之后小张的速率提升了,那么整个团队就提升了。

03

杂项要不要纳入工时统计

团队除了开发,还有很多杂项,那么统计工时作为分母的时候,要不要把这些杂项纳入工时统计。

和加班一样,所有团队花费的工时都要纳入统计。

同样的,如果遇到节假日,工时缩短也一样处理,这样才知道应该怎么进行改进,比如杂项占用时间太多,那就应该想办法减少杂项所耗费的时间。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/630349.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用人人开源renren-fast快捷搭建后台管理系统

https://gitee.com/renrenio/renren-fast https://gitee.com/renrenio/renren-fast 初始化项目数据库 导入项目运行 期间遇到的坑 024-04-25 01:30:27.638 ERROR 25228 --- [ main] com.alibaba.druid.pool.DruidDataSource : init datasource error, url: jdbc:…

Postman基础功能-接口返回值获取

大家好,之前给大家分享关于Postman的接口关联,我们平时在做接口测试时,请求接口返回的数据都是很复杂的 JSON 数据,有着多层嵌套,这样的数据层级在 Postman 中要怎么获取呢? 接下来给大家展示几个获取 JSO…

计算机系列之排序算法

20、排序算法 1、直接插入排序(这里以从小到大排序为例) ◆要注意的是,前提条件是前i-1个元素是有序的,第i个元素依次从第i-1个元素往前比较,直到找到一个比第i个元素值小的元素,而后插入,插入…

免费SSL证书:适合你的网站吗?

随着互联网的发展,安全性已经成为了网站运营不可或缺的一部分。而SSL证书作为保障网站数据传输安全的重要手段,被越来越多的网站所采纳。然而,对于很多小型网站或者个人博客来说,付费购买SSL证书可能会带来一定的经济压力。因此&a…

Linux---编辑器vim的认识与简单配置

前言 我们在自己的电脑上所用的编译软件,就拿vs2022来说,我们可以在上面写C/C语言、python、甚至java也可以在上面进行编译,这种既可以用来编辑、运行编译,又可以支持很多种语言的编译器是一种集成式开发环境,集众多于…

UIKit之图片浏览器

功能需求 实现一个图片浏览器,点击左右按钮可以切换背景图,且更新背景图对应的索引页和图片描述内容。 分析: 实现一个UIView的子类即可,该子类包含多个按钮。 实现步骤: 使用OC语言,故创建cocoa Touch类…

解决kali Linux安装后如何将语言修改为中文

开启虚拟机 用root用户进入终端 进入终端执行dpkg-reconfigure locales命令 选择en_US.UTF-8 UTF-8选项,按空格键将其取消。 选择zh_CN.UTF-8 UTP-8,按空格选择,按tab键选择ok。 选择zh_CN.UTF-8字符编码,按tab键选择ok&#xff0…

【JAVA】嵌入式软件工程师-2025校招必备-详细整理

一、Java 基础 1.JDK 和 JRE 有什么区别? jdk:java development kit jre:java runtime Environment jdk是面向开发人员的,是开发工具包,包括开发人员需要用到的一些类。 jre是java运行时环境,包括java虚拟机…

IDEA的妙用

IDEA 安装破解 复制JetbrainsIdesCrack-4.2.jar到安装目录下 修改安装目录下的bin目录的idea64.exe.vmoptions: 最后一行添加:-javaagent:E:\develop\JetBrains\IntelliJ IDEA 2018.3.5\bin\JetbrainsIdesCrack-4.2.jar(注意:使用自己的路…

(2)双指针练习:复写零

复写零 题目链接:1089. 复写零 - 力扣(LeetCode) 给你一个长度固定的整数数组 arr ,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移。 注意:请不要在超过该数组长度的位置写入元素。请对输入…

WebSocket or SSE?即时通讯的应用策略【送源码】

最近在研究H5推送,发现除了我们常用的WebSocket以外,其实还有一种协议也能实现H5推送,那就是SSE协议。 而且,当前主流的大模型平台,比如ChatGPT、通义千问、文心一言,对话时采用的就是SSE。 什么是SSE协议…

基于HTML5和CSS3搭建一个Web网页(一)

倘若代码中有任何问题或疑问,欢迎留言交流~ 网页描述 创建一个包含导航栏、主内容区域和页脚的响应式网页。 需求: 导航栏: 在页面顶部创建一个导航栏,包含首页、关于我们、服务和联系我们等链接。 设置导航栏样式,包括字体、颜色和背景颜…

识物扫一扫识别植物怎么做?6个软件教你轻松识别植物

识物扫一扫识别植物怎么做?6个软件教你轻松识别植物 识别植物可以通过专门的植物识别应用来实现。以下是六款可以帮助您轻松识别植物的软件: 1.一键识别王:这款软件有着强大的植物识别服务,用户可以通过拍照或上传图片来识别植物…

算法学习笔记(5.0)-基于比较的高效排序算法-归并排序

##时间复杂度O(nlogn) 目录 ##时间复杂度O(nlogn) ##递归实现归并排序 ##原理 ##图例 ##代码实现 ##非递归实现归并排序 ##释 #代码实现 ##递归实现归并排序 ##原理 是一种基于分治策略的基础排序算法。 1.划分阶段:通过不断递归地将数组从中点处分开&…

迷宫游戏(c++)

我们来玩一个迷宫游戏,尝试走一下面的迷宫。 迷宫游戏 我们用一个二维的字符数组来表示前面画出的迷宫: S**. .... ***T 其中字符S表示起点,字符T表示终点,字符*表示墙壁,字符.表示平地。你需要从S出发走到T&#xf…

【全开源】JAVA共享自习室共享学习室无人系统支持微信小程序+微信公众号+H5

开启智能学习新时代 随着社会的快速发展,人们对于学习环境的需求也日益增加。为满足这一需求,我们推出了“共享自习室系统源码”,旨在通过智能化的管理方式,打造高效、便捷、舒适的共享学习空间。 核心功能 自习室预约&#xf…

6. 网络编程-网络io与select、poll,epoll

https://0voice.com/uiwebsite/html/courses/v13.7.html 首先看看这个学习计划 网络、网络编程、网络原理基础组件,20个。中间件 Redis ,MySQL,Kafka,RPC,Nginx开源框架(解决方案)业务开发(工程师开发&am…

YOLOv9训练自己的数据集:最新最详细教程

一、代码及论文链接: 代码链接:https://github.com/WongKinYiu/yolov9/tree/main 论文链接:https://arxiv.org/abs/2402.13616 二、使用步骤 1.1 虚拟环境配置 创建一个虚拟环境用于单独对yolov9的环境进行配置: conda crea…

Java中的数组、Set、List、Map类型的互相转换总结

序言 数组、Set、List、Map是Java语言非常常用的几种数据类型,他们之间存在着千丝万缕的联系。关于底层的数据结构我这里就不再多说啦,直接从应用出发,总结他们之间的转换方法,并给出推荐方法。 大家可以点赞收藏等到需要的时候…

传说中的运维门户设计

在IT服务管理这片广阔天地中,运维门户如同一位技艺高超的魔术师,轻轻一挥手,便将纷繁复杂的运维世界化繁为简,编织成一张便捷高效、触手可及的网络。它不仅是ITSM系统中不可或缺的一环,更是连接用户与技术世界的桥梁&a…