ADR (architecture decision record)
A short document, kept with the code, that records one architecture decision: the context, the options, the choice and its consequences.
Michael Nygard proposed the format in 2011. Each record is a page in the repository, numbered and never edited after acceptance; a later decision that reverses it gets its own record. New people learn why the system is the way it is, and the team stops reopening settled questions. For a buyer taking over software, a folder of ADRs is one of the clearest signs of a maintainable codebase.
Related terms
- Technical debt: Shortcuts in code and design that speed up delivery now and make every later change slower until they are paid back.
- Runbook: A short document that tells someone else how to run a system: where it lives, how to deploy, how to recover.
- C4 model: A way to draw software architecture at four zoom levels: system context, containers, components and code.
