One of the most common questions we get is whether to estimate in time or points. It seems like points are used only “to avoid thinking about time” and they are essentially the same. Wrong.

Let us give you the travel metaphor to give you an idea about how we are thinking.

The Travel Metaphor

“Mom, dad, are we there yet?” Recognize that expression? Having problems answering it? Well, you have the same problem giving an answer to your kids as well as to your project manager.

Both will hold you accountable for your answer! And even though you have taken the trip to the grandparents a hundred times, you cannot be sure on how long it will take this time.

You know the distance quite well, but there are a multitude of things that can happen along the way. It may start to rain so you have to lower speed. Someone needs to pee an extra time. You forgot to fill up gas. There’s an accident and you are forced to take a detour.

So you answer “if nothing happens it will take about half an hour, kids.” If something happens, do they care? You said half an hour, didn’t you?

Time is derived from velocity and distance

Your travelled distance per hour will be the same every time only if your speed is constant, which it is not. It depends on a number of things like weather, traffic or vehicle.

Compare story estimation with travelling. Your sprint velocity compares to your travelling speed, your story points to the distance and time will be of course the same.

Story points describes the complexity of the problem and that will be fairly constant over time, while time is a function of that complexity and your sprint velocity.

In the same manner, the distance between two cities will remain fairly constant over time but the time it takes to travel between them will vary.

But is not sprint velocity constant? We hope not. We hope that you will increase your velocity over time as you trim down all waste, increase team play and other improvements.

Relative estimation and reference stories

It is hard to estimate in absolute terms, such as out of the blue tell the distance between two cities. But you are surely able to tell if that distance is longer or shorter than the distance between two other cities. E.g. if you know the distances from London to Rome, you can estimate roughly the distance to Paris. This is how we work as humans. We can estimate in relative terms quite well but are not good at absolute estimation.

That is why we have reference stories on the wall when we estimate. A reference story is an example of a story that we can fairly well relate to. A new story can be compared to the reference stories and we can tell whether it is larger or smaller than each one of them.

Our mobile reference stories on a board.

You should have at least three reference stories. One small, one medium and one that is the largest you would allow in a sprint. Stories bigger than that gets sliced.

You use the reference stories to reason about your estimation with your teammates whenever your estimates diverge.

Also, your estimations will be more consistent over time with reference stories. If you estimate without them, you tend to lower your estimations as you go faster. Like if the distance travelled would shrink as your speed increased.

Remember, we are comparing complexity, which is expected to be stable. Not the time a story takes to reach done. That is different thing which depends on your current sprint velocity.

Why estimate time?

With what has been said,  why should anyone consider time estimation at all? Well, it is often time that matters the most. But with relative estimation, if you know the velocity, you can derive the time. For instance, if the velocity varies between 10 and 12, and each sprint is 2 weeks, you know that in 4 weeks the team have delivered between 20 and 24 points.

Returning to the metaphor, people don’t care how far you have to go, they just want to know when you will be there.

Summary

  • Estimation in points is estimation of complexity and you can compare it with estimation of travelling distance. Time is depending on sprint velocity and traveling speed, respectively.
  • Estimate in points is easier to get accurate. If you estimate consistently, you may be able to measure process improvements in the form of increased velocity.
  • To estimate consistently, you should have reference stories at hand to compare with during estimation.

At the end of the day, however, you will need to answer the question on your time of arrival.

http://blog.crisp.se/2014/04/23/perlundholm/time-vs-story-points-estimation

Time vs Story Points Estimation [转]的更多相关文章

  1. CHEVP算法(Canny/Hough Estimation of Vanishing Points)

    这个算法是汪悦在 Lane detection and tracking using B-spline中提出来的.他在这篇论文中主要用的是B-spline模型,这个模型的主要优点是鲁棒性好,可以针对不 ...

  2. x264 编码器选项分析 (x264 Codec Strong and Weak Points) 1

    文章文件夹: x264 编码器选项分析 (x264 Codec Strong and Weak Points) 1 x264 编码器选项分析 (x264 Codec Strong and Weak P ...

  3. Linear Regression and Maximum Likelihood Estimation

    Imagination is an outcome of what you learned. If you can imagine the world, that means you have lea ...

  4. deep learning+ Depth Estimation

    Depth estimation/stereo matching/optical flow @CVPR 2017 Unsupervised Learning of Depth and Ego-Moti ...

  5. 论文阅读笔记五十六:(ExtremeNet)Bottom-up Object Detection by Grouping Extreme and Center Points(CVPR2019)

    论文原址:https://arxiv.org/abs/1901.08043 github: https://github.com/xingyizhou/ExtremeNet 摘要 本文利用一个关键点检 ...

  6. paper 154:姿态估计(Hand Pose Estimation)相关总结

    Awesome Works  !!!! Table of Contents Conference Papers 2017 ICCV 2017 CVPR 2017 Others 2016 ECCV 20 ...

  7. pytorch --- word2vec 实现 --《Efficient Estimation of Word Representations in Vector Space》

    论文来自Mikolov等人的<Efficient Estimation of Word Representations in Vector Space> 论文地址: 66666 论文介绍了 ...

  8. 萌新笔记——Cardinality Estimation算法学习(一)(了解基数计算的基本概念及回顾求字符串中不重复元素的个数的问题)

    最近在菜鸟教程上自学redis.看到Redis HyperLogLog的时候,对"基数"以及其它一些没接触过(或者是忘了)的东西产生了好奇. 于是就去搜了"HyperLo ...

  9. 有理数的稠密性(The rational points are dense on the number axis.)

    每一个实数都能用有理数去逼近到任意精确的程度,这就是有理数的稠密性.The rational points are dense on the number axis.

随机推荐

  1. How Uuencoding Works

    做题目学习  https://www.zhihu.com/question/26598476/answer/45396765 http://email.about.com/od/emailbehind ...

  2. BISTU-(1)-4-17-2016

    A:贪心,遍历每次维护一个最便宜的价格,假如当前价格不如此前价格,就用此前价格购买当前数量的肉,每次更新最便宜的价格. #include <algorithm> #include < ...

  3. 《OD大数据实战》Flume入门实例

    一.netcat source + memory channel + logger sink 1. 修改配置 1)修改$FLUME_HOME/conf下的flume-env.sh文件,修改内容如下 e ...

  4. find-right-interval

    https://leetcode.com/problems/find-right-interval/ Java里面TreeMap或者TreeSet有类似C++的lower_bound或者upper_b ...

  5. JavaScript关闭窗口的方法

    当你创建了一个新窗口时,将open()方法的返回值分配给一个变量非常重要.比如,下面的语句就是创建一个新窗口,然后立即关闭它: win = window.open("http://www.d ...

  6. HTML表格标签

    table标签的用途: 在表格中放图片,或用于布局(已经淘汰掉了),存放数据 table制作过程: 1.先分析表格有多少行 2.分析有多少列 3.做好表格的基本之后再添加表格需要的一些属性 table ...

  7. UIDevice通知

    UIDevice通知 UIDevice类提供了一个单例对象,它代表着设备,通过它可以获得一些设备相关的信息,比如电池电量值(batteryLevel).电池状态(batteryState).设备的类型 ...

  8. 百度编辑器解决span被过滤, 自动加P标签

    editor_all.js: 自动加P标签去除: enterTag: 'p', 改成: enterTag: '', span被过滤:   //从编辑器出去的内容处理     me.addOutputR ...

  9. 快速查询Python脚本语法

    /********************************************************************* * 快速查询Python脚本语法 * 说明: * Char ...

  10. python编码问题(1)

    一.字符编码基础 字符编码是计算机对字符的格式化,从而能够在计算机系统中存储与传输. 1.ASCII码 在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态 ...