Description
Technical Debt is incurred when the agile team proactively determines that a less optimum, less efficient, or less robust solution is appropriate given constraints of time, budget, or resources. As this graphic from Martin Fowler describes, as technical debt increases, the costs and effort to continue development, or maintain an existing system, will become too high, and a “technical debt sprint” should be scheduled within a release to improve code quality.
The business community likes technical debt due to short-term gains.
The technical community dislikes technical debt due to long-term pain.
Typical Roles
Agile Team
Scrum Master
Desired Behaviors
- 1.
Quantify the technical debt and balance the business needs with the technical needs of your projects.
- 2.
Leverage the practices in sprint planning to plan, prioritize, and sequence the elimination of technical debt by allocating them as user stories to future sprints and releases.
- 3.
The decision to incur technical debt should be proactive and not the result of defects or coding errors.