Visualize churn within a timebox (iteration, milestone)
Overview:
We are looking to build out information about iteration (sprint) churn, things like
- A: what issues were originally in the iteration when the iteration started (count, and total issue weight)
- B: did issues get added to the iteration after it had started?
- C: did issues get removed from the iteration after it had started
- D: did issues that were still in the iteration when the iteration finished not get closed by that time?
- E: what issues were still in the iteration and in a closed state when the iteration finished?
Perfect flow has B, C, D = 0, so A = E
Ideas for Useful Metrics
Actual Capacity vs Planned Capacity = E divided by A. Can be done by 'throughput/number of issues' or by 'weight'. e.g. I planned 50 points/weight when the iteration started (A), by the time it closed we had done 45 points/weight (E) so actual vs planned capacity = 45/50 = 90% The closer to 100%, the more estimation accuracy from the team and 'fair' planning from the product owner. The figure could be over 100% as well, e.g. maybe not enough work was planned, and so late stuff was added and all completed; if we were a long way above 100%, that would also be bad!
Iteration Churn: max(B,C) divided by A e.g I planned 50 points/weight, but then I added 10 and removed 5. Churn = 10 / 50 = 20% The closer to 0%, the more stable the scope
Completion of final day iteration scope = E divided by (D+E). e.g. by the last day of the sprint there were 10 points not done (D) and 45 points done (E), so completion of final scope = 45 / (10+45) = 81.8% The closer to 100%, the more accurate the mid-sprint adjustment process was.
Possible diagram ideas
To help people visualise this you could consider a sankey diagram (attached) with colors for the good/bad stuff. A and E are the good parts of the pipeline that should ideally be aligned and look about the same size. I'd centre the entire diagram vertically on A and E if I could as this is the 'main smooth pipe' that a product owner should be chucking work through cleanly without funky joints added (B, C) or stuff that didn';'t get done in time (D) B and C both show the product owner tinkering with scope and should colour code to match sprint churn If I'd been able to do so easily, I would have shown D and E united as 'final iteration scope = 55' before the split into incomplete vs completed.