An interesting philosophical discussion was triggered on MindTheProduct’s Product Managers Skype chat when I questioned why someone had incomplete user stories in their development backlog. The majority of the answers can be boiled down to “because that is how it is done”.
However, I feel there is another way, which offers several advantages over doing the grooming in the development backlog.
Grooming and fleshing out feature requests should be done in their own ‘queue’ – call it a backlog or my preferred term, ‘product pipeline’. Once the user stories are ready, they can then be transferred from the pipeline to the development backlog for prioritisation and management into the development cycle. Marty Cagan referrers to something similar as an opportunity backlog.
Why move grooming out of the backlog process?
The product-management process is one of collaboration, not only between the product manager and the development team, but across the company and with the end users. It is important to incorporate these insights from various stakeholders when doing the grooming.
As development backlogs are controlled with a limited number of people having collaborative access, a majority of stakeholders are excluded from the process of grooming, only being shepherded in to ‘contribute’ through meetings. As we’ve all surely learned, meetings are rarely great ways of getting input and feedback in an effective manner, leaving a lot of value from stakeholder collaboration unrealised. It’s better to change the process than bandage it with meetings.
While the development backlog could be opened up to the broader company, this will see it become full of feature requests and bug reports making it unwieldy, thereby losing its effectiveness as a prioritisation and development management tool.
By moving grooming out of the development backlog, you can open up the grooming process, gaining the advantage of the stakeholders’ insights and discussion around the user stories without impacting the management and prioritisation for development cycles. All the feature requests and bugs added to the product pipeline (as will undoubtedly happen) are simply treated as very basic user stories that can be groomed over time.
One argument used to support grooming within the development backlog is the idea of technical efficiency or building related user stories together. Nice sounding logic, yes, but I question whether there is much gained from this approach. By following this logic what you are saying is user story y is related to user story x and, as we are definitely going to build x, let’s go ahead and flesh out y and build them together to save effort. There is no consideration of whether y is really needed, but it is getting built because it’s related to x and it may (or may not) be needed in the future.
By the time you come to use y it could easily be unfit for the purpose, given the learning and changes since it was originally built. That efficiency gain is lost as y needs to be rebuilt anyway to be effective.
It’s better to focus on building what you need right now and making sure you are building the right things and not whether they are technically related when grooming.
Grooming user stories outside of the development backlog and moving them across only at the point you are almost 100% sure you are going to build them helps focus everyone on working out what should and needs to be built. You avoid the temptation to fill out a development cycle simply to ‘fill it out’, freeing up precious development time for other tasks.
How many product owners have added stories to a development cycle because there was spare time? Probably all of us at one point or another. We’ve got to be seen to be busy, after all.
Grooming should be an ongoing task and not one that is boxed into a meeting. By making it ongoing, there is the luxury of time to drill down into what’s really needed or wanted, making the user stories laser focused. In effect it helps ensure you are only building what is needed.
Ongoing grooming helps to incorporate learning while it’s fresh in everyone’s minds. What you learn from releases, usability testing, experimentation, etc. will often affect more than one user story. If you only groom the stories in a meeting, as time goes by, what you learned is forgotten and starts to lose its potency. In restricting grooming to meetings you aren’t taking advantage of the power of the learning. By doing ongoing grooming, anyone involved in the learning can update all the affected user stories while the learning is still strong in everyone’s minds. With ongoing grooming, the power of learning can be more fully realised.
Using a product pipeline doesn’t exclude the development team from the process of grooming but expands it to more effectively utilise the rest of the company, end users and learning. The development backlog then becomes more focused on delivery, raising the productivity of both the development team and the product managers.
By promoting effective collaboration during grooming, product pipeline helps reach the point where that big feature request from sales is whittled down to a focused user story that delivers everything it needs and is straightforward to deliver.