Table of Contents

“How long will it take for you to complete this?” — It seems to be a pretty common question that is asked of us. Truth be told, when technical team members are asked this question, our answers are so far from confident because there are so many variables that can derail a time estimate. I’m not sure about you, but I know I have been in a situation where I have given a time estimate that I couldn’t deliver on and it upset people.

What’s worse is that when you do give a time estimate, the receiving person doesn’t understand how that time estimate fits in with the rest of your workload. Just because you say 4 hours time, doesn’t mean it is going to be completed by tomorrow. So how do you estimate how long your work is going to take? Story Points!

What is a Story Point?

A story point is simply a unit of measure to determine how much effort a given task (or story) requires to be completed. The higher the effort, the higher the story point. The lower the effort, the lower the story point. Instead of estimating in absolute value (minutes, hours, days, weeks), we estimate in relative value (1, 2, 3, 5, 8, and so on). Let’s put it into perspective.

Look at these two dogs. Can you tell me exactly how much each dog weighs?

Photo of a large dog
German Shepherd

Photo by Adam Kontor on Pexels.com

Photo of a small dog
Beagle

Photo by Artem Beliaikin on Pexels.com

Of course, it would be impossible to tell exactly how much each dog weighs. Therefore, an absolute value (exact weight) is impossible to determine. Now answer this question: Does Dog #1 or Dog #2 weigh more? It is much easier to come up with an answer.

This is called relative estimation. We can use relative estimation to judge how big or complex a task is with respect to all of the tasks. The unit of estimation we can use is called a “Story Point.”

To answer our previous question, we could say Dog #1 weighs more than Dog #2 and we could assign a higher story point to Dog #1 (Lets say 10) and a lower story point to Dog #2 (3, for example).

Using story point estimation allows you to remove any emotional attachment to a task. If you tell someone that you estimate something to take you 4 hours of time, but it actually takes 30 hours of time, then what do you tell that person? They’re going to want to know why you took more time than planned and then it starts feeling like you’re coming up with explanations that are viewed as excuses. It just doesn’t feel great for either party involved.

Story point estimation removes this emotional attachment by removing the link that we have towards time.

Story Point Deep Dive

Because story points estimate the amount of effort for a given task, you have to take into consideration everything that can impact the effort. There are three major considerations that can impact the effort: Amount of work, complexity, and risk/uncertainty. Lets take a look at each one of these and see how each one could impact the task of “Folding a stack of papers”

Amount of Work

Consider the amount of work a task will take. Looking at our task of “Folding a stack of papers,” less work would be a stack of 10 papers. More work would be a stack of 100 papers.

Complexity

It’s very easy for complexity to start getting out of hand and I have found that if your requirements are not well defined, the complexity will grow over time. It’s important to have your requirements well thought out well in advance and not allow scope creep to take over. Low complexity would be folding the paper in half. High complexity would be folding the paper into an airplane.

Risk/Uncertainty

If you’re unsure on how to do something, or its your first time doing something on your own you would have more risk/uncertainty to that task. Also consider the person requesting something from you. If someone said, “I need you to fold a stack of papers but I’m not sure how many times they should be folded,” that increases the risk. Unclear expectations or scope will always drive risk and uncertainty up.

The Fibonacci Sequence

The Fibonacci Sequence is a sequence in which each number is the sum of the two preceding ones.

0 1 1 2 3 5 8 13 21 34

You will notice that any number in the sequence is the sum of the two preceding numbers. The sequence can go on forever, but this sequence is popular in using the values for story point estimating. For the purpose of story point estimating, you can drop the first two numbers because they are redundant. Here is the sequence that I personally like to use:

1 2 3 5 8 13 21 34 55 89 144

Start Estimating

Uncertainty

To determine your story point value, you have to think about everything that can impact the task. I like to start with Uncertainty. Think about how much certainty you have in how to accomplish the task. You need to consider your own abilities and the requirements of the task.

For example, if you are uncertain about all the requirements that are needed to accomplish the task, you would want to rate your uncertainty higher. Likewise, if you are doing something you have never done before, the uncertainty would be higher as well.

Let’s say you’ve been tasked with increasing a product’s dividend rate by 0.500%. This is something you do on average 3-4 times per year, so you know exactly what you’re doing. You know the exact requirement of taking the existing rate and adding 0.500% to it. You’re certain you can accomplish the task easily and you’re certain you have all the requirements, so your uncertainty is rated none to low.

Complexity

It is crucial to understand the complexity of a task. You’ll remember that we had three categories that we need to worry about: Uncertainty, Complexity, and Amount of Work. Personally, I group Complexity and Amount of Work together. The more work there is, the more complex it is. The more complex it is, the more work there is.

Assume you’re estimating the task to Implement the latest version of an application. A lot will go into this, even though the task is just a simple statement of what needs to be done. You don’t just implement the latest version of something; there is a lot of planning, preparing, and work to do to make it happen.

How about estimating our previously mentioned task of increasing a product’s dividend rate by 0.500%? The complexity of that is very simple — you’re just updating a single parameter of a product. It doesn’t even compare to how much work is involved with upgrading an application to the latest version.

Story Point Matrix

As you begin story point estimating, it’s incredibly helpful to have something to help guide you in estimating. Enter the Story Point Matrix.

By estimating Complexity and Uncertainty, you can find a story point value based on the Fibonacci Sequence.

Each estimation (Easy/None, Medium/A Little, Hard/A Lot) has two story point value possibilities. I prefer to do this because you can give an estimation of high or low. For example, Complexity can be rated as “Easy, High” and Uncertainty as “A Little, Low” — that lands you at Story Point value of 5.

You may be wondering about the story point colors. We have Green, Yellow, and Red values and each one has a special meaning. Here is the key to that:

Green Points

These are things that would be considered a quick win. A lot of your common work, fires, questions coming in, etc… would likely be green. When you’re planning your sprints, these are items that would allow you to fill out a sprint if it is lacking.

Yellow Points

These are things that allow you to accomplish things and gain momentum towards a bigger goal. These are typically realistic things that could be completed within a 2 week sprint along with other items as well.

Red Points

These values are considered Red Flags– If you’ve estimated something as a red value, then it’s a sign that you need to stop to break down your task into smaller pieces of work. Remember, the goal is to complete the item within a 2 week sprint; Anything that is red would likely take longer than the Sprint. Or, if you did finish it in the 2 week sprint, it would be the only thing you’re working on. To maintain progress on multiple things, you should be breaking things down into bite sized pieces so you can keep the momentum going in multiple areas.

Leave A Comment