需求分析与建模61 条

arc42 架构文档模板

arc42 是开源的架构文档模板,按目标与约束、上下文、策略、构建块、运行时、部署、横切概念、决策、质量、风险、术语等章节组织,适合中小团队裁剪使用。

arc42 是什么

arc42 是一份开源的架构文档模板,把架构文档拆成十二个固定章节:目标与约束、上下文、策略、构建块、运行时、部署、横切概念、决策、质量需求、风险与技术债、术语表。它的价值在于给出“有话可写、无处可躲”的骨架——质量需求与风险两节强制留下可验证内容,避免文档写成组件清单加示意图。

基本信息

性质开源模板,可裁剪、可增补,不绑定方法学与工具
结构十二个章节,按“目标 → 方案 → 决策 → 质量与风险”组织
适配中小团队可按需裁剪章节;大型项目可配合独立文档补充
与其他实践关系决策章节与 ADR 对接,质量章节与 ATAM 场景对接

典型使用场景

  • 新项目启动:用模板形成基线文档,明确目标、约束与上下文边界
  • 架构交接:新人通过固定结构快速定位关心的部分
  • 评审准备:质量需求与风险章节直接作为评审输入材料
  • 合规与审计:目标、约束与决策记录可追溯到具体条文
  • 文档治理:统一模板后,跨项目文档可比、可复用

章节清单

  • 1 引言与目标
  • 2 约束
  • 3 上下文与范围
  • 4 解决方案策略
  • 5 构建块视图
  • 6 运行时视图
  • 7 部署视图
  • 8 横切概念
  • 9 架构决策
  • 10 质量需求
  • 11 风险与技术债
  • 12 术语表

易被敷衍的章节

章节容易写成什么合格标准
质量需求罗列“高性能”“高可用”等词可度量的场景:触发条件、制品、响应与度量
架构决策只写结论不写备选含备选方案、取舍依据与被否决原因
风险与技术债空白或一句话带过列明影响、概率与缓解措施,含责任人与跟踪状态
横切概念仅列名词说明该类问题在实际项目中的具体约定与落地位置

裁剪要点(小型项目)

裁剪要点(小型项目)
必留:3 上下文与范围 | 5 构建块 | 9 决策 | 10 质量需求
可合并:6 运行时与 7 部署合并为一节
可简化:4 解决方案策略用一段话说明总体思路
可后续补:11 风险与技术债在首次评审后补全
# 裁剪的是篇幅,不是内容类型:质量与决策两节不能省
模板价值在于“有话可写、无处可躲”:质量需求与风险两节强制留下可验证内容,这两节写得越具体,文档越难变成摆设。
把模板当交付清单逐节填满,会产出无人维护的文档:先确定读者是谁、要回答什么问题,再决定哪些章节需要详细展开。

易错点

  • 把模板当交付清单逐节填满,产出厚但无人维护的文档,三个月后与代码脱节
  • 文档与决策记录、代码仓库不联动,架构决策散落在会议纪要里无法追溯
  • 质量需求章节只写形容词,与测试用例、监控指标对不上,无法验证
  • 上下文与范围章节未明确系统边界,外部依赖与责任划分靠口头约定
  • 文档只在项目启动时编写,后续迭代不更新,读者逐渐不再信任文档

数据来源与参考

  • arc42 官方模板(arc42.org)
  • 《Software Architecture Documentation with arc42》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌