Agile development is now a widely accepted and efficient method of software development. In short, A quick articulation of its core principles is consistent delivery of functional software by self-organized teams in an environment of shifting priorities and requirements. And it works! If you can implement it well…
Not every company implements agile the same. However, there is a key component in any implementation: grooming requirements/user stories to ensure they are up to a certain standard to plug into the development cycle without issues.
Whether you use Scrum or Kanban, the fundamental unit is clear and concise user stories. Not all user stories come in perfectly. The point of grooming is to take imperfect stories, work to understand them, and rewrite them if needed to meet a standard of quality before the team commits to delivering them.
The best framework for grooming is using INVEST. A well-written story needs to meet every criterion of this acronym. The sole focus of your grooming meetings should be to make every story:
Independent: the user story can be delivered independently from other stories.
Negotiable: the solution/delivery method is flexible; i.e. it shouldn’t just be a fixed list of specific features, but instead focused on a problem being solved that provides a certain value.
Valuable: there is actual business value that comes with delivery of this story.
Estimable: the difficulty is understood to a reasonable level of confidence (this will be the story’s size once it has been groomed to meet these criteria).
Small: it can be done within one sprint; if you commit to it, it should be able to be done.
Testable: there is a reasonable level of confidence that it can be tested for success or failure to meet the needs of the story.
This is a meeting like any other: something engineers aren’t always keen on joining when they could be writing code. This can also be an especially long meeting with high risk of theoretical “in the weeds” conversations.
To some degree, we need to respect that that is the point of grooming. We want engineers in the weeds, but only enough to make sure the story can meet the criteria of INVEST. But no more than that.
It can be difficult to keep the meeting focused around this sole purpose. That’s why it’s important that the participants are clear on the purpose and agenda of the meeting from the beginning, and that the leader is committed to leading.
Just because stories are groomed does not mean they will be done. Priorities change often and being able to be flexible to this reality is a key aspect of agile.
Many times, the point of story grooming is for companies to ascertain challenges in order for stories to be effectively placed… 1) in the development roadmap, 2) backlogged, or 3) tossed out altogether. Sometimes it can feel like time was wasted if these stories are groomed and never delivered, but this is not true.
Grooming increases understanding as a team. It helps not only with story writing, but giving the business owner/product manager a better understanding of what they are asking for and whether or not it’s the right thing to do. It will also help your business owner/product manager understand how to write stories with INVEST in mind, which will make your groomings smoother going forward!
Grooming is all about taking stories that might be a little rough around the edges and giving them a makeover to make sure they can smoothly plug into an agile development cycle.
To do this, the team must spend time together reviewing each piece of potential work and making sure it is independent, negotiable, valuable, estimable, small, and testable. A team that can quickly groom stories to meet these criteria will find themselves at an advantage, with fewer frustrations during their actual development time.
Yes, it’s another meeting. But the time is worth it when best practices are followed.