Product Backlog Refinement refers to keeping the Backlog clean and orderly. It is defined in the Scrum Guide as the act of breaking down and further defining Product Backlog items into smaller more precise items.
It is an ongoing process in which the Product Owner and the team of Developers collaborate to ensure items on the Backlog are:
- Understood the same way by the team (has a shared understanding).
- Has an estimated size and complexity for the implementation.
- Ordered according to priority (including the business value and estimate).
In simple terms, Backlog Refinement is centred around creating a shared understanding of what the product will, or won’t do, on the estimate of what it will take to build and implement it and the order in which it should be done.
It’s also worth noting that contrary to other Scrum events, Product Backlog refinement is not time-boxed. This is because it does not have a specific sequence within the Scrum framework. If it was restrained within a time-box the activity wouldn’t be effective. However, a rule of thumb is that you can use up to 10% of the time in a Sprint for refinement, and it should be carried out as and when necessary and is often included as part of a “Refinement Meeting”.
Let’s take a look at Product Backlog Refinement in a little more detail.
The Refinement Meeting
As touched on, Product Backlog Refinement is usually done as part of a Refinement Meeting. The Scrum team comes together once, usually near the end of the Sprint for this event, to ensure the Backlog is ready for the next Sprint. However, in some instances, teams might choose to meet once per week instead to keep on top of things.
A Refinement Meeting is an opportunity for the Product Owner to share which Product Backlog Items need to be refined and for the team to discuss them. During this time, the team can ask questions that usually wouldn’t otherwise arise until Sprint Planning. All questions don’t need to be resolved in the Backlog Refinement Meeting, but it gives the Product Owner a head start prior to the Planning Meeting.
Backlog Refinement is essentially a checkpoint for the team rather than an effort to fully resolve issues.
Who is responsible for Product Backlog Refinement?
Each member of the Scrum Team is responsible for Product Backlog Refinement but it usually happens on the initiative of the Product Owner. Below is a breakdown of each member of the team and their core responsibilities:
- The Product Owner: building the right thing
- The Developers: building the thing right
- The Scrum Master: coaching and guiding the team
The Product Owner
The Product Owner has authority and responsibility over the Product Backlog. Effective Refinement should start with the vision and the “why” for the product. They should ensure transparency around this vision and allow for open discussions with both the team and stakeholders.
The following activities can be useful for Product Backlog Refinement. It makes sense for the Product Owner to initiate these, however other members of the team may do so as well:
- Creating a product vision
- Setting up a product road map
- Making a storyboard
- Collaborating with stakeholders and customers about their use of the product
- Carrying out market research
- Goal setting
- Defining acceptance criteria or satisfaction criteria
The Developers should also have responsibility for Product Backlog Refinement. It can be highly beneficial for them to feel ownership for the refinement alongside the Product Owner. After all, the developers are the ones who actually complete the work.
The following examples are just some of the activities which should be the Developer’s responsibility:
- Estimating the Product Backlog Items to gain an overview of what can be completed within a Sprint
- Finding solutions for meeting the Sprint Goal
- Collaborating with other Developers for knowledge sharing
- Documenting solutions for work
The Scrum Master
Finally, the Scrum Master is responsible for ensuring the team understands Scrum. In this instance, the challenges of refinement and that everyone is clear on their role. In addition, the Scrum Master should help to facilitate the activities relating to Refinement and help everyone to focus on their role.
Some examples might include:
- Facilitate Product Backlog Refinement workshops
- Teach the importance of shared responsibility in this task
- Teach the team ways to deliver and collaborate
Sometimes stakeholders might also be invited to join Refinement Meetings or provide input and feedback, however, the responsibility still lies with the internal Scrum team.
Product Backlog Refinement is an important aspect of each Sprint. Without shared understanding, there is a risk of implementing the wrong things and wasting effort. It’s important to take the size of each item into account which helps to order the Product Backlog in terms of priority. Without this, teams risk working on items that aren’t important and missing ones that are.
It’s therefore important that the entire team have good knowledge of Product Backlog Refinement and can collaborate effectively during the Refinement Meeting.