Relative Estimation in Agile Processes

Thu Feb 17 20228 min read

Why we need estimation?

Without estimates every project seems something like this…

Simpsons - Are we there yet?

Why is estimation hard?

There are many reasons why estimation is hard for us. Some top reasons are -

  • Naturally, we are not great estimators
  • Too many unknowns
  • Technology constantly changes
  • No two implementations are exactly the same
  • External Environment factors

Why bother estimating?

If estimation is so hard, then why bother estimating at all? The question makes sense, but the major reasons why we need estimations are -

  • Make trade-off decisions when choosing among multiple options
  • Setting goals with realistic data

What is Relative Estimation?

Relative estimation is one of the several distinct flavors of estimation used in Agile teams, and consists of estimating tasks or user stories, not separately and in absolute units of time, but by comparison or by grouping of items of equivalent difficulty

In English please

What does it mean in simple terms -

  • We don’t need to deconstruct the problem to estimate
  • Comparing is faster and more accurate
  • Learn from previous experience – data driven / experience driven approach
  • Sizing in relative terms rather than actual hours
  • Get better at estimation with time

Relative Estimation in real life

Let’s look at some real life examples of Relative Estimations

Coffee Anyone?

Coffee cups of different sizes

The world runs on coffee. I would be so cranky without my morning cuppa, and I am sure most of us will be like me.

But when we are ordering coffee, are we doing exact calculations?

Are you trying to estimate how many ml / cc of coffee each cup holds?

Are you asking exactly how much coffee ’M’ holds?

You are making an imperative decision based on previous experience (’L’ kept me up last night and ‘S’ is too small, hence I will go for ‘M’)

Making Assumptions - Painting a house

Let’s take one more example.

We want to paint a house.

Paint house

Task Details

The house consists these many rooms

  • Three large rooms
  • Four medium rooms
  • Two small rooms

Known Facts

What we already know about the task at hand -

  • Painting a medium room takes one week

Assumptions

As we are new at this, based on previous experience, we make assumptions

  • A big room would take two weeks to paint.
  • A small room takes a half week to paint.

Estimating using assumptions

Based on the assumptions we made, we can now estimate the total work.

  • Painting three big rooms would take six weeks.
  • Painting four medium rooms would take four weeks
  • Painting the two small rooms would take one week.

Using relative estimates, you could determine that it would take a total of 11 weeks to paint the house.

Relative Sizing

Relative Sizing consists of 2 parts - Sizing and Relative

Size

  • Effort. How much work is required to complete this task?
  • Complexity. How difficult or complicated is this task?
  • Uncertainty. Do we know exactly what must be done to accomplish this task, or will we need to learn as we go?

Relativity

The size is relative to the other stories your team may have on its plate.

Fruit Salad Game

To understand relative sizing better, let’s play a game. Suppose you need to prepare a fruit salad.

Game’s requirements are as follows:

  • Prepare a fruit salad
  • Several types of fruits
  • Each fruit needs to be prepared for the salad
  • Each person will be given one fruit at a time
  • Must consider the effort, complexity, and uncertainty of preparing it for the fruit salad

Let’s start !!!

Step 1: Start with T-Shirt Sizes

Start with T-Shirt Sizes

Start with T-Shirt Sizes on the board

Step 2: Process a familiar fruit

Process a familiar fruit

  • Start with something familiar – an apple
  • We are familiar how to process an apple - few minutes to remove the core and cut it up
  • the task is not overly complicated
  • This becomes your baseline - Medium

Step 3: Choose the simplest task

Choose the simplest task

  • Choose a task which is no-brainer
  • Grape is very simple to process and way less complicated than an apple
  • This becomes your smallest unit - XS

Step 4: Iterate till all done

Iterate till all done

  • Continue the exercise, considering the relative effort, complexity, and uncertainty involved
  • After all fruits are iterated, debate on the distribution
  • Adjustments can be made as new information and perspectives are presented

Finally, the result is a list of fruits, each sized relative to the others in the salad.

Fruit Salad in Real World

The first step is to determine what is a medium project. Find your apple or pear.

Sizing is Relative – need an anchor or gold standard to compare all stories against it.

Rule of Thumb: medium story is one that can be completed in a day or two.

Fibonacci wears the T-Shirt

Fibonacci Series with T-Shirt Sizing

  • Fibonacci Sequence: the sequence is created by adding the previous two numbers together (0, 1, 2, 3, 5, 8, 13, etc.)
  • As story size increases, the gap between numbers widens
  • Massive projects are much harder to estimate to an exact number
  • Keeps the teams from getting hung up on minor differences

This forces you to keep your eyes on the big picture.

Benefits of Relative Estimation

  • The human brain works well with relative comparison - we have an inbuilt sense of something being relatively bigger or smaller than something else.
  • Team members are much more comfortable with relative estimation. Team members often hesitate to provide estimates of how long tasks will take to complete. They are aware that they typically do not have all necessary information at the time of estimating, and so they do not feel confident to say how long a task will take. They feel much more comfortable to give their opinion on whether a task is bigger or smaller than another task by comparison.
  • Stakeholders or project managers sometimes mistakenly take time estimates as commitments and breed an expectation that features will be completed in this time, rather than just using them as an input to decision-making. It is impossible to take relative estimates as time commitments because relative estimates are not measured in time taken.
  • When asked how long a task will take to complete, people sometimes “inflate” time estimates so that there is some built-in slack when more complex details become known. You can avoid this problem with relative estimation.
  • Relative estimation is proven to be effective and provides more accurate estimates. (Improving Subjective Estimates Using Paired Comparisons, Miranda 2001)

Relative Estimation Myth Busters

There are many wrong assumptions about Relative Estimations. Some common myths held, which needs to be busted include -

  • Relative Sizing is not a time commitment
  • Accurate Estimates are impossible
  • Estimate is not a guarantee
  • Time based estimations don’t factor in external factors
  • Story points cannot be converted into hours / days / weeks
  • T-shirt sizes are not empirical – (‘L’ is not equal to twice the effort of ‘M’)

Confidence v/s Story Points

Confidence vs Story Points

Confidence and Story Points are inversely proportional. As story points increases, confidence decays exponentially.

Summary

Few take away from this discussion.

  • Relative estimation is the process of estimating task completion by comparing them to previously completed tasks.
  • The human brain is naturally hard-wired to work better with relative comparison.
  • Relative estimation provides better estimates.
  • Relative estimation works by estimating size first, so you can relate this size to a task you have completed previously. Then you estimate how long the task will take to complete by making a relative comparison to the time taken to complete this other task.
  • Relative estimation is not absolute commitment of time.
  • We get better at estimation with practice.

Hope this helps you to make better estimations.

engineering

process

agile

estimation

Built using Gatsby