Technical debt (also known as
design debt or
code debt) is a metaphor referring to the eventual consequences of any system design,
software architecture or
software development within a
codebase. The debt can be thought of as work that needs to be done before a particular job can be considered complete or proper. If the debt is not repaid, then it will keep on accumulating interest, making it hard to implement changes later on. Unaddressed technical debt increases
software entropy.