本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
常見問答集
建立 ADR 程序有哪些好處?
專案團隊應建立 ADR 程序來簡化架構決策,防止重複討論相同的架構主題,並有效傳達架構決策。
專案團隊應何時建立 ADR?
專案團隊應為影響結構 (微服務等模式)、非功能需求 (安全性、高可用性和容錯能力)、相依性 (元件耦合)、介面 (API 和已發佈合約) 和建構技術 (程式庫、架構、工具和流程) 的軟體各個方面建立 ADR。
專案團隊應多久審核一次 ADR?
專案團隊在接受 ADR 之前應至少審核一次。
誰應建立 ADR?
每個團隊成員都可以建立 ADR。我們建議您宣傳 ADR 的擁有權概念。擁有 ADR 的作者應主動維護和傳達 ADR 內容。其他團隊成員永遠可以為 ADR 做出貢獻。ADR 擁有者應核准對 ADR 的變更。
ADR 應包含哪些資訊?
每個 ADR 至少必須定義決策的內容、決策本身以及決策對專案及其可交付項目的影響。內容應提及團隊考慮的可能解決方案。它還應包含與專案、客戶或技術堆疊相關的任何相關資訊。此決策必須以命令式語言清楚說明團隊決定採用的解決方案。避免使用「應該」之類的字詞,並將每個決策表述為「我們使用...」或「團隊必須使用...」。後果部分應提及做出決策的所有已知權衡。每個 ADR 必須具有一個狀態和一個變更日誌,其中包含變更日期和負責變更的人員。
在哪裡可以找到 ADR 範本?
ADR 範本有多種版本和變體可用。如需常用 ADR 範本的公開集合,請參閱 ADR GitHub 儲存庫