人類には早すぎたマネジメント手法、ADR

ソフトウェア開発の歴史には、「正しかったのに普及しなかった」手法がいくつかあります。ADR(Architecture Decision Record)もその一つかもしれません。

アジャイルとともに生まれた記録手法

ADRは、2011年にMichael Nygardが発表したブログ記事で広く知られるようになった手法です。高速にスプリントを繰り返すアジャイル開発において、設計判断の「理由」がチーム内で共有されず失われていく——その課題に対する解として提案されました。

記録の方法はシンプルです。プロジェクトのdocs/adrディレクトリに、ADR-001.mdのようにMarkdownファイルを通し番号で追加していく。各ファイルには「背景」「決定事項」「結果」の3要素を記述します。軽量で、バージョン管理にも乗る。Thoughtworksが2018年のTechnology Radarで「Adopt」に分類したことで注目度が上がりましたが、実際の現場で定着したかというと、そうはなりませんでした。

理由はシンプルで、人間がドキュメントを更新し続けるのが難しかったからです。スプリントのスピードに人手の記録作業が追いつかない。記述を忘れ、内容が陳腐化し、やがて誰も参照しなくなる。ADRは「理想的だが運用が重い」手法として、多くのプロジェクトで静かに棚上げされました。

AIコーディングの現状との類似

ところが、今のAIコーディングが直面している課題を見ると、ADRが解こうとした問題と驚くほど似ていることに気づきます。

AIエージェントはセッションをまたぐと文脈を失います。前回のセッションで合意した設計方針を知らないまま、異なるアプローチでコードを書き始める。人間のチームで起きていた「判断の理由が共有されない」問題が、AIとの協働でも再現されているのです。

そして興味深いのは、ADRが廃れた原因——「人間がドキュメントを書き続けられない」——が、AIの登場で解消されうるという点です。AIエージェント自身が設計判断を記録・更新するようにすれば、人手のボトルネックは消えます。

ただし、Markdownのままでは足りない

AIがADRの作成・更新を担うことで、「人間が書き続けられない」問題は解決に向かいます。ただし、従来のMarkdownファイル方式には別の課題が残ります。

docs/adr配下に数十のファイルが蓄積されていくと、今必要なADRを探すのが難しくなります。全ファイルをコンテキストに読み込めばトークン消費が膨らみ、LLMの推論精度にも影響します。「人間には早すぎた」ADRを、AIネイティブな形で再設計する余地がある——私たちはそう考えています。

次の記事では、sqlewがこの課題にどうアプローチしているかをご紹介します。


参考文献


sqlew OSS

  • あらゆるDBでSQLを実行
  • 軽量CLIツール
  • オープンソース & 永久無料
GitHubで見る

sqlew Cloud

  • セットアップ不要
  • チームコラボレーション内蔵
  • 無料プランあり
無料で試す