Like tax and death in life, no team can avoid technical debt
in software development. Therefore we need means to manage it. To manage
technical debt three broad strategies are used:
- Buffer stories
- Buffer tasks
- Technical debt paying releases
Buffer stories
Team can set aside approx. 10% of velocity per release for
technical debt paying stories. This will set the expectation of business
stakeholders in each sprint and help to maintain relatively technical debt free
software. These stories are created by
dev team. If story is focused on function debt, let PO drive it.
Buffer tasks
During task break down (in Sprint planning meeting), if
required, technical debt paying buffer task is created and budgeted. This
approach ensures ease in scheduling but also raises the risk of spending
resources on not so important things.
Technical debt paying
releases
Instead of paying a little in each sprint, team may decide
to devote larger chunk of resources periodically (generally every 6 month).
This approach is works well where sprints are going on for multiple years. In
this approach a risk of mounting debt always lingers on. Team should avoid Technical debt paying release just
after a frenzied, time-critical and feature heavy release.
I am sure there are more ways to pay back debt. I like to hear from you more.
No comments:
Post a Comment