In this episode, Richard Dolman helps us take backlog refinement from an underutilized meeting that doesn’t get the respect it deserves to a powerful forum for collaborative discovery.
After listening to this episode, you'll understand:
- The pitfalls of not refining your backlog regularly
- What is needed to make a refinement session successful
- What should happing during refinement
- How incomplete user stories can actually help a team
Backlog refinement meetings can be a great opportunity for teams to ensure near term priorities are understood and ready for the team to work on. Unfortunately, many teams rush through this activity, leading to misunderstandings and acting like the backlog is a simple to do list.
Backlog refinement is the act of the team reviewing the items in the backlog and discussing the detail to get clarity as to priorities and plan their work. It’s an opportunity for the team to come together and collaboratively discover what they’re being asked to do.
Refinement includes elaborating on the backlog items for further clarity, decomposing large items into smaller pieces, doing lightweight functional design, elaborating on acceptance criteria, and even some sizing. The goal is to have near term, high priority backlog items that are small enough and understood by the team to begin working on in the next iteration.
What defines a user story or backlog item as “ready” is up to the team. That Definition of Ready should be clearly understood and agreed upon by the entire team.
Prerequisites to a Successful Refinement Session
Start with a vision. A vision that’s understood and visible helps the team to focus on achieving that goal and allows them to question anything that may be taking them away from that goal.
Next, a roadmap should be used so that the team understands the progression and what they’re working towards with each iteration or release. The roadmap also gives the team context so they know where they are in the product delivery cycle and if any architectural runway needs to be build out.
Making Your Refinement Sessions Better
Once a vision and roadmap is in place, the team can address how they see their ability to deliver the work and uncover opportunities to provide value. The team should feel confident that they understand the work that’s coming, how it ties to the vision, why it’s important, and how they’ll approach the work.
The techniques and approach teams can use during backlog refinement can range from simply talking about the backlog item to creating visualizations and models to better understand the work.
Teams may also compare what they need to do to the architecture to better determine if the need architecture is in place. Similarly, team members should uncover and discuss any dependencies.
The refinement session can include writing new stories, slicing large backlog items into smaller stories, elaborating on backlog items to get clarity on the detail, and asking questions about and negotiating acceptance criteria.
All of these activities and conversations drive confidence that when the team is ready to pick up one of the backlog items, they’ve exposed the critical aspects of the story and the work is understood.
While good user stories follow the INVEST criteria (Independent, Negotiable, Valuable, Estimable, Small, and Testable), the product backlog should be DEEP.
DEEP is an acronym standing for Detailed appropriately, Emergent, Estimable, and Prioritized.
Emergent refers to the fact that new information and feedback can come in at any time that may affect what’s in the backlog as well as its priorities. This means that not everything will be known upfront and we need to get comfortable with letting some of the details emerge as part of the refinement process.
Don’t treat your backlog like a vague to do list. Make sure it’s an interactive session where team members can collaborate and create a shared understanding, which will have an impact on not only what the team products, but the quality and speed as well.
Listen to the full episode to hear all of Richard’s tips on getting more value out of a backlog refinement session.
Use visualization as much as possible. This includes having a visual roadmap, making the architecture visible, and using techniques such as story mapping, empathy maps, wireframes, and other approaches. Bring those visualizations in to your refinement session to help create a shared understanding.
Secondly, don’t follow the same pattern for every refinement session. Consider what you need to know in each refinement meeting and adapt your approach to meet that need.
Finally, look at the patterns in your team during refinement sessions and see the downstream impacts. If the team experiences unfinished backlog items or other impacts, it may be an indication that you’re not going deep enough in you refinement discussions.
Agile pragmatist, coach, and trainer
Richard’s professional passion is helping companies solve critical business and technology challenges and enabling collaborative, high-performing teams.
He is an independent professional Enterprise Agile Coach and Trainer, currently working with agile42, LLC. He has been practicing Agile/Lean for 10+ years and is a Certified Scrum Professional (CSP), Certified Scrum Master (CSM), and PMI Agile Certified Practitioner (PMI-ACP).
Thank you for listening to the program
To get more valuable content to enhance your skills and advance your career, you can subscribe on iTunes and other podcatchers.
Also, reviews on iTunes are highly appreciated! I read each review and it helps keep me motivated to continue to bring you valuable content each week.