Basics of Backlog Management for Agile Projects
/*Basics of Backlog Management for Agile Projects
First things first, what is a backlog? The backlog is an ordered list of requirements, features, tasks, enhancements, and so on for a product/project that ensures the customer is getting the highest value possible frequently and continuously. The backlog is prioritized by the Product owner with input from the customer and project team. It is typically split into three levels:
- Product Backlog: Highest-level backlog for the whole product
- Release Backlog: Subset of the product backlog to be delivered in a release
- Sprint / Iteration Backlog: Subset of the product backlog for a single sprint / iteration
Agile projects are more flexible than traditional projects, therefore the Backlog is more susceptible to changes. So, what steps can a Product Owner take to manage the backlog throughout the project, even with unforeseen changes?
A PO can follow these steps to groom and refine the backlog.
- Prioritize new requirements based on business value
- Use T-shirt sizing (S,M,L) to size new requirements
- A User Story is a small requirement, whereas Epics are usually medium and large size requirements
- Break Epics down into User Stories and re-prioritize
- Flesh out requirements for User Stories; add details and acceptance criteria
- Complete technical design
- Estimate User Stories in story points
- Reprioritize User Stories based on story points and value and mark as ready for sprint
The Product Owner holds responsibility for maintaining the backlog, but they should work with the customer and the team to refine it and keep it organized. The Product Owner should communicate with the team and the customer regularly and refine the backlog at least a few times per week to keep up with changing demands of the project.
The bottom of the backlog contains low-priority, coarse requirements such as epics. Requirements get more refined and detailed as you get closer to the top; the top of the backlog contains fine-grained, high-priority requirements that are ready for consumption in the next iteration. Product Owners should strive for the backlog to be D.E.E.P.: detailed appropriately, estimated, emergent, and prioritized.
How does the Product Owner know how to prioritize the backlog items or what could be the basis for prioritization? A PO can use one or more of the following criteria to prioritize backlog items:
- Customer value: what is value that customer will get from it?
- Cost of delay: what is cost of delaying this backlog per week or per day?
- Urgency of feedback: how important is the feedback?
- Size: How much time will it take the development team to implement?
- Dependency: ex. if A is important for B and C, then A should be prioritized first
- Usability: What parts are needed to go live to make the increment usable for the customer?
Backlog grooming is important in Agile projects to stay consistent with the flexible nature of Agile projects, to keep the project organized, and to keep it moving, getting the most prioritized items completed first. The best way to stay on top of the backlog is to follow these steps and best practices, be proactive, and communicate with the customer and development team as you go.
Want to learn more about Backlog grooming for Agile requirements? Watch ‘Business Requirements and Backlog Grooming for Agile‘ by Enterprise Agile Coach, NK Shrivastava.