prior to your technical debt sprint or at the start of it, read through all the refactoring cards together. When our team does this, we put on the board any tasks we think we might do. We don’t bother to estimate them; we just choose what we feel are the right tasks to work on and keep going until we run out of time. Tasks we don’t get to are saved until the next technical debt sprint.
At the end of the sprint, you don’t have anything new to show your customers, unless you implemented some small features to reduce time spent on production support. However, you can celebrate the lines of unused code you deleted, the mis-named database columns you renamed, and the refactored automated tests that allow you to make future changes in only one method or module rather than in many individual tests. It might be useful to quantify your technical debt as a dollar amount and track your progress.
With your technical debt load significantly lightened, your team will enjoy focusing on delivering new business value much more easily than before. Your business stakeholders will be delighted by the renewal of a steady or even increasing velocity.
- “The Financial Implications of Technical Debt,” Jim Highsmith, 2009
- “SpamCast 112—Israel Gat, Technical Debt ,” December 2010.
- Cutter IT Journal issue on Technical Debt
- Managing Software Debt—Building for Inevitable Change by Chris Sterling, Addison-Wesley, 2010