ADR 代表架构决策记录,是一个迷你文档,用于捕捉不值得完整设计文档的重大架构变更。
# [已解决问题和解决方案的简短标题]
* 状态: [提议 | 拒绝 | 接受 | 废弃 | … | 被 [ADR-0005](0005-example.md) 取代]
* 决策者: [列出所有参与决策的人]
* 日期: [YYYY-MM-DD 最后更新决策的日期]
技术故事: [描述 | 票据/问题 URL]
## 背景和问题陈述
[描述背景和问题陈述,例如,使用两到三句话的自由形式。你可能想以问题的形式阐明问题。]
## 决策驱动因素
* [驱动因素 1,例如,力量、面临的关注等]
* [驱动因素 2,例如,力量、面临的关注等]
* …
## 考虑的选项
* [选项 1]
* [选项 2]
* [选项 3]
* …
## 决策结果
选择的选项: "[选项 1]",因为 [理由,例如,唯一满足关键标准的选项 | 解决了力量问题 | … | 最佳结果(见下文)]。
### 积极后果
* [例如,质量属性满意度的提高,需要后续决策等]
* …
### 消极后果
* [例如,妥协质量属性,需要后续决策等]
* …
## 选项的优缺点
### [选项 1]
[示例 | 描述 | 更多信息的指针 | …]
* 好,因为 [论点 a]
* 好,因为 [论点 b]
* 坏,因为 [论点 c]
* …
### [选项 2]
[示例 | 描述 | 更多信息的指针 | …]
* 好,因为 [论点 a]
* 好,因为 [论点 b]
* 坏,因为 [论点 c]
* …
### [选项 3]
[示例 | 描述 | 更多信息的指针 | …]
* 好,因为 [论点 a]
* 好,因为 [论点 b]
* 坏,因为 [论点 c]
* …
## 链接
* [链接类型] [链接到 ADR]
* …