A four-point guide to product backlog refinement

For software development projects to run smoothly, you need effective communication. Developers need to be on the same page as managers. But collaboration isn’t always easy, and nor is aligning a creative development process with a concrete roadmap.

Enter product backlog refinement. For software developers, the process of refining the product backlog is one of the most useful processes to generate a shared understanding of their work.

Here’s what you need to know.

What is product backlog refinement?

Product backlog refinement is an ongoing collaborative process that focuses on making sure everyone is on the same page about the development of a product.

So, it’s all about making sure that everyone involved knows:

  • What the product will and won’t do
  • The effort it will take to implement planned functionality
  • The order in which the planned features will be deployed

The goal is to create a shared understanding of the future of the product between the development team and the product owner.

(NB: A product owner is the member of the team that’s responsible for the outcome of the project.)

Why is product backlog refinement important?

Product backlog refinement helps everyone on the dev floor align.

Creating a shared understanding between teams is one of the first steps to creating a healthy workplace atmosphere. It’s also a boon to efficiency. With everyone on the same page, there’s a reduced risk of mistakes and wasted effort due to miscommunication.

Product backlog refinement also helps to get an idea of the costs and effort associated with each planned feature. This helps with resource planning. For example, it helps to ensure that the important things get developers’ attention first, and the ‘could-haves’ are worked on second.

A four-point guide

1.      Insight

First things first, you need to get a good idea of what development work needs undertaking.

To start, remove any completed user stories or feature plans. You should also bear in mind that technologies change even more than customer minds do. So, it’s worth reviewing and removing older ideas that no longer meet the requirements of your customers or fit with the technology at your disposal.

You can then get your new and remaining user stories and plans mapped out. With this completed, you’ll know more about the features the team should soon be creating.

2.      Prioritisation

Next in the product backlog refinement to-do list, you need to put the plans you’ve got into an order of importance. Prioritise the plans that are ‘must-have’ as soon as possible.

Work out what your top priorities are, and what needs to be worked on sooner. Considering the MoSCoW method can be helpful here. By clearly defining the order that the team will be working on things, you help keep everyone focused on the right tasks.

3.      Dismantle

With the items on your product backlog identified and prioritised, the next step of refinement is to break each of them down into the separate steps / functionalities they encompass.

This means two things:

  1. Breaking down workflows into individual steps
  2. Breaking down steps into what happens if things go right, and what happens if things go wrong

4.      Resource

Point four of the product backlog refinement process is dealing with the dreaded ‘how long will it take?’ question.

Work with the team to get an estimate of the time and effort needed for each entry on your to-do list. This will give you an idea of the resource costs involved, and an idea of when features might be ready to ship.

Working timeframes out might influence you to go back and re-order your priority list. Is there anything that isn’t as important as you thought, now that the effort involved is clearer?

TL;DR: Product backlog refinement

Product backlog refinement is a must-happen process in any efficient tech development setting. It makes sure there’s a clear understanding of expectations, limitations, abilities, and goals across the development board.

Establishing a shared understanding of the product and its future is something that needs to be done regularly. And product backlog refinement is the way to get that done.

Useful links

Software project estimation: handling the dreaded ‘how long will it take?’

Murder on the dev floor: how to cultivate development team harmony

Yes to YAGNI