Get certified - Transform your world of work today

Close

Story Points

9 June 2016

Saumya Nigam
Societe Generale

Background

In my last article, "Why Estimate?", we got an idea about the purpose of estimates, and we also got some idea about how relative estimates are better than absolute estimates.

Hoping that we are on the same page and believe that estimating complexity is a better option, I will further discuss story points, velocity, and prediction. But before doing so, we need to address one question: What drives estimation?
 

Estimation drivers

Estimation is always driven by three major factors:
  1. What is known–known to the team; easy to estimate
  2. What is known–unknown to the team
  3. What is unknown–unknown to the team; normally this hits when the team implements the story and then — @@##$%%!
Estimation is often hit hard by the third factor, unknown–unknown. But what hurts our estimation the most is uncertainty. The challenge is how to manage this uncertainty. Luckily, Agile/Scrum has come up with the concept of story points (SPs).
 

Story points

Story points include the following major characteristics:
  1. Defining the complexity of a story. Complexity may be:
    1. Technical
    2. Uncertainty — dark areas
    3. Volume — updating one report and updating 100 reports have different levels of complexity
  2. Relative estimates (complexity is compared to other stories)
  3. List of numbers in the Fibonacci series (i.e., 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, . . .)
The first two points are quite obvious, and I have discussed them previously, but what about the third item? There are two important aspects behind it:
  • Why numbers? Few teams will go along with t-shirt, fruit, or nut-based sizing, which is good on a high level but difficult on predictability. Is it easier to say that the team is able to deliver approximately 40 SPs in the sprint or that the estimate is 3 grapes, 2 watermelons, and 1 orange? The answer is obviously 40 SPs.
  • Why Fibonacci? Fibonacci is the answer to addressing uncertainty. A more complex user story means managing more of the unknown–unknown factor. Therefore, a team needs more of a buffer.

    By default, story points have ~40 percent margin for the unknown–unknown factor. If the story is more complex than a story worth 13 SPs, we will say it is 21 SPs, which is ~40 percent more than 13 (a buffer of 8 SP). Similarly, if a story is less complex, then it is 8 SP, or ~40 percent fewer than 13.

The table below illustrates how the Fibonacci technique works.
 
Fibonacci Series SP Diff/Buffer SP Diff/Buffer -  Unknown-Unknown/Uncertainity facto
  1.  
  1.  
0 - Not at all complex
  1.  
  1.  
1 - Not complex
  1.  
  1.  
1 - Not complex, but slightly more so than the previous
  1.  
  1.  
2 – May be complex
  1.  
  1.  
3 – Slightly complex
  1.  
  1.  
5 – Complex
  1.  
  1.  
8 – More complex
  1.  
  1.  
13 – Very complex

If we are not using Fibonacci, we will again be starving for precision, as in hour or man-day estimates. To manage this uncertainty in a better way, vertically slice complex user stories until no story is more than 3 to 5 SPs. I plan to delve into slicing in future articles.
 

Opinions represent those of the author and not of Scrum Alliance. The sharing of member-contributed content on this site does not imply endorsement of specific Scrum methods or practices beyond those taught by Scrum Alliance Certified Trainers and Coaches.



Article Rating

Current rating: 4 (5 ratings)

Comments

Be the first to add a comment...


You must Login or Signup to comment.

The community welcomes feedback that is constructive and supportive, in the spirit of better understanding and implementation of Scrum.

 

Newsletter Sign-Up

Subscribe