Definition
Technical Debt represents that extra rework caused when a faster, seemingly-easier solution is chosen to accomplish a task, instead of a more reliable one that takes a long period of time. The carry over work accumulates as ‘debt’ and can cause problems for the development team in the long run. It is also referred to as Design Debt, and is commonly associated with extreme programming.
Further Reading
- “Refactoring for Software Design Smells: Managing Technical Debt”(book), by Mike Cohn