Meetings are for decisions, and these decisions need to be documented.
- Decisions must be documented and, in addition to the decision made, include the following additional information or refer to it:
- Reasons why the decision was made
- Any alternatives considered
- Any accepted consequences resulting from the decision
- When the decision was made
- Following a decision, it must be defined who needs to be informed about the decision by when and in what form.
Architecture Decisions
- Decisions concerning software architecture must be documented in the following Architecture Decision Record (ADR) format.
ADR-001: Concise title
Status: [Draft, Proposed, Accepted, Deprecated, Superseded]Context
A value-neutral description of the forces at play (technological, political, social, and project-specific)Decision
The decision made, including the reasoning behind it.Alternatives
Any alternatives that were considered, including > reasons why they were rejected.Miscellaneous
Additional information like "Create on", "Accepted on", ...
- ADRs should be put under source control and be stored in the corresponding project in the
doc
folder. - Pull requests can be use for discussion and approval of the ADR.
Make sure to check out Michael Nygard's post on Documenting Architecture Decisions
Decisions in recurring meetings
For recurring meetings I like to keep them in one large document containing the meeting minutes, to dos, ... The format for decisions is similar to the one for to dos, see
Managing To Dos in recurring meetings, when there's no agreed upon tool.
DECISION-001 Architecture decisions must be put under source controlReason: Decisions can be discussed in pull requests, changes are tracked, decisions are readily available for the developers and close to the codeConsequences: access is limited to readers of the repositoryAlternatives: Confluence, Wiki, Word documentsTODO-001 John 2025-02-14: Inform all architects and developers about this decision
- If there's no organization-wide decision tracking tool, the above format can be used.
Author Of article : The Struggling Dev Read full article