Architecture Decision Log
The architecture decision log (ADL) is a collection of architecture decision records (ADRs). This is one of the various methods the Authelia project uses to make and record decisions. It is a semi-formal process which records a specific scenario or issue and the various implementation options available and their various drawbacks and advantages. It may at some point have a formal decision that’s been made and the specific rational for that decision, as well as the rational why other implementation was not chosen.
There may or may not be a linked public discussion on a specific ADR, there may be incremental revisions as new information comes to light, and various other changes as time progresses.
The intent behind the Architecture Decision Log has primary and secondary elements.
Primarily:
- Have formal discussions on various elements of the design process and record formal decisions
- Keep a log of historical choices so that we can refer back to them in the event we forget the nuances of a complex decision
Secondarily:
- Reference the specific ADR’s in other areas of the documentation
- Clearly and efficiently communicate a specific decision in the event of a feature request or bug report
Each ADR has several key sections.
Name | Description |
---|---|
Status | The current status of the ADR |
Context | The context surrounding why the ADR is necessary and what it’s about |
Proposed Design | The proposed design or designs for consideration |
Decision | The decision made as a result of the ADR |
Consequences | The potential undesirable outcomes related to the ADR |
Related ADRs | The other ADRs that are related to a specific ADR |