Product Backlog and its health:
Product Backlog is a list of work items like User Story, Defect, Spike, Technical Debt etc. It's very important to ensure the health of Backlog with a high value.
Product Backlog |
Backlog items should be refined, prioritized and estimated regularly. These activities ensure the health of the Backlog.
Why Backlog health is important?
Always "Health is wealth". Let's consider a scenario where there is an urgent patch release that got planned, which made team to continuously work without able to spend time for refinement activities. In this case what will happen to the upcoming Sprint(s), if we miss the refinement?
This situation can be managed very well if the Backlog is healthy. It is like we already have enough items to run our upcoming Sprint(s) and team is not exactly dependent on the refinement meeting to start the upcoming Sprint.
How to calculate Backlog Health?
To calculate Backlog Health, we need to have certain values:
Average Velocity
Story points that are available in Product Backlog
Work items in Product Backlog get Story points during "Backlog Refinement" meeting. In Backlog Refinement meeting, work items get refined by understanding the functionality, Business need and priority of the work item, clarifying the doubts and estimating the work item.
Conditions to understand the Backlog Health:
Example: 1
Average Velocity of Team = 20
Story points that are available in Product Backlog = 18
In this case, we can understand that Story points that are available in Product Backlog is less than the Average Velocity of the Team. This shows that team needs to strengthen the Backlog health by planning more Refinement meetings.
Example: 2
Average Velocity of Team = 20
Story points that are available in Product Backlog = 20
In
this case, we can understand that Story points that are available in
Product Backlog is equal to the Average Velocity of the Team. This
shows that team met the need of managing the upcoming immediate Sprint only. So here team has an option to still increase the Backlog health.
Example: 3
Average Velocity of Team = 20
Story points that are available in Product Backlog = 30
In
this case, we can understand that Story points that are available in
Product Backlog is greater than the Average Velocity of the Team. This
shows that team is performing well in planning and getting the actual outcome of Backlog Refinement meetings.
How to improve Product Backlog Health?
Product Backlog Health indicator helps team to understand the improvement area in strengthening the Backlog Health. Scrum Master should plan more Backlog Refinement meetings to improve the Product Backlog health by collaborating with Product Owner and Development team.
Expected Product Backlog Health:
Anytime, it's a good practice to ensure that the health of the Product Backlog is twice the average velocity of the team.
Example:
Average Velocity of Team = 20
Expected Story points that should be available in Product Backlog (at least) = 40
Backlog Health Indicator:
It's really a good practice to represent Product Backlog Health in "%". This will help team to understand where we stand in nutshell and to understand the need of the action and plan for the same immediately.
Product Backlog Health = [Story Points in Backlog that are refined / (Average Velocity of Team) * 2 ] * 100
Example:
Average Velocity of Team = 20
Story Points available in Product Backlog (Refined) = 10
In this case, Product Backlog Health (In %) = [10 / (20*2) ] * 100 = 10/40 * 100 = 25%
Product Backlog Health is 25% and it is not a good sign and immediate action is required to improve the Backlog Health.
In addition it is always good to set a standard to represent the Backlog Health.
Backlog Health - Guidelines |
It's very nicely explained Selvy... Being a newbie in scrum, now i can easily understand product backlog health and why it iz so important..
ReplyDeleteGlad to know that this post helped you.
ReplyDelete