- Documents a decision that addresses a functional or non functional requirement that is architecturally significant
- An Architecturally Significant Requirement is a requirement that has a measurable effect on a software system’s architecture and quality.
- Collection of ADR is referred as ADL (Architecture Decision Log)
- Solution to a problem can start as an RFC to facilitate discussion and collaboration within the community members. The outcome of the RFC must be recorded as an ADR
- ADR can also be used to document patterns/standards that forms naturally. Patterns can be identified when doing code reviews
- Status
- DRAFT
- ACCEPTED
- SUPERSEDED by ADR-xxx
- OBSOLETE
- Add label to confluence pages that has an ADR
Markdown |
---|
# ADR-000001 - Use Kafka as the distributed event streaming platform
Date: 2022-05-07
## Status
DRAFT
## Background/Context
Explain the need that triggered the usage of a streaming platform
## Assumptions
List all assumption that were made when making the decision
## Constraints
List any constraints that lead us to make a certain decision
## Decision
## Implications
### Pros
### Cons
* Complex to maintain if we are not using a managed service
* Monitoring tools
* Lack of reliable and cost effective Disaster Recovery Options |
Resources
https://github.com/npryce/adr-tools
Questions
...
Page Properties Report |
---|
pageSize | 50 |
---|
sortBy | submitted date |
---|
cql | label = "decision-record" and space = currentSpace ( ) |
---|
|