適合性ルールとは?
適合性ルールは、アーキテクチャ上の不変条件をコードとして表現します。例えば「ドメイン層はインフラ層をインポートしてはならない」「すべての公開エンドポイントは責任を持つチームを宣言しなければならない」「いかなるサービスも決済データベースを直接呼び出してはならない」といったものです。これらのルールをCIで実行することで、半年後の苦痛を伴う監査ではなく、PRの時点でドリフトを検出するセーフティネットが得られます。
関連用語
- アーキテクチャドリフト — ドキュメント化されたアーキテクチャと、実際に本番環境で動作しているシステムとの間に広がっていくギャップ。
- アーキテクチャ・アズ・コード — システムアーキテクチャをバージョン管理されたテキストベースの形式で記述し、ソースコードと同じようにレビュー・差分確認・検証できるようにすること。