题记与说明
版本:横纵综合报告 · 最终稿(2026-11-03;按独立审读意见修订,八条意见全部处理,本轮新增核实与改动的处置记录见第四节"核实与修正说明"第 6 条)
来源:本稿综合同日两份章节稿——纵轴《从诞生到当下的完整发展历程》与横轴《横向对比报告》(见output/reports/parts/下 2026-11-03 两个文件),并对两稿之间的两处事实分歧做了当日一手核实与修正、对另外三项关键数据做了复核补充,核实过程与证据见文末"核实与修正说明"。全文关键事实均保留来源链接。
TL;DR
ADR(架构决策记录)是"一份决策一份短文档、与代码同库演进"的工程实践,由 Michael Nygard 于 2011 年 11 月提出。十五年间它完成四级跳:从敏捷博客习惯(2011–2015),经工具化与 ThoughtWorks 雷达背书(2016–2019),到 GitHub 官方规范与 ISO 42010 概念框架收录、MADR 成为事实格式标准(2020–2022),再到 2025 年起被当作 AI 编码智能体的"机构记忆"。格式之争已收敛——MADR 功能最全、Nygard 模板是兼容底线,而 2026 年一项受控实验显示二者各有最优区间(简洁 vs 结构化;该研究先用 DESMET 特征分析从五种模板中专家初选出最优的两个,受控实验仅对比 Nygard 与 MADR;单一研究、33 名本科生样本、待复制),模板没有普适答案;工具层则始终未收敛,头部 CLI 已停更,行业的真实落点是"模板即工具"(Markdown + Git 约定)。课题四要素中,"证据"是所有主流模板的结构性短板,"复盘"(状态机 + supersede 链)是 ADR 相对 RFC/Design Doc 的独特优势但兑现率低。建议按团队规模分层组合,并把"何时写、何时复审"制度化:AI 负责起草与合规审计,人负责裁决。
一、纵轴:发展脉络(1969 → 2026.11)
1.1 阶段〇(1969–2010):史前积累——"决策文档"的两种传统
ADR 不是凭空出现的,它踩在两条更长的传统上。
第一条是工程师社区的"编号决策文档"传统。 1969 年 4 月 7 日,Steve Crocker 在 UCLA 写下第一份 RFC("Host Software"),开启互联网社区用编号文本文档记录技术决定与讨论的习惯(RFC 1 原文)。2000 年 7 月,Python 社区把这一体裁产品化为 PEP(PEP 1 "PEP Purpose and Guidelines",Barry Warsaw、Jeremy Hylton 起草),确立了"提案—讨论—接受/拒绝"的决策流水线(peps.python.org、Python 2.0 What's New)。这套"短文档 + 状态字段 + 全程留痕"的体例,正是 ADR 的精神原型。
第二条是架构研究与治理的"决策一等内容"传统。 2000 年前后,SEI 提出 ATAM(Architecture Tradeoff Analysis Method,Kazman、Klein、Clements,报告编号 CMU/SEI-2000-TR-004),把"架构取舍要有场景、要有证据、要显式化"方法化(ATAM 论文)。2005 年出现两篇奠基文献:一是 Capital One 的 Jeff Tyree 与 Art Akerman 在 IEEE Software(2005 年 3/4 月号)发表《Architecture Decisions: Demystifying Architecture》,给出企业级"架构决策描述模板"——决策、状态、假设、约束、备选方案(Positions)、论证(Argument)、影响(Implications)、相关决策/需求/制品(原文 PDF、IEEE Xplore);二是 Anton Jansen 与 Jan Bosch 在 WICSA 2005 提出"软件架构即一组架构设计决策"的宣言式论文,被引逾 800 次,把"决策"抬升为架构的一等公民(Semantic Scholar)。
驱动因素:敏捷运动(2001 年后)把"重文档"钉在耻辱柱上,但架构治理又必须留痕;学界与业界同时意识到,架构里真正稀缺的知识不是视图图框,而是"当时的理由"。这一阶段的产品是"重模板":字段齐全、动辄数页,用于企业架构评审,离开发者的日常还很远。
1.2 阶段一(2011–2015):诞生——Nygard 的极简模板
关键事件:2011 年 11 月 15 日,Michael Nygard 在自己的博客(thinkrelevance.com,现归档于 cognitect.com)发表《Documenting Architecture Decisions》(cognitect.com 存档;本综合稿于 2026-11-03 再次抓取该页核实,页面标注日期即 2011-11-15)。
Nygard 的方案是做减法:每份记录只写一个决策,原文规定五个小节——Title(编号短句)、Context(促成决策的力量与约束)、Decision(决策本身)、Status(proposed/accepted 等)、Consequences(决策带来的多个后果,含取舍)。他明确反对"架构决策数据库"式的重工具:用纯文本、放进版本库、与代码一起演进、用简单工具生成目录即可。这份模板后来在社区传播中出现了瘦身变体(如 adr-tools 生成的 Status/Context/Decision/Consequences 四节加编号标题),这也是各家转述"四节到六节不等"的由来。后来社区通行的"以 ADR-0001《Record architecture decisions》开篇"的惯例,其样板内容就直接引用这篇 2011 年的文章作为灵感来源(Design Practice Repository 对该实践的梳理)。
主要参与者:Michael Nygard(作者)、最初在敏捷社区转发实践的早期采用者。
驱动因素:版本控制文化成熟 + 敏捷团队需要"轻量留痕";学界 2005–2010 年的"架构知识(Architectural Knowledge)"研究提供了概念合法性,但业界要的是能落地的极简做法。
1.3 阶段二(2016–2019):工具化与社区化——从博客习惯到行业默认实践
这是 ADR 从"一篇好文章"变成"一个生态"的关键五年。
权威背书:ThoughtWorks 技术雷达的条目历史(官方条目页,本综合稿 2026-11-03 抓取核实)显示:2016 年 11 月 "Lightweight Architecture Decision Records" 首次进入 Trial 环(2016-11-07 发布),2017 年 3 月维持 Trial,2017 年 11 月晋升 Adopt 环(即"默认采用"),2018 年 5 月维持 Adopt——practitioner Kevin Jalbert 的 2018 年博文也印证了这一时间点(kevinjalbert.com)。对保守企业而言,Adopt 环等于一纸通行证。
工具浪潮:Nat Pryce(npryce)在 2016 年前后发布 shell 脚本工具 adr-tools,提供 adr new / adr link / adr generate toc 等命令,把 Nygard 格式固化为可复制的工作流;此后无数项目的 ADR-0001 样板都写着"推荐 Nat Pryce 的 adr-tools",例如 GOV.UK 各仓库至今保留这一模板(GOV.UK ADR-0001 示例、ADR 示例库)。
社区组织:GitHub 组织 adr(创建于 2017-07-12,GitHub API 实测)建成门户 adr.github.io,集中登记各类模板与工具(工具登记册)。2017 年,MADR(Markdown Architectural Decision Records)由 Oliver Kopp 发起、Olaf Zimmermann 深度参与,并在 2018 年 ZEUS 研讨会上发表格式论文《Markdown Architectural Decision Records: Format and Tool Support》(CEUR Vol-2072)。Zimmermann 还把决策记录压缩到极致:从 2017 年 SATURN 论文中的 (WH)Y 方法演化为 2019 年前后定名的 Y-Statement——一句话说清"在什么场景下、面对什么关切、选了什么、放弃了什么、为了什么质量、接受什么代价"(ozimmer.ch、MADR 模板解读)。
布道:2017 年 5 月 4 日,Michael Keeling 在 SATURN 2017 做《Architecture Decision Records in Action》报告,留下被广泛转引的实录与视频(会议日程、笔记存档)。
驱动因素:微服务兴起——每个服务一个 docs/adr/ 目录,决策记录天然贴合"服务自治 + 团队自治";GitHub/Markdown 生态使 docs-as-code 零成本可行;ThoughtWorks 的 Adopt 环给了企业引入的底气。
1.4 阶段三(2020–2022):主流化、标准化与第一轮反思
企业级背书:2020 年 8 月 13 日,GitHub 官方工程博客发表 Eli Perkins 的《Why Write ADRs》,讲述 GitHub 移动团队用 ADR 做"决策社交化"与异步沟通、并把"未来队友用新 ADR 取代(supersede)你的决策"视为正常生命周期(github.blog)。这标志着 ADR 进入大厂工程规范。
工具生态扩张:2020 年前后,Thomas Vaill(thomvaill)发布 log4brains——npm CLI,把 ADR 从 IDE 直接发布成带搜索与决策间链接的静态站点(github.com/thomvaill/log4brains;2021 年 Lullabot 等团队即用 ADR 记录"选用 log4brains"本身,实例)。斯图加特大学生态推出 ADR-Manager(Web 版 MADR 编辑器,后有 VS Code 扩展,源自 2022 年 Steven Chen 的学士论文、Justus Bogner 指导;adr/adr-manager-apps)。
模板的版本节点:2022 年 5 月 17 日 MADR 3.0.0-beta 将名称从 "Markdown Architectural Decision Records" 改为 "Markdown Any Decision Records",标志 ADR 体例向产品决策、流程决策泛化;2022 年 10 月 9 日 MADR 3.0.0 正式发布(两个日期均经 GitHub Releases API 于 2026-11-03 复测)。社区同步出现 GADR(Generalized Architecture Decision Records)等泛化框架(adr.github.io/gadr)。标准层面,ISO/IEC/IEEE 42010:2022(2022 年 12 月出版)在新版架构描述框架中明确纳入"架构决策与 rationale"概念,为 ADR 提供了国际标准接口(标准概述、与 ADR 的对照实践)。
第一轮反思:实践中"写了没人读、决策过时无人维护"的问题浮出水面。2022 年赫尔辛基大学的灰色文献综述梳理了 19 篇行业文献中 ADR 实践的分布(综述 PDF);2023 年 Buchgeher 与 Weinreich(JKU Linz)对 GitHub 开源项目做 MSR 研究,系统考察 ADR 在开源中的真实使用率(IEEE Access、JKU 摘要页);2023 年 10 月 InfoQ 刊出《Has Your Architectural Decision Record Lost Its Purpose?》,把"ADR 是否已失去意义"变成公开议题(infoq.com)。
驱动因素:远程/异步协作放大了"决策上下文丢失"的痛点,ADR 成为默认答案;但采纳面扩大后,维护成本与"文档漂移"开始显形——这正是"后续复盘"机制(superseded by / deprecated 状态链、adr link、决策图)在此阶段被制度化的原因。
1.5 阶段四(2023–2026.11):AI 时代——ADR 成为智能体的"机构记忆"
实证研究接棒:2024 年 ECSA 会议上,Ahmeti、Wohlrab 等(查尔姆斯理工大学)发表行业行动研究《Architecture Decision Records in Practice: An Action Research Study》,直接考察 ADR 在企业中如何被引入、维护与衰败(论文 PDF)。2024 年 9 月 17 日 MADR 4.0.0 发布(Releases API 实测)。
ADR 的角色跃迁(2025):AI 编码智能体(Claude Code、Copilot 等)爆发后,实践者发现 ADR 是现成的、带 rationale 的高质量上下文来源,于是出现三个新动作:
- 作为长期记忆:把 ADR 目录喂给智能体,让它在改动前"读旧决策、守旧约束";社区流传"Claude 因 ADR-0003 的约束而停下"的案例(Andrew Connell: ADR as long-term memory、实践讨论)。
- 审计智能体的合规性:actual.ai 的研究指出,编码智能体常常"读不到"覆盖被改代码的 ADR,需靠标题命名与范围声明提升可发现性(What Happens When Coding Agents Read Your ADRs)。
- 智能体起草 ADR:出现四阶段工作流的 ADR Skill(扫描—草拟—评审—归档,MCP Market 收录)、Archgate CLI 等决策感知工具(archgate.dev),以及"从代码 diff 自动生成 ADR 防止文档漂移"的路线(Richard Ewing)。社区甚至开始讨论"智能体改架构前必须先提议 supersede 某 ADR"的守门规则(AI-Driven Development 笔记)、"AI 生成 ADR"的公开讨论(Hacker News、mdedit.ai)。
最新实证(2026):2026 年 4 月 30 日,巴西亚马逊联邦大学的 Nogueira、Silva、Conte 在 arXiv 发布《One Size Fits All? An Empirical Comparison of ADR Templates regarding Comprehension, Usability, and Ease of Adoption》(arXiv:2604.27333;本综合稿于 2026-11-03 抓取摘要页与 HTML 全文核实)。该研究先用 DESMET 特征分析对 Tyree/Akerman、Nygard、arc42、Y-Statement、MADR 五种模板做专家初筛、选出得分最高的两个(MADR 0.900、Nygard 0.868;专家即论文前两位作者,均有四年以上工业界软件架构经验),再用 33 人受控实验(软件工程本科生,A 组 17 人、B 组 16 人,交叉/组内设计,两阶段任务间隔一周)仅对 Nygard 与 MADR 做成对对比:Wilcoxon 符号秩检验显示 Nygard 的总评分数显著高于 MADR(W=84.0,p=0.002,Cliff's Δ=0.6364,大效应),优势概率 P̂=0.8182——即从两种模板的观测中各任取一份组成一对,Nygard 得分高于 MADR 的概率约为 81.8%。论文摘要的定性结论是:"Nygard 支持简洁客观的记录,MADR 便于承载结构化细节与具体架构需求。"AOE 等企业的技术雷达也已把 ADR 列入 Methods & Patterns 常设条目(AOE Tech Radar)。
驱动因素:LLM 需要"可机读、可检索、自带理由与代价"的上下文,ADR 恰好是 15 年来社区打磨出的标准单元;"决策记录"从给人看的文档,变成人与智能体共用的机构记忆,复盘方式也从人工例会扩展到"智能体持续对照 ADR 审计代码"。
1.6 纵轴收束:取舍、约束、证据、复盘四要素的演变
- 取舍:ATAM 式的专家重分析 → ADR 内置 "considered options / pros & cons"(MADR)→ 一句话 Y-Statement → 2026 年实证研究显示简洁与完备之间确有权衡(Nygard 与 MADR 各擅胜场)。
- 约束:Tyree/Akerman 模板单列"假设与约束"字段 → Nygard 把约束收进 Context → AI 时代约束重新显形为智能体必须遵守的"硬规则"(ADR 即守门器)。
- 证据:从评审会上的口头论证,到 ADR 中强制写 alternatives 与 rationale,再到开源 MSR 研究、ECSA 行动研究与受控实验等"用证据研究证据实践"的元层积累。
- 复盘:Status 字段与 supersede 链(0001 → superseded by 0007)在 adr-tools/log4brains 中被工具化,决策图谱可视化;2025 年后演化为智能体主动提议"先修订 ADR、再动架构"。
1.7 时间线速查表(2026-11-03 核实修订版)
| 时间 | 事件 | 来源 | 核实状态 |
|---|---|---|---|
| 1969-04-07 | 第一份 RFC(Steve Crocker,UCLA) | ACM DL | — |
| 2000-07 | PEP 1 确立 Python 提案流程 | peps.python.org | — |
| 2000 | SEI 发布 ATAM(CMU/SEI-2000-TR-004) | 论文 PDF | — |
| 2005-03/04 | Tyree & Akerman 企业级决策模板(IEEE Software) | — | |
| 2005 | Jansen & Bosch:"架构=一组设计决策"(WICSA) | Semantic Scholar | — |
| 2011-11-15 | Nygard《Documenting Architecture Decisions》,五节模板 | cognitect | ✅ 页面直读 |
| 2016-11 | ThoughtWorks 雷达首次收录,入 Trial 环 | 官方条目页 | ✅ 官方页 |
| 2017-11 | 雷达升 Adopt 环 | 同上 | ✅ 官方页 |
| 2016 前后 | Nat Pryce 发布 adr-tools | GOV.UK 样板佐证 | ✅ 5,756★、2024-04 停更(API) |
| 2017-05-04 | Keeling《ADR in Action》(SATURN 2017) | 日程 | — |
| 2017-07-12 | GitHub org "adr" 创建 | api.github.com/orgs/adr | ✅ API |
| 2018 | MADR 格式论文(ZEUS,CEUR Vol-2072) | — | |
| 2019 前后 | Y-Statement 定名传播 | ozimmer.ch | — |
| 2020-08-13 | GitHub 官方博客《Why Write ADRs》 | github.blog | — |
| 2020 前后 | log4brains 发布(静态站点化 ADR) | GitHub | ✅ 1,606★(API) |
| 2022-05-17 | MADR 改名 "Any Decision Records"(3.0.0-beta) | Releases | ✅ Releases API |
| 2022-10-09 | MADR 3.0.0 正式发布 | 同上 | ✅ Releases API |
| 2022-12 | ISO/IEC/IEEE 42010:2022 出版,纳入决策/rationale | 概述 | — |
| 2023 | GitHub 开源项目 ADR 使用的 MSR 研究 | IEEE Access | — |
| 2023-10 | InfoQ《Has Your ADR Lost Its Purpose?》 | infoq | — |
| 2024 | ECSA 2024 ADR 行动研究;MADR 4.0.0(09-17) | ✅ Releases API(4.0.0) | |
| 2025 | ADR 作为 AI 智能体长期记忆/守门规则兴起 | actual.ai | — |
| 2026-04-30 | 五模板研究(DESMET 特征分析专家初筛五选二):受控实验仅对比 Nygard 与 MADR,33 人交叉实验中 Nygard 总分胜出 | arXiv:2604.27333 | ✅ 摘要页 + HTML 全文 |
二、横轴:横向对比(时间截面:2026-11-03)
2.1 对比框架:四个圈层 × 五个维度
ADR 的"竞品"不是一个单一对手,而是四个圈层的替代与互补方案:
| 圈层 | 含义 | 代表 |
|---|---|---|
| A. 模板/格式流派 | ADR 内部的格式竞争("同类") | Nygard 原始模板、MADR、Y-Statements、EC-ADR |
| B. 工具链 | 围绕 ADR 的创作、索引、发布、门户工具("互补+竞品") | adr-tools、Log4brains、adr-log、ADR-Manager、Backstage ADR 插件、AI 生成 ADR |
| C. 替代记录形式 | 满足"记录决策"同一需求的其他文档实践("替代方案") | Google Design Doc、RFC 流程、PRD、Confluence 决策日志 |
| D. 重型方法学 | 传统重量级架构文档/评估方法("上一代方案") | arc42、ATAM、ISO/IEC/IEEE 42010/42020 |
贯穿对比的五个维度:能力(结构化程度、取舍/约束/证据覆盖度、生命周期与复盘支持)、成本(学习/流程/维护)、生态(模板、工具、社区、AI 支持)、成熟度(社区规模、维护活跃度、学术与工业证据)、适用场景。
2.2 总对比表
GitHub star 数与最近推送时间均为 2026-11-03 经 curl https://api.github.com/repos/<repo> 实测复核(详见文末核实说明)。
| 方案 | 圈层 | 定位/形态 | 能力(结构化/生命周期) | 成本 | 成熟度证据(2026-11-03 实测/来源) | 最适用场景 |
|---|---|---|---|---|---|---|
| Nygard 原始 ADR | A | 五节 Markdown 短文(社区工具常见四节变体) | 取舍/后果覆盖好;约束靠 Context 字段;状态字段支持 supersede | 极低 | ThoughtWorks 2017-11 起 Adopt;几乎所有 ADR 工具的默认兼容格式;2026 实验中总分最高 | 起步团队、第一个 ADR |
| MADR | A | Markdown 模板 + 决策选项表 + 链接 | ★结构化最强:强制列"考虑过的选项+优缺点",约束有单独小节;支持链接成决策图 | 低(会 Markdown 即可) | GitHub 2,612 stars,2026-08 仍在更新;被 Simpler Grants.gov 等组织采用 | 需要显式写取舍与备选项的团队 |
| Y-Statements | A | 一句话模板(九要素) | 极简但完整覆盖"背景-关注点-选项-目标-代价-理由";天然适合做对比与复用 | 极低 | 学界推广(Zimmermann);有在线生成器 | 快速记录、跨项目决策复用 |
| EC-ADR 检查单 | A | 证据(E)-准则(C)-一致(A)-文档(D)-复盘(R) 五步流程 | 唯一把"证据"和"复盘"显式流程化的流派 | 低 | Zimmermann 提出(2021;转引自 Adil 2023 应用研究与 ResearchGate 图页;其本人原始博文未定位,见第四节核实说明) | 决策质量要求高、需要群体决策的场景 |
| adr-tools | B | Bash CLI,adr new 生成编号文件 | 生成+编号+链接;无检索/无发布/无时间线 | 低 | 5,756 stars,2024-04 后停止维护(实测 last push);社区出现若干用其他语言重写/替代它的尝试(本稿未逐一核实,无公认继任者) | 极简主义、纯本地 Markdown 工作流 |
| Log4brains | B | Node CLI + 静态站点生成器 | 生成、时间线、全局搜索、发布 docs-as-code 站点 | 中 | 1,606 stars,2024-12 后更新放缓 | 需要"可浏览的决策知识库"的中小团队 |
| adr-log | B | 生成 ADR 目录索引文件 | 只做索引一件事 | 极低 | 109 stars,2023-01 后无推送(实测) | 配合任何模板做目录 |
| ADR-Manager | B | Web 端编辑器,支持 Y-Statements/MADR | 结构化编辑、跨项目决策复用 | 中 | 166 stars,2026-05 仍有活动;源于学术项目 | 研究导向、想统一管理多仓库决策 |
| Backstage ADR 插件 | B | 企业内部开发者门户组件 | 在服务目录页聚合展示各仓库 MADR;不含创作流程 | 高(需先建 Backstage 平台) | @backstage/plugin-adr 已进入官方 community-plugins 仓库(2024-04 迁入) | 已有 Backstage 的大中型平台工程团队 |
| AI 生成/辅助 ADR | B | LLM 扫描代码库/对话自动起草 ADR | 大幅降低写作成本;证据可自动引用代码;但正确性需人工审校 | 低-中 | HN 讨论、mdedit.ai(2025-2026 新趋势,无公认标准工具) | 决策积压严重、想补录历史决策的团队 |
| Google Design Doc | C | 实现前的设计文档(可几十页) | 覆盖背景/目标/方案/里程碑;讨论型而非记录型;无标准状态机 | 高(写作+评审周期) | Pragmatic Engineer 专题;Google 等大厂内部惯例 | 跨团队大功能的事前设计评审 |
| RFC 流程 | C | 编号提案 + 公开评论期 + 接受/拒绝裁决 | 事前征求反馈最强;裁决结果天然成为记录 | 高(流程周期以周计) | rust-lang/rfcs 6,628 stars(实测,2026-11 仍活跃);IETF 同源 | 社区驱动/开源治理、影响面大的变更 |
| PRD / 决策日志 | C | 产品文档或 Wiki 表格 | PRD 回答"做什么为什么",不回答架构取舍;Wiki 日志检索好但易腐化 | 中 | PRD vs ADR vs RFC 对比文 | 产品侧需求决策;ADR 只做轻量日志 |
| arc42 | D | 12 章节架构文档模板(第 9 章即架构决策) | 全景文档强;决策部分官方建议直接内嵌 ADR | 中-高 | arc42 官方文档第 9 节明确推荐"配合轻量 ADR 工具" | 需要完整架构文档的乙方交付/受规管系统 |
| ATAM | D | SEI 权衡分析法,多日评估会议 | 对质量属性取舍的事前评估最深,产出非决策记录 | 极高(专家+数天-数周) | 2025 年与 ISO 42020 的流程对比研究 | 高风险关键系统的正式评估 |
| ISO/IEC/IEEE 42010/42020 | D | 架构描述/架构过程国际标准 | 概念模型完备、合规性强;几乎无轻量工具支持 | 极高 | 与 ATAM 对比研究(同上);adr.zone 的对照说明 | 政府、军工、强合规行业 |
2.3 能力维度:谁把"取舍、约束、证据、复盘"记录得最完整
课题标题里的四个关键词恰好构成一张能力检查表:
- 取舍(trade-offs):MADR 是唯一强制写"考虑过的选项及其优缺点(Pros/Cons 表)"的主流模板,这是它对 Nygard 原始模板最大的增强;Y-Statements 用"neglected
<alternatives>"一句话锁定被否选项;Design Doc/RFC 也写备选方案,但篇幅不可控。有第三方模板对比文专门比较了 Nygard、MADR、Y-Statements 三者的取舍覆盖(hidekazu-konishi 的模板与实操指南)。而 2026 年的受控实验给这一维度的争论提供了数据:Nygard 模板在总评上显著优于 MADR(arXiv:2604.27333),说明"强制完备"对理解者也可能构成负担。 - 约束(constraints):Nygard 模板只把它们埋在 Context 段落里;MADR 提供独立的"约束"小节;ATAM 则把约束升级为显式的质量属性场景(utility tree),这是重型方法在"约束"维度上仍然不可替代的地方。
- 证据(evidence):这是各流派差距最大、也最容易被忽视的维度。大多数 ADR 模板只有"理由(Rationale/Because)"一个字段;EC-ADR 检查单是唯一把"证据(Evidence)"作为流程第一步显式提出的流派(Zimmermann);AI 辅助生成是 2025-2026 年的新变量——LLM 可以直接引用代码位置、基准测试和 issue 链接作为证据(HN:AI Generated ADRs),但也引入了"模型编造证据"的新风险,目前没有工具内置校验。
- 后续复盘(retrospective):ADR 的状态字段(Proposed/Accepted/Deprecated/Superseded by ADR-nnnn)提供了最原始的复盘机制;Log4brains 把它可视化为时间线;ADR-Manager/adr-log 提供跨文档索引。相比之下 RFC 的 Accept/Reject 是一次性裁决、Design Doc 通常写完即死(事后修订少),而研究证据显示真实世界中 ADR 的状态演化实践并不理想——ECSA 2024 行动研究发现团队引入 ADR 后主要价值是"回答为什么"而非驱动复盘;ICSA 2026 论文进一步指出 ADR 对仓库和开发者的实际影响仍缺乏量化理解。
小结:能力维度上 MADR + EC-ADR 检查单的组合覆盖最全;单一方案中 MADR 是全能王,Y-Statements 是性价比之王,而 2026 年的实验提醒我们:总分最高的记录格式其实是 Nygard 的极简五节。
2.4 成本维度:轻量的边界在哪里
ADR 流派的核心竞争力是单位决策的记录成本。下列三条量级判断为本稿作者的经验估计(非文献实测数据,仅供参考量级):一条 Nygard 式 ADR 半小时可完成,MADR 完整版约 1-2 小时,Y-Statements 只要几分钟。替代方案的成本高一个量级——Pragmatic Engineer 的专题文章显示 Design Doc/RFC 在大厂通常伴随正式评审会议与数天评论期(Engineering Planning with RFCs, Design Documents and ADRs);ATAM 则需要外部评估团队和数天到数周的投入,因此 2022 年发表的行业研究明确指出重型评估在工业界不现实、轻量化是趋势(Lightweight Software Architecture Evaluation for Industry)。
但 ADR 的隐性成本常被低估:维护成本(决策变了要不要改旧 ADR?实践答案是用新 ADR 取代并链接,而不是改旧的)和流程成本(没有触发规则的 ADR 会退化为"只记大事",或者相反地泛滥到每个 PR 一篇)。工具在此处的价值不同:adr-tools 几乎零成本但零赋能;Log4brains 要装 Node 依赖、维护静态站点;Backstage 插件的前提是整个平台工程投入。选型时真正的变量不是模板,而是团队愿意为"决策可检索"支付多少基础设施成本。
2.5 生态维度:谁在为 ADR 供血
- 模板生态:architecture-decision-record 示例仓库收集了各流派示例,Nygard/MADR/Tyree-Akerman/Y-Statements 均可直接取用;MADR 官方站点(adr.github.io/madr)提供最小版与完整版两档模板,甚至有"用 ADR 决定采用 MADR"的自举案例(Simpler Grants.gov)。
- 工具生态(2026-11-03 实测金字塔):adr-tools(5.8k stars,已停更)> MADR(2.6k,活跃)> Log4brains(1.6k,放缓)> ADR-Manager(166)> adr-log(109)> e-ADR(50)。概念澄清:此 e-ADR 不是 2.2 中 A 圈层的 EC-ADR 检查单——e-ADR 是 adr 组织下的 "Embedded Architectural Decision Records",一套让开发者在 Java 源码里以注解直接嵌入/引用 ADR 决策知识的库,支持 MADR 与 Y-Statements 两种格式(仓库 README,本稿 2026-11-03 抓取核实);它与 EC-ADR 检查单名字相近但分属 B 圈层工具与 A 圈层模板/流程,并非同一物。头部工具停更而模板仓库仍活跃,说明 ADR 生态的重心已经从"工具"退回"模板+纯 Markdown",这与 Reddit 社区讨论的观察一致:多数团队最终用编辑器+Git 约定而非专用工具(Reddit 讨论)。
- 平台生态:Backstage 的 ADR 插件在 2024 年 4 月迁入官方 community-plugins 仓库,意味着企业门户这一层已经把 ADR 当作标准目录资产(Backstage 官方博客);Backstage 项目自身也用 ADR 管理架构(ADR001)——"吃自己的狗粮"是成熟度的有力旁证。
- AI 生态:2025-2026 年的新增供血方向。AI 辅助写作(mdedit.ai)、代码库扫描自动补录 ADR(HN 讨论)、面向 LLM 的 ADR 捕获技能包(MCP Market)与决策感知 CLI(Archgate)——这是 ADR 相对于 Design Doc/RFC 的独特机会:Markdown + 编号文件 + Git 的形态对 LLM 最友好,arc42 的 2026 年反思文章同样把 AI 增强开发列为文档方法演进的主要驱动力(arXiv 2026)。
2.6 成熟度维度:证据与反证并存
支持面:ThoughtWorks 雷达 Adopt 级(2017-11 起)并衍生出"设计系统决策记录"(2023)、"架构建议流程"(2025-04)等变体(Architecture Advice Process),说明格式已外溢到相邻领域。
反证面:学术研究给出了冷静的数字——JKU Linz 对 GitHub 开源项目的 MSR 研究发现 ADR 采用率仍低但逐年增长(MSR 2023);社区讨论中常被提及的失败模式是"团队热情启动、数月后停更"(本稿未能定位可附链接的原始出处,按传闻处理,仅作方向性观察);有据可查的是 Zimmermann 提出的 ADR 采用成熟度五级模型(AD Adoption Model,本稿已抓取该文核实其五级划分),把"写了模板"和"决策流程真正运转"区分开。横向看,RFC(以 Rust 为代表)的社区规模大于最大的 ADR 工具仓库——rust-lang/rfcs 6,628★ 对 adr-tools 5,756★,约为 MADR(2,612★)的 2.5 倍、adr-log(109★)的 60 倍——加上十年稳定的流程运转,其成熟度证据强于 ADR;ATAM/ISO 标准则在合规市场有不可撼动的地位。ADR 的成熟度属于"格式已成熟、工具未收敛、实践易衰减"的中间态。
2.7 适用场景:组合而非二选一
各来源的结论高度收敛于"分层组合"(Calcipy 的 ADR 方案对比与推荐、candost.blog 的 ADR/RFC 之辨):
- 小型团队/初创:Nygard 格式或 MADR 最小版 +
docs/adr/编号文件 + Git,不装任何工具,零工具成本起步;ADR-0001 就写"我们为什么用 ADR"; - 中型产品团队:在上一档基础上加 Log4brains 发布站点(要可浏览的决策站),或 Backstage 插件(若已有门户);重大变更先走轻量 RFC 征集意见,裁决结果沉淀为 ADR;
- 开源/社区项目:RFC 流程为主(事前协商),ADR 作裁决存档——Rust 模型(rust-lang/rfcs);
- 大型企业/强合规:arc42 做全景文档、第 9 章内嵌 ADR;关键系统立项/验收阶段用 ATAM 或 ISO 42020 做正式评估;
- 决策积压/历史欠账(存量项目):AI 扫描代码库生成候选 ADR + 人工评审归档,先还历史债、再谈增量流程——2026 年新出现的低成本路径。
三、交叉洞察:两轴合读说明了什么
洞察一:十五年走成一个"钟摆",落点是"轻格式 + 重流程"
纵轴显示 ADR 的每一步演进都是对上一代形态的减负:ATAM 数周的专家评估(1969–2010 的遗产)减成 Nygard 半小时的五节短文(2011),再压成 Y-Statement 的一句话(2019);而当轻量格式被大规模采用后,第一轮反思(2020–2022)又把丢失的东西补回来——状态机、supersede 链、决策图、EC-ADR 的五步检查单。横轴的生态实测给这个钟摆一个量化注脚:工具层从"万物生长"(2016–2020)退回到"头部停更、模板常青"(adr-tools 5,756★ 停更于 2024-04,MADR 2,612★ 活跃至今)。两轴合读的结论是:这个行业最终选择把复杂度放在流程(何时写、何时复审、如何链接)而不是格式或软件里——格式已经收敛到"Markdown + 编号 + Git"这个最大公约数,专用工具没有成为必需品。
洞察二:生态赢家 ≠ 认知赢家——"MADR 胜出"与"Nygard 胜出"如何同时成立
两章节稿在此处表面冲突:横轴章节稿(parts/2026-11-03-ADR架构决策记录实践-horizontal.md 第四节洞察 1)的判断是"模板之争已基本结束(MADR 事实上胜出,Nygard 模板作为兼容底线共存)"——本稿第二节的相应表述是 TL;DR 的"格式之争已收敛"与 2.3 小结的"MADR 是全能王";纵轴章节稿(parts/2026-11-03-adr-vertical.md 第 5 节)的转述是"Nygard 模板以约 81% 的概率在简洁性与清晰度上优于 MADR"(本稿 1.5 节按论文原文核实:Wilcoxon 检验针对的是总评分数,P̂=0.8182)。核实后的消解是:两句话说的不是同一场比赛。生态位上,MADR 确实胜出——它是工具链的默认输入(log4brains 默认随附 MADR 模板、可自定义,ADR-Manager 与 Backstage 插件均以 MADR 为格式),是唯一强制 Pros/Cons 选项表的主流模板,2026-08 仍在活跃维护;但认知负担上,33 人交叉实验(W=84.0,p=0.002,Cliff's Δ=0.6364)显示阅读者对简洁的 Nygard 五节体理解更好,论文原话是"Nygard supports concise and objective documentation, while MADR facilitates structural details and specific architectural requirements"(arXiv:2604.27333)。换句话说:MADR 赢在"写与管"的基础设施,Nygard 赢在"读与懂"的认知成本。这对选型的直接含义是:面向新人的启蒙期用 Nygard/最小版 MADR 降低动笔门槛,涉及重大取舍、多方评审的决策用完整 MADR 保住结构,两者可以共存于同一个 docs/adr/ 目录——实验结论本身也反对"一刀切"。两点限定:其一,该实验是单一研究、样本为 33 名软件工程本科生,结论有待独立复制;其二,"共存于同一目录"的混用建议适用于纯 Markdown + Git 工作流——一旦引入以 MADR 结构为输入假定的工具(ADR-Manager 即 MADR 编辑器,log4brains 默认模板为 MADR 但可自定义),Nygard 格式文件的解析与跨格式的 supersede 链维护缺乏现成支持(本稿未逐一实测各工具对非 MADR 文件的容错),重视工具链一致性的团队应统一为单一格式。
洞察三:"证据"是两轴共同指向的全行业短板,也是下一个增量所在
把两轴叠在"证据"这一维度上看,图景高度一致且令人意外:纵轴上,从 Tyree/Akerman 的"论证(Argument)"字段(2005)到今天的 MADR,二十一年间没有任何一个主流模板为证据(benchmark、PoC、代码引用、压测数据)设计过结构化字段——证据始终寄生在 Context 或 Rationale 的自由文本里;横轴上,EC-ADR 检查单(把 Evidence 列为流程第一步)和 AI 辅助生成(自动引用代码位置与基准数据)是仅有的两个解法,且均未普及、均无工具内置校验。两轴交叉指出的方向很清晰:谁先在模板与流程里补上"证据"这一块(哪怕只是一行强制的 Evidence: 链接 + AI 自动引用 + 人工抽查),谁就拿到 ADR 实践的下一个增量。这对个人团队是低成本可执行的改进:不需要新工具,只需要在 Definition of Done 里加一条"决策依据必须带可点开的链接"。
洞察四:复盘是 ADR 的结构性优势、兑现率是现实鸿沟——AI 正在把这个鸿沟变成机会
纵向看,ADR 的复盘机制被工具化了十五年:Status 字段 → supersede 链 → adr link 决策图 → Log4brains 时间线;横向看,这套机制恰恰是 ADR 对 RFC(一次性裁决)和 Design Doc(写完即死)的结构性优势。但两项实证研究戳破了气泡:ECSA 2024 的行动研究发现企业里 ADR 的主要价值停留在"回答为什么",很少驱动真正的复盘;ICSA 2026 的论文指出 ADR 的实际影响还缺乏量化证据(PDF、论文页)。两轴合读的判断是:复盘失败不是格式问题,而是触发问题——人不记得回头读旧决策,但 AI 可以。2025 年后出现的三类实践(智能体改动前读 ADR、持续审计代码与 ADR 的一致性、改架构前必须先提议 supersede)正是把"复盘"从人工例会变成持续运行的守门进程。这可能是 ADR 历史上第一次,其"复盘"设计被完整兑现。
洞察五:重型方法没有死,只是退到高价值区间;轻与重在内嵌点上合流
纵向的时间线容易让人读出"轻量派消灭重型派"的爽文叙事,横向的圈层对比给出更准确的图景:ATAM/ISO 42020 在强合规与关键系统场景仍是刚需,2025 年仍有新的对比研究发表(scitepress);arc42 通过"第 9 章官方建议内嵌轻量 ADR"(docs.arc42.org/section-9)完成了与轻量派的合流而非对抗;ISO/IEC/IEEE 42010:2022 则在概念层给 ADR 发了国际标准的身份证。轻重之间不是替代关系,而是按决策风险分层的互补关系:日常决策走 ADR,跨团队大功能走 Design Doc/RFC,关键系统评估走 ATAM——2026 年的全部主流来源都收敛于这个分层组合。
对使用者的判断与建议
选型分层清单:按团队形态对号入座的五档组合(个人/小团队、中型产品团队、开源/社区、大型企业/强合规、决策积压存量项目)已在 2.7 节"适用场景"完整给出,此处不再重复罗列。从两轴暴露的失败模式反推,以下四条制度化规则是无论落在哪一档都应遵守的底线:
- 触发规则写进完成定义:改变公共接口、数据模型、外部依赖、性能/安全预算的 PR 必须挂 ADR 编号——否则 ADR 会在数月内衰减为"只记大事的日志"("数月"为作者经验估计;衰减风险的方向与 ECSA 2024 行动研究对 ADR 维护与衰败的考察、Zimmermann 成熟度模型"写了模板≠流程运转"的区分相一致,两文献均未给出具体时限)。
- 永不修改已接受的 ADR:决策变化就写新 ADR 并标记 "Superseded by ADR-nnnn",保持决策史可回放(GitHub 工程博客把"被取代"定义为正常生命周期,github.blog)。
- 标题与范围声明保证可发现性:actual.ai 的智能体实测发现编码 agent 经常"读不到"覆盖被改代码的 ADR——清晰的命名与范围声明对人类同事同样有效(actual.ai)。
- 强制一行证据 + AI 分工:即便模板没有证据字段,也约定每条 ADR 带一行可点开的
Evidence:(benchmark/issue/代码引用);AI 负责起草初稿、对照 ADR 审计代码合规、提议 supersede,人负责取舍与裁决——"模型编造证据"的风险靠人工抽查与链接可验证性兜底。
什么情况下不要用 ADR:一次性探索性原型(结论不进入主干)、纯产品需求决策(PRD 的领域)、需要广泛协商的社区级变更(直接用 RFC)。把 ADR 用在这些地方,只会加速它退化成没人读的仪式文档。
四、核实与修正说明(2026-11-03,综合者实测)
两章节稿之间存在两处事实分歧(下列第 1、2 条),本稿按一手来源做了修正;另有三项关键数据(第 3–5 条)做了复核补充:
- Nygard 模板节数(纵轴稿称"四节",横轴稿称"4~6 字段")。本稿直接抓取 cognitect.com 存档页核实:原文为五节 Title、Context、Decision、Status、Consequences。纵轴稿"四节"漏掉了 Decision。社区工具(如 adr-tools 生成的 Status/Context/Decision/Consequences 四节加编号标题)存在瘦身变体,横轴"4~6 字段"的模糊表述由此而来;本稿统一为"原文五节、社区变体四至六节"。
- ThoughtWorks 雷达轨迹(纵轴稿称 2016-11 入 Assess、2017-11 Vol 18 升 Adopt;横轴稿称 2016-11 起即 Adopt)。本稿抓取官方雷达条目页核实:2016-11-07 首次进入 Trial,2017-03 维持 Trial,2017-11 升 Adopt,2018-05 维持 Adopt,该条目已不在最新版雷达上。两稿均不准确。纵轴稿引用的 Vol 15 中文版 PDF 在本次综合时抓取超时、无法复核其"Assess"之说,本稿以官方条目页为准,并弃用"Vol 15/Vol 18"的卷号表述。
- GitHub star 数与维护状态(横轴稿数据)。本稿以
curl https://api.github.com/repos/<repo>逐项复测(2026-11-03),全部吻合:adr/madr2,612★、pushed 2026-08-28;npryce/adr-tools5,756★、pushed 2024-04-25(此后停更);thomvaill/log4brains1,606★、pushed 2024-12-17;adr/adr-manager166★、pushed 2026-05-18;adr/adr-log109★、pushed 2023-01-05;adr/e-adr50★、pushed 2026-08-31;rust-lang/rfcs6,628★、pushed 2026-11-01(活跃)。组织adr创建时间 2017-07-12 经curl https://api.github.com/orgs/adr复测吻合(纵轴稿同)。 - 2026 年五模板研究细节(纵轴稿称"33 人交叉实验、约 81% 概率优于 MADR")。本稿抓取 arXiv 摘要页与 HTML 全文核实:33 名软件工程本科生(A 组 17 人、B 组 16 人)、交叉(组内)设计、两阶段间隔一周;五种模板(Tyree/Akerman、Nygard、arc42、Y-Statement、MADR)仅出现在 DESMET 特征分析的专家初筛环节(专家即论文前两位作者、均有四年以上工业界经验,MADR 0.900、Nygard 0.868 入围),受控实验仅对 Nygard 与 MADR 做成对比较:Wilcoxon W=84.0、p=0.002,Cliff's Δ=0.6364,优势概率 P̂=0.8182(≈81%;论文原义为"随机配对观测中 Nygard 优于 MADR 的概率");论文未报告贝叶斯因子。纵轴稿数字成立,本稿补齐统计细节并澄清实验范围。
- MADR 版本日期。经 GitHub Releases API 复测:3.0.0-beta 2022-05-17、3.0.0 2022-10-09、4.0.0 2024-09-17,与纵轴稿一致。
- 本轮修订新增核实(2026-11-03,针对独立审读意见逐条处理):
- e-ADR 与 EC-ADR 的关系:抓取 github.com/adr/e-adr 的 README 确认,e-ADR 为 "Embedded Architectural Decision Records"——以 Java 注解在源码中嵌入/引用 ADR 决策知识的库,支持 MADR 与 Y-Statements 两种格式,与 A 圈层的 EC-ADR 检查单并非同一物;已在 2.5 补关系澄清,2.2 的 e-ADR 行不动。
- EC-ADR 来源:其"Zimmermann 2021 提出"之说已通过二手文献核实(Adil 2023,SciTePress 与 ResearchGate 图页均转引该归属,五要素为 Evidence/Criteria/Agreement/Documentation/Review),但 Zimmermann 本人提出该检查单的原始博文仍未定位——其 2021-04-23《Any Decision Records》一文经抓取不含 "EC-ADR" 字样;2.2 的 EC-ADR 行已补转引链接并如实标注"原始博文未定位"。相关谱系另见 Zimmermann 更早的 ecADR "Definition of Done" 工作(LinkedIn 帖)。
- "热情启动、数月后停更"失败模式:抓取 Zimmermann AD Adoption Model 核实,该文确有五级采用成熟度模型,但不含该失败模式描述;2.6 原先归给"LinkedIn 上的实践者文章"的表述因无链接、参考来源中亦无此文,已降级为传闻性表述并如实标注。
- adr-tools"社区转向 Go/Node 重写分支":检索未能定位到具体分支名与链接,2.2 已降级为"社区出现若干用其他语言重写/替代它的尝试(未逐一核实,无公认继任者)"。
- log4brains 模板兼容性:抓取其 README 确认"模板可自定义(默认:MADR)";洞察二关于 Nygard/MADR 混用建议的兼容性限定据此改写。
- 2026 实验的 DESMET 初筛细节与 P̂ 释义:按 arXiv HTML 全文核实后补入 1.5 节与本节第 4 条;"五模板受控实验"的不准确简称在 TL;DR、时间线与参考来源中统一改为"五模板研究(专家初筛五选二,受控实验仅对比 Nygard 与 MADR)"。
仍然未直接核实、沿用章节稿转述的内容(章节稿自身已声明):ATAM 报告编号 CMU/SEI-2000-TR-004(二手来源确认);Vol 15 PDF 原文(抓取超时);各 AI 实践案例的原始页面未逐一点开复核。本轮修订中因无法核实而做了降级/传闻化处理的三处(EC-ADR 原始博文、adr-tools 重写分支、"热情启动数月后停更"的原始出处),处置明细见上文第 6 条。
五、参考来源
奠基与原典
- Nygard《Documenting Architecture Decisions》(2011-11-15): https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions
- Tyree & Akerman《Architecture Decisions: Demystifying Architecture》(IEEE Software 2005): https://www.utdallas.edu/~chung/SA/zz-Impreso-architecture_decisions-tyree-05.pdf | https://ieeexplore.ieee.org/document/1407822
- Jansen & Bosch(WICSA 2005): https://www.semanticscholar.org/paper/Software-Architecture-as-a-Set-of-Architectural-Jansen-Bosch/4cd105262aa01f62b88baeda78570325661f67d3
- ATAM(CMU/SEI-2000-TR-004): https://scispace.com/pdf/the-architecture-tradeoff-analysis-method-29qfwacjhz.pdf
- RFC 1: https://dl.acm.org/doi/pdf/10.17487/RFC0001 | PEP 1: https://peps.python.org
- Martin Fowler — ArchitectureDecisionRecord: https://martinfowler.com/bliki/ArchitectureDecisionRecord.html
社区、模板与工具
- ADR 社区门户: https://adr.github.io | 工具登记册: https://adr.github.io/adr-tooling | GADR: https://adr.github.io/gadr
- MADR: https://github.com/adr/madr | https://adr.github.io/madr | MADR 论文(ZEUS 2018): https://ceur-ws.org/Vol-2072/paper9.pdf
- adr-tools: https://github.com/npryce/adr-tools | adr-log: https://github.com/adr/adr-log | ADR-Manager: https://github.com/adr/adr-manager | e-ADR(Embedded ADR,Java 注解库): https://github.com/adr/e-adr
- Log4brains: https://github.com/thomvaill/log4brains | Lullabot 实例: https://architecture.lullabot.com/adr/20210705-use-log4brains-to-manage-the-adrs
- 模板与示例合集: https://github.com/architecture-decision-record/architecture-decision-record | https://github.com/MozaicWorks/ADR-Examples
- GOV.UK ADR-0001 样板: https://docs.publishing.service.gov.uk/repos/govuk_publishing_components/adr/0001-record-architecture-decisions.html
- Y-Statements: https://ozimmer.ch/practices/2020/04/27/ArchitectureDecisionMaking.html | 生成器: https://adrkit.app/y-statement-adr | Zimmermann MADR 解读: https://www.linkedin.com/pulse/markdown-adr-madr-template-explained-distilled-olaf-zimmermann
- EC-ADR 检查单(Zimmermann 2021,转引): Adil 2023 应用研究 https://www.scitepress.org/Papers/2023/118205/118205.pdf | ResearchGate 图页 https://www.researchgate.net/figure/EC-ADR-checklist-to-evaluate-architecture-decision-Zimmermann-2021_fig1_370214506 | Zimmermann ecADR "Definition of Done"(LinkedIn): https://www.linkedin.com/posts/ozimmer_a-definition-of-done-for-architectural-decision-activity-6714590404106326016-onWb
- Zimmermann ADR 采用成熟度模型: https://ozimmer.ch/practices/2023/04/21/ADAdoptionModel.html
- Design Practice Repository: https://socadk.github.io/design-practice-repository/activities/DPR-ArchitecturalDecisionCapturing.html
背书、布道与流程参照
- ThoughtWorks 雷达 — Lightweight ADR 条目(Trial 2016-11 → Adopt 2017-11): https://www.thoughtworks.com/en-us/radar/techniques/lightweight-architecture-decision-records
- Kevin Jalbert(2018): https://kevinjalbert.com/start-now-architecture-decision-records
- Keeling SATURN 2017: https://saturn2017.sched.com/event/9k2y/architecture-decision-records-in-action | 笔记存档: https://github.com/ikysil/learn-conferences/blob/master/Architecture-Decision-Records.md
- GitHub 博客《Why Write ADRs》(2020-08-13): https://github.blog/engineering/architecture-optimization/why-write-adrs/
- AOE Tech Radar: https://techradar.aoe.com/methods-and-patterns/adr
- Architecture Advice Process(ThoughtWorks 2025-04): https://www.thoughtworks.com/en-us/radar/techniques/architecture-advice-process
- Backstage community-plugins 迁移公告: https://backstage.io/blog/2024/04/19/community-plugins | Backstage 自身 ADR001: https://backstage.io/docs/architecture-decisions/adrs-adr001
- Pragmatic Engineer — RFCs, Design Documents and ADRs: https://newsletter.pragmaticengineer.com/p/rfcs-and-design-docs
- candost.blog — ADRs and RFCs: https://candost.blog/adrs-rfcs-differences-when-which
- PRD vs ADR vs RFC: https://aridanemartin.dev/blog/prd-adr-rfc-decision-documents
- RFC → ADR 交接讨论: https://www.reddit.com/r/ExperiencedDevs/comments/1qfffh2/rfcdesign_doc_to_adr_what_does_your_process
- Reddit 工具讨论: https://www.reddit.com/r/softwarearchitecture/comments/1dfo8tz/documenting_architecture_decision_records
- hidekazu-konishi 模板对比与实操: https://hidekazu-konishi.com/entry/architecture_decision_records_templates_and_operations.html
- Calcipy — ADR 方案对比与推荐: https://calcipy.kyleking.me/docs/adr-research/comparison-and-recommendations
- Catio — ADR 2026 指南: https://www.catio.tech/blog/architecture-decision-record
标准与重型方法
- ISO/IEC/IEEE 42010:2022 概述: https://www.itlec.com/2024/12/ISO-IEC-IEEE-42010-Summary.html | 与 ADR 的对照: https://adr.zone/iso-42010
- arc42 第 9 章(架构决策): https://docs.arc42.org/section-9
- ATAM vs ISO/IEC/IEEE 42020(2025): https://www.scitepress.org/Papers/2025/133518/133518.pdf
- 轻量级架构评估行业研究(2022): https://pmc.ncbi.nlm.nih.gov/articles/PMC8838159
实证研究与反思
- ECSA 2024 行动研究: https://rebekkaa.github.io/files/2024_ECSA.pdf
- MSR 2023(开源项目 ADR 采用,JKU Linz / IEEE Access): https://ieeexplore.ieee.org/iel7/6287639/6514899/10155430.pdf | https://research.jku.at/en/publications/using-architecture-decision-records-in-open-source-projects-an-ms
- ICSA 2026 论文页: https://conf.researchr.org/details/icsa-2026/icsa-2026-papers/34/
- 五模板研究——DESMET 专家初筛五选二 + Nygard/MADR 受控实验(2026-04-30): https://arxiv.org/abs/2604.27333 | https://arxiv.org/html/2604.27333v1
- 赫尔辛基大学灰色文献综述(2022): https://helda.helsinki.fi/bitstreams/dd61862b-aa0d-4b8b-92ea-04f2d480a6fe/download
- InfoQ《Has Your ADR Lost Its Purpose?》(2023-10): https://www.infoq.com/articles/architectural-decision-record-purpose
- arc42 与 AI 增强开发(arXiv 2026): https://arxiv.org/html/2603.28735v1
AI 时代实践
- actual.ai — What Happens When Coding Agents Read Your ADRs: https://actual.ai/blog/coding-agents-with-adrs
- Andrew Connell(ADR as long-term memory): https://www.linkedin.com/posts/andrewconnell_claudecode-agenticengineering-ai-activity-7521212986691178496-pgHL
- Reddit r/ClaudeAI 实践讨论: https://www.reddit.com/r/ClaudeAI/comments/1q4zb0x/how_i_use_architecture_decision_records_with
- ADR Skill(MCP Market): https://mcpmarket.com/tools/skills/adr-architecture-decision-records
- Archgate CLI: https://cli.archgate.dev/concepts/adrs
- Richard Ewing — AI-Generated ADRs: https://www.richardewing.io/concepts/ai-architecture-decision-records
- AI-Driven Development 守门规则笔记: https://akshaykokane.com/notes/blog2
- Hacker News — AI Generated ADRs: https://news.ycombinator.com/item?id=46031960
- mdedit.ai — AI-assisted ADRs: https://mdedit.ai/blog/ai-assisted-adrs-in-markdown
实测数据接口(2026-11-03 调用)
- GitHub REST API:
curl https://api.github.com/repos/{adr/madr, npryce/adr-tools, thomvaill/log4brains, adr/adr-manager, adr/adr-log, adr/e-adr, rust-lang/rfcs}与curl https://api.github.com/orgs/adr;MADR 版本:curl https://api.github.com/repos/adr/madr/releases