I really owe Cheryl Carter. Her writings on keeping kids organized may not be related to agile and lean software development methods in any way, but they have triggered quite a few learning moments for me.
The most recent lesson relates to the difference between inventory and maintenance tasks. In a passing comment, she referred to the fact that all household chores can be divided into these two categories – inventory and maintenance. And of the two, inventory must always be taken care of first, otherwise things start piling up and causing bottlenecks.
It had always been clear to me that product backlog management in software development is really nothing other than inventory management. In the case of a software product, the features on the backlog are the items in your inventory that need to be tracked, prioritized and processed through the system at a (preferably) consistent rate to ensure the desired throughput.
But who knew that I had been unknowingly applying the same principles to my laundry all along?
In fact, you can learn quite a few lessons about product backlog management from doing the laundry. Three spring to mind quite readily:
- Keep colours separate. When you’re choosing stories for an iteration, it often works quite well to choose stories with a common theme. This makes for a coherent iteration goal to help guide and motivate the team.
- Use the drier sparingly. From time to time, you may need to fast-track a particular story to deliver business-critical value. This may require swopping stories from the current iteration. It may even require an impediment. But don’t do this too often since it will cost you kudos with the team.
- Don’t let the bin overflow. Keeping the product backlog lean and mean is vitally important. Regularly grooming the backlog to re-prioritize or remove stories helps to keep the backlog in shape.
So when next you hear someone say That shirt I wanted to wear today is still wet – please spare a thought for the household manager whose backlog management has let her down.