Architecture Decision Record

Active theme: Light

← 文档

如何开始使用 ADR

要开始使用 ADR,请与你的队友讨论以下几个方面。

决策识别:

  • 这项 AD 有多紧急、多重要?

  • 必须现在做出决定,还是可以等到了解更多信息之后?

  • 个人和集体的经验,以及公认的设计方法与实践,都有助于识别决策。

  • 理想情况下,维护一份与产品待办事项相互补充的决策待办清单。

决策制定:

  • 存在许多决策制定技术,既有通用的,也有专门针对软件架构的,例如对话映射(dialogue mapping)。

  • 群体决策是一个活跃的研究课题。

决策实施与执行:

  • AD 用于软件设计;因此必须将其传达给出资、开发和运营该系统的利益相关者,并获得他们的接受。

  • 架构上一目了然的编码风格,以及关注架构问题和决策的代码评审,是两项相关的实践。

  • 在软件演进过程中对软件系统进行现代化改造时,也必须(重新)考虑 AD。

决策共享(可选):

  • 许多 AD 会在不同项目中反复出现。

  • 因此,在采用明确的知识管理策略时,过往决策的经验(无论好坏)都可以成为宝贵的可复用资产。

决策文档化:

  • 存在许多用于记录决策的模板和工具。

  • 参见敏捷社区,例如 M. Nygard 的 ADR。

  • 参见传统的软件工程和架构设计流程,例如 IBM UMF 以及 CapitalOne 的 Tyree 和 Akerman 所建议的表格布局。

更多信息: