Backlog Refinement

Backlog Refinement ceremony, Agile backlog grooming, Scrum product backlog refinement meeting, Scrum Refinement, backlog refinement process

Product backlog refinement, formerly called grooming, is the ongoing process of clarifying, estimating and preparing Product backlog items to be ready for the development work and it takes around 10% of the time of the sprint, split in different sessions throughout the sprint.

Backlog Refinement ongoing process

Product Backlog Refinement is the ongoing activity of breaking down and further defining Product Backlog items by refining or splitting the items to be smaller and more precise and adding details, such as a description, order and size. The Scrum event is not timeboxed and the team decides if it should occur during the Sprint at planned intervals or ad-hoc, depending on many factors such as volume of new work items added into the backlog, team’s level of understanding of the items, prioritization required etc. Most commonly, Scrum teams perform the Backlog Refinement once per week and during the meeting the Product Owner shares new items in the backlog that need to be further refined and prioritized, the entire team discusses, refines and estimates them in story points using planning poker in order to have the items meet the Definition of Ready and be eligible to be planned for the next Sprint.

The ongoing process of backlog refinement ensures that the Scrum Team can adapt to the ongoing changes in business needs, is able to ask questions and receive answers before planning and committing to doing the actual work, is in synch with the needs and priorities and changes for the stakeholders, customers and users. As times goes by, new features and stories are added into the Product Backlog, some stories might be changed or even removed from the backlog and details or acceptance criteria for the user stories might be modified.

During the refinement sessions, the Scrum Team collaborates and asks questions to the Product Owner for the new user stories, the PO asks the stakeholders and the customers and then prioritizes the product backlog items. This also helps the Product Owner to identify where there are gaps in the requirements and it empowers the PO to fill the gaps in a way that does not block the team from planning and working on the items.

Grooming steps

Backlog grooming involves gathering questions and feedback, reviewing and clarifying the higher priority items while sticking to less detail for lower priority items, estimating and prioritizing new stories without being specific with the details, establishing dependencies and reviewing requirements and acceptance criteria.

The scrum team has a few sessions of voting and discussing the product backlog items until alignment is reached and items are understood and can be estimated, if not it might be necessary for the items to be split or documented more for another grooming session. At the end, refined stories are marked as ready for the future sprints and the refined and prioritized product backlog serves as an input for the next Sprint Planning meeting.

Product backlog prioritization criteria

  • business value – value for customer, for company
  • return on investment – cost vs. value
  • feature grouping – technical constrains
  • risk – test early if the feature is important for users
  • politics – choosing what is more important for company and users

Prioritization techniques:

  • Stack ranking – compare each item to just one other item and decide which is higher priority out of the pair
  • Cost of delay – evaluate the cost of doing an item later and prioritize the ones with the the highest cost
  • Eisenhower matrix – split items on quadrants of axes important vs. not important and urgent vs. not urgent
  • Weighted Shortest Job First – calculate value over effort, cost of delay over effort
  • Kano model – Must-be, Attractive, One-Dimensional, Indifferent and Reverse
  • MoSCoW – Must have, Should have, Could have and Won’t have

Backlog Refinement responsibilities for the Product Owner

  • doing market research
  • setting the Product Vision
  • setting the Product strategy
  • building the storyboard
  • creating Product personas
  • designing assumptions to be validated
  • setting the Product Goal
  • setting the Product Roadmap
  • presenting the Release calendar
  • setting the projected impact of the product
  • organizing story writing workshops
  • talking to customers and stakeholders about their use of the product
  • creating new user stories

Backlog Refinement responsibilities for the Developers

  • finding creative solutions for meeting the Sprint Goal
  • estimating Product Backlog items
  • collaborate with other developers and experts to establish architectural guidelines
  • build the Definition of Ready
  • build the Definition of Done
  • perform experiments to validate assumptions and test hypothesis
  • build the required documentation for backlog items
  • split big backlog items into smaller functional units of work
  • create technical sub-task
  • write the acceptance criteria and conditions of satisfaction
  • create manual and automated tests
  • create and update the Definition of Ready
  • create and update the Definition of Done

Backlog Refinement responsibilities for the Scrum Master

  • make sure all participants understand the challenges of Backlog Refinement
  • facilitate related activities and workshops
  • facilitate estimation workshops
  • teach the importance of shared responsibility in Product Backlog Refinement
  • coach the Scrum Team in estimation, slicing and prioritization of Backlog items

Scrum