Technical debt

design debttoggle debtworkaround
Technical debt (also known as design debt or code debt, but can be also related to other technical endeavors) is a concept in software development that reflects the implied cost of additional rework caused by choosing an easy (limited) solution now instead of using a better approach that would take longer.wikipedia
45 Related Articles

Code refactoring

refactoringrefactoredrefactor
Failure to perform refactoring can result in accumulating technical debt; on the other hand, refactoring is one of the primary means of repaying technical debt.

Software entropy

code entropy
Unaddressed technical debt increases software entropy.
Software entropy is increased with accumulation of technical debt.

Code smell

code smellssmellssymptoms
Bad code smells can be an indicator of factors that contribute to technical debt.

SQALE

In addition, this method allows doing the precise management of design debt for Agile software development projects.

Software development

developmentdevelopedapplication development
Technical debt (also known as design debt or code debt, but can be also related to other technical endeavors) is a concept in software development that reflects the implied cost of additional rework caused by choosing an easy (limited) solution now instead of using a better approach that would take longer.

Debt

debtsprincipalborrowing
Technical debt can be compared to monetary debt. While Manny Lehman's Law already indicated that evolving programs continually add to their complexity and deteriorating structure unless work is done to maintain them, Ward Cunningham first drew the comparison between technical complexity and debt in a 1992 experience report:

Upstream (software development)

upstreamupstream contributionupstream software development
Ongoing development in the upstream project can increase the cost of "paying off the debt" in the future.

Service-level agreement

service level agreementSLAservice level agreements
Modifying production code carries the risk of outages, actual financial losses and possibly legal repercussions if contracts involve service-level agreements (SLA).

Manny Lehman (computer scientist)

Meir M. LehmanManny LehmanMeir Manny Lehman
While Manny Lehman's Law already indicated that evolving programs continually add to their complexity and deteriorating structure unless work is done to maintain them, Ward Cunningham first drew the comparison between technical complexity and debt in a 1992 experience report:

Ward Cunningham

Cunningham's lawHoward CunninghamCunningham, Ward
While Manny Lehman's Law already indicated that evolving programs continually add to their complexity and deteriorating structure unless work is done to maintain them, Ward Cunningham first drew the comparison between technical complexity and debt in a 1992 experience report:

Documentation

documenteddocumentingdocument
Activities that might be postponed include documentation, writing tests, attending to TODO comments and tackling compiler and static code analysis warnings.

Test automation

automated testingautomatedTest tool
Activities that might be postponed include documentation, writing tests, attending to TODO comments and tackling compiler and static code analysis warnings.

Comment (computer programming)

commentcommentsREM
Activities that might be postponed include documentation, writing tests, attending to TODO comments and tackling compiler and static code analysis warnings.

Static program analysis

static code analysisstatic analysiscode analysis
Activities that might be postponed include documentation, writing tests, attending to TODO comments and tackling compiler and static code analysis warnings.

Grady Booch

BoochE. Grady Booch
Grady Booch compares how evolving cities is similar to evolving software-intensive systems and how lack of refactoring can lead to technical debt.

Open-source software

open sourceopen-sourceopen source software
In open source software, postponing sending local changes to the upstream project is a form of technical debt.

Escalation of commitment

Escalations of commitmentirrational escalationIrrational escalation or Escalation of commitment