Agile Project Management Education | Courses and Interactive Agile Workshops

Mastering Agile Estimation: From T-Shirt Sizes to Estimation Matrix with Fibonacci Numbers

Mastering Agile Estimation: From T-Shirt Sizes to Estimation Matrix with Fibonacci Numbers

Agile User Story EstimationI was recently asked to suggest a solution for estimating user stories in a project. The question was: if they use T-shirt sizes (S, M, L, XL, etc.), how can they add these estimations to Jira? My short answer was straightforward: either use labels for T-shirt sizes or, for more complex estimations, create an ‘Estimation Matrix.’ However, this topic deserves a deeper dive to fully understand its nuances and benefits, and how to implement these estimations in Jira.

When it comes to Agile project management, accurate estimation is crucial. One simple and effective method is to use T-shirt sizes. This approach involves categorizing tasks into small (S), medium (M), large (L), and extra-large (XL) sizes. Each size represents an estimate of the effort required to complete a task. This method is easy to understand and implement, making it ideal for straightforward projects with well-defined tasks.

However, not all projects are that simple. When estimation becomes complex or cannot be clearly determined due to multiple influencing factors, a more detailed approach is necessary. This is where the ‘Estimation Matrix’ comes into play. An Estimation Matrix helps define the estimation levels more precisely. It assigns a T-shirt size to each user story based on its associated effort but allows for further refinement.

The Estimation Matrix can be revised and extended with additional attributes that impact the estimation. For instance, the required level of skills, T-shaped skills (skills that are deep in one area and broad across others), or any other relevant factors can be included. Other factors that might influence estimation include the complexity of the task, dependencies on other tasks, the availability of resources, and potential risks or uncertainties associated with the task.

In addition to these attributes, incorporating the Fibonacci sequence into the Estimation Matrix can provide further granularity. The Fibonacci sequence (1, 2, 3, 5, 8, 13, etc.) is often used in agile estimation to reflect the increasing uncertainty associated with larger tasks. By mapping T-shirt sizes to Fibonacci numbers, teams can more accurately represent the effort required and the inherent uncertainty. Below is a sample Estimation Matrix that incorporates T-shirt sizes, the Fibonacci sequence, and additional parameters such as the number of coding languages needed and the number of application dependencies involved.

Sample Estimation Matrix

User StoryT-shirt SizeFibonacci NumberCoding Languages NeededApplication DependenciesSkill Level Required
Story 1XS110Basic
Story 2S21-21Intermediate
Story 3M32-32-3Intermediate
Story 4L53-43-4Advanced
Story 5XL84+4+Expert

Explanation:

  • User Story: Identifier for the user story being estimated.
  • T-shirt Size: An easy-to-understand categorization (XS, S, M, L, XL) representing the effort required.
  • Fibonacci Number: Numerical value from the Fibonacci sequence that corresponds to the T-shirt size, providing a more precise effort estimate.
  • Coding Languages Needed: The number of different programming languages required to complete the story.
  • Application Dependencies: The number of other applications or systems that the story depends on.
  • Skill Level Required: The level of expertise needed (Basic, Intermediate, Advanced, Expert).

Using the Estimation Matrix:

  1. Identify Parameters: Determine the key factors that influence your estimation. For this example, we have chosen the number of coding languages needed, application dependencies, and the required skill level.
  2. Assign T-shirt Sizes: Classify each user story with a T-shirt size based on a rough estimate of the effort required.
  3. Map to Fibonacci Numbers: Convert the T-shirt sizes to Fibonacci numbers to provide a numerical estimate of the effort.
  4. Detail Parameters: Fill in the additional parameters (number of coding languages, application dependencies, skill level) for each user story.

Example User Story Estimation:

  • Story 1: A simple task requiring one coding language and no dependencies might be classified as XS, mapped to 1 on the Fibonacci sequence, requiring only basic skill.
  • Story 2: A task needing one to two coding languages and one dependency might be classified as S, mapped to 2 on the Fibonacci sequence, requiring intermediate skill.
  • Story 3: A more complex task needing two to three coding languages and two to three dependencies might be classified as M, mapped to 3 on the Fibonacci sequence, requiring intermediate skill.
  • Story 4: A significant task needing three to four coding languages and three to four dependencies might be classified as L, mapped to 5 on the Fibonacci sequence, requiring advanced skill.
  • Story 5: A very complex task needing four or more coding languages and four or more dependencies might be classified as XL, mapped to 8 on the Fibonacci sequence, requiring expert skill.

Entering T-Shirt Sizes in Jira:

  1. Custom Fields: Create a custom field in Jira for T-shirt sizes. Navigate to Jira settings, select ‘Issues,’ and then ‘Custom Fields.’ Add a new custom field with options like XS, S, M, L, and XL. This field can be added to your issue types, allowing team members to select the appropriate size during estimation.
  2. Story Points: Use Jira’s ‘Story Points’ field, mapping T-shirt sizes to numerical values (using the Fibonacci sequence, for instance). This helps integrate T-shirt size estimations with Jira’s built-in reporting and analytics features.
  3. Labels: Use Jira’s labeling system to tag issues with T-shirt sizes. While not as structured as custom fields, labels offer flexibility and can be used in conjunction with other fields for more detailed filtering and searching.

This Estimation Matrix provides a structured way to handle complex estimations by considering multiple factors, allowing teams to achieve more accurate and reliable estimates.

Share on

0
    0
    Your Learning Cart
    Your cart is emptyBack to Explore
    Scroll to Top