Skip to main content

Story Points estimation for Scrum with Fibonacci vs Shirt Sizes vs Linear - 7 minute guide

It is all began long time ago when Development Teams were constantly asked to provide estimate and they were having a hard time to properly face the task. Let's admit it, there are so many things that can change, happen, and simply go wrong during the development process that one can hardly expect a proper estimation of hours for each task. That why a relative estimation with Story Points came along.

Story Points Estimation
Its a different way to estimate the effort of the Scrum Development Team with-in Agile methodology, which means that instead of estimating hours of work the team estimates each effort relatively to other efforts in the project.
Let's assume that a developer knows that specific 'Task 1' is much harder than another 'Task 2' it is hard for him/her to quantify that harder feeling in hours of additional work but it is possible to say that it much more work. This situation is being address by Story Points when each story point is representing some arbitrary amount of effort and hence 2 points are representing twice the effort of 1 point and so on.

T-Shirt Sizes (S,M,L,XL....)
The most straight forward way to approach it, is of-course by saying for each task how hard it will be to accomplish it. Meaning how much effort it will take to bring it from idea state to deliverable increment. Is it a small effort then we assign it an 'S' is it a Large effort than an 'L' and so on. The  benefits here are obvious it is a quick and easy approach to provide estimation but the main issue here is the lack of proper relative proportions. Meaning who can say how much bigger 'L' compare to 'M', is twice more effort? Three times more? a bit more?

Linear Estimation (1,2,3,4,5......)
The approach here comes to fix the main concern with the T-Shirt size by giving each arbitrary amount of effort a a point and say: "This task will take  2 points effort and that task which seems to be twice as hard will take 4 points effort". Here we can easily see the benefits of  not only relative estimation but also the proportions of work are being taken into account, by looking on the estimation we can see how much more effort each task is compared to the other.

Fibonacci Estimation (1,2,3,5,8,13,21,34,55....)
The reality of the day-to-day work is that "the harder the task is, the more unexpected delays and compilations we might encounter", and with that understanding come the need to ask the development team to provide estimation in a non-linear fashion. People tend to say "This twice as hard" but in reality it might take more than twice of the effort, so to put the estimation activity in a proper mindset the Fibonacci sequence came along.
For those who don't know the Fibonacci sequence is when each next number is the sum of the two previous numbers in the sequence, which for our needs creates a unique situation when during the estimation you need to decide if the effort for the task is a bit more or more than a twice more than the other.
The main benefits of this approach is while keeping the relativity and proportional characteristics of the previous two it creates a proper road map for estimations of unknown complications in the work effort.

My recommendation for this type of estimation then is to go with Fibonacci sequence.


Popular posts from this blog

7 Most Popular Test Types in Software Testing

Today we are going to return back to basics of software testing and discuss the 7 most popular test types that are being used in every software testing effort. Those different test types cover all the levels of the software to make sure that the final result matching the expectations from every possible angle. Here is our list: Unit testingSmoke testingRegression testingFunctional testingIntegration testingUser Acceptance TestingPerformance Testing

Now let’s have a deeper dive into each one of those by using a simple example of an imaginary system that was created in order to manage warehouse activity including shipments, inventory and goods receptions from suppliers.
Unit Testing This type of testing is usually performed by the developers and is covering the very basic development component. In this test developers are testing the straight forward functionality of a functional piece of code to make sure that it is performing according to their expectations. In our example: This test w…

5 Steps to Install Robot Framework for Web Testing Automation - 7 minute Guide

Lately, I found myself helping several people to begin their automation testing journey. And what a better place to do it then a nice new installation of a Robot Framework with its Selenium2Library on a Windows OS.

Why Robot Framework with Selenium2Library? While you are probably here because you are looking for a quick installation guide for Automation Testing platform for you web project, I still need to do my do diligence and explain in couple of words why we need it.
Robot Framework it's a Python framework that allows for a less development oriented Manual QA professionals to do a quick switch into Test Automation. This can be achieved by allowing for easy English phrases (e.g. Click Element, Wait, etc) to replace a more complex Python syntax.
Selenium2Library it's additional add on on top of Robot Framework that allows easy interaction with web elements during the automation process.

That's it..... DONE with the talking now the installation....

Installation process Ro…