アーキテクチャデシジョンレコード
テキストの軽量なテンプレートで設計判断を記録するもの。
利点
設計判断をチームの責任で記録できる。
テキストなのでコードと一緒にリポジトリに保存できる。
他のドキュメントとリンクさせて、全体的な説明に使うことができる。
履歴・歴史を残していける。設計の進化過程を知り、これからの展望を得る。
テンプレート例
タイトル
一意な番号と説明的なタイトルを含める。
コンテキスト
判断がどんな状況で行われたかを、事実に基づき単純に説明する。
技術・スキル・過去の決定・ビジネス・政治情勢など、関係する影響要因を説明する。
内容
行った判断の内容を説明する。
ステータス
下書き、提案済み、承認済み、廃止、非推奨
進行に合わせて更新する。
影響
判断が与える影響を記述する。
システム、ステークホルダー、チームの状況など。それぞれにとっての影響がある。
プラス面とマイナス面の両方を記述する。
影響が顕在化したら更新する。
コツ
1ファイルにつき1つの判断だけを含める。
一意な番号を振り、過去の履歴を保存する。
判断が置き換えられたり変更された時には、古いレコードへのリンクを残す。
1〜2ページに収まるくらいに短く保つ。
平易な言葉を使う。
変更をバージョン管理する。
ADRだけでアーキテクチャを表現しようとしない。他のドキュメントと組み合わせる。