Technical Debt Records: The Missing Piece in your Software Architecture Documentation
Use Technical Debt Records (TDRs) to make software debt visible and trackable - boosting software architecture documentation and long-term maintainability.

Technical debt - while often seen as a necessary evil - can silently undermine software quality, team productivity and long-term agility.
To proactively manage this risk, Technical Debt Records (TDRs) provide a structured way to document and track known technical compromises.
Just as Architecture Decision Records (ADRs) help teams understand why architectural decisions were made, TDRs aim to make technical debt explicit: what was deferred, why, and what the impact is.
The concept of Technical Debt Records was introduced by Michael Stal in a Heise article (π©πͺ). It states that TDRs are particularly valuable in agile development teams in which the architecture is constantly being further developed.
A lean TDR format
I propose the following lean format for recording technical debt π
TDR-[ID]: [Short Title]
A short and descriptive title for the technical debt item. Use a unique ID (e.g., TDR-01).
- Status
Current state of the debt. Suggested values:Open
,Planned
,In Progress
,Resolved
,Won't Fix
. - Description
A concise explanation of the technical debt. What was done, whatβs missing, or what needs improvement? - Impact
What are the potential consequences or risks of leaving it unresolved? (e.g., instability, poor scalability, increased maintenance) - Possible Solutions
Potential ways to address or refactor the debt. Doesnβt need to be final - just an idea or direction. - Owner
Person or team responsible for tracking or resolving this item.
π Where TDRs Belong in arc42 software architecture template
In the arc42 template, TDRs naturally fit into Section 11: Risks and technical debt.
This section is for known constraints, risks and trade-offs - making it the perfect place to keep a log of documented technical debt.
I am working on an software architecture documentation starter project that includes the key techniques and technologies for good software architecture documentation. I have also included records of technical debt in the starter project π
Comments ()