Technical Debt
Technical debt is the accumulated extra maintenance cost of suboptimal design choices made for fast delivery, requiring planned repayment.
Purpose
Quantify and manage the long-term cost of design compromises, balancing delivery speed and quality.
Mechanism
Types: deliberate (choosing fast over good knowingly), accidental (from ignorance), and unavoidable (requirements changed). Management: visualize it (SonarQube), repay it deliberately (refactoring iterations), and prevent new debt (CI gates).
Use cases
- Project management
- Refactoring planning
- Quality metrics