Using the Fibonacci Sequence for Story Points in Agile Estimation

Using the Fibonacci Sequence for Story Points in Agile Estimation

One of core practices of Agile Methodology is effective estimation of work. A popular approach for estimating user stories is to use the Fibonacci sequence.

A typical question most of the team members introduced to planning poker come up with is -? “after all if we are using numbers for story pointing, why just not use the normal number sequence of 1, 2, 3, 4, 5, 6 and so on.

Why do we need to use Fibonacci series?”

Fibonacci series, though it look like mysterious series of numbers with some magical abilities, very simple to understand and it is not that complicated.

Let’s say, if I ask you to tell me the distance between the door of your room and the window, by just looking at it, I am sure you will be able to take fairly accurate guess of it in the unit of feet. You may be off by few inches here and there.

But if I ask to you tell me the distance between Pune and Delhi then high level distance in miles are sufficient, the expectation is not to be accurate up to a great degree.

Humans are usually bad in estimation but pretty good on comparison. Hence Fibonacci series do better than the linear scale as the lower number a densely populated than the higher numbers.


What is the Fibonacci Sequence?

The Fibonacci sequence is a series of numbers where each number is the sum of the two preceding ones, usually starting with 0 and 1. The sequence typically looks like this: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, and so on.

In the context of Agile estimation, teams often use the modified Fibonacci sequence: 1, 2, 3, 5, 8, 13, 21, which helps in quantifying the complexity and effort required for various tasks.


Why Use the Fibonacci Sequence for Estimation?

There are multiple reasons why Fibonacci series is popular for story pointing.?It helps teams:

  • Compare Stories: The sequence helps teams compare the relative complexity of user stories. It helps in visualizing how much more effort a task might require compared to another.
  • Avoid False Precision: The sequence helps teams avoid underestimating or being too precise.
  • Be realistic: The sequence helps teams be realistic when estimating larger, more complex tasks.
  • Understand Uncertainty: The sequence helps teams understand how uncertainty and complexity increase exponentially as tasks get larger.
  • Identify Differences: The sequence helps teams identify differences between numbers.
  • Promote Incremental Improvement: As teams grow more familiar with the Fibonacci scale, they can refine their estimations over time, leading to more accurate planning and forecasting.
  • Easy and Simple: The Fibonacci sequence naturally scales, providing a clear framework for estimating relative effort.


Example of Using Fibonacci for Estimation

Let’s consider a team working on a software development project. They have a backlog of user stories to estimate:

  1. User Story A: As a user, I want to log in using my email and password.
  2. User Story B: As a user, I want to reset my password through email verification.
  3. User Story C: As a user, I want to view my profile details.

During a planning session, the team uses the Fibonacci sequence to estimate these user stories. They start discussing the complexity and effort required for each story.

  • User Story A is straightforward, and after discussion, the team agrees it requires a story point of 3.
  • User Story B involves additional complexities like security measures, so they decide on 5 points.
  • User Story C, which requires integrating various data sources, is deemed more complex and assigned 8 points.

The team reaches a common ground on these estimates after collaborative discussions, clarifying any ambiguities in requirements, which ultimately leads to a more refined understanding of the work involved.


Conclusion

Using the Fibonacci sequence for story points in Agile estimation offers a structured yet flexible way to assess task complexity. It enhances team collaboration, promotes clearer communication, and helps in reducing estimation bias. By embracing this method, Agile teams can improve their planning accuracy and deliver value more effectively.

Compared to any other traditional estimation and sizing technique, story pointing using the Fibonacci sequence is easy and fun. Other techniques are complicated, requiring a lot of experience and expertise, and are hard to understand.

Once the concept of story pointing using the Fibonacci sequence is understood by the scrum team, then it is a very easy and fun technique that can be used on the go.




James Lea

Consulting Digital / AI Project and Programme Manager, CEO and Founder, FAPM, FBCS, BA Hons (Oxford), MSc (Surrey)

4 个月

Great points! We think of story points as an ordinal sequence - they place tasks on a scale, as opposed to cardinal. By the way, we wrote an app - Predict for Jira - that helps you estimate how many story points your task is - using machine learning! Why not try out the free evaluation? #predictforjira https://marketplace.atlassian.com/apps/1233542/project-science-predict-for-jira?tab=overview&hosting=cloud

回复

要查看或添加评论,请登录

Sarika Bhor的更多文章