ソフトウェアアーキテクチャ用語集

C4モデル、DORAメトリクス、ADR、アーキテクチャドリフト、クリーンアーキテクチャなど、すべてのソフトウェアチームが知っておくべき用語を簡潔に定義します。Archylが厳選。

  • C4モデル — ソフトウェアシステムをSystem Context(システムコンテキスト)、Container(コンテナ)、Component(コンポーネント)、Code(コード)の4つのレベルで記述する、軽量なアーキテクチャ可視化のアプローチ。
  • システムコンテキスト図 — ソフトウェアシステムと、それを利用するユーザーや他の外部システムとのやり取りを示すC4レベル1のダイアグラム。
  • コンテナ図 — ソフトウェアシステムを構成するデプロイ可能/実行可能な単位(アプリケーション、サービス、データベース)を示すC4レベル2のダイアグラム。
  • コンポーネント図 — 1つのコンテナを、関連する機能のまとまり(コンポーネント)とその連携に分解して示すC4レベル3のダイアグラム。
  • コード図 — あるコンポーネントの実装レベルの詳細(クラス、インターフェース、関数)を示すC4レベル4のダイアグラム。
  • アーキテクチャ決定記録(ADR) — アーキテクチャ上重要な1つの決定と、その背景・結果を記録する短いドキュメント。
  • アーキテクチャドリフト — ドキュメント化されたアーキテクチャと、実際に本番環境で動作しているシステムとの間に広がっていくギャップ。
  • 適合性ルール — コードベースをアーキテクチャの意図に照らして検証する、機械的にチェック可能な制約。
  • アーキテクチャ・アズ・コード — システムアーキテクチャをバージョン管理されたテキストベースの形式で記述し、ソースコードと同じようにレビュー・差分確認・検証できるようにすること。
  • テクノロジーレーダー — 技術をリング(採用 / 試行 / 評価 / 保留)にグループ分けして整理し、エンジニアリングの選択を導くカタログ。
  • DORAメトリクス — 広く使われる4つのエンジニアリングパフォーマンス指標。デプロイ頻度、変更のリードタイム、変更失敗率、平均復旧時間。
  • デプロイ頻度 — チームがコードを本番環境にどれだけ頻繁に成功裏にリリースしているか。DORAの4つの指標の1つ。
  • 変更のリードタイム — コードの変更がコミットされてから、その変更が本番環境で動作するまでの時間。
  • 変更失敗率 — 本番環境で劣化を引き起こし、修復を必要としたデプロイの割合。
  • 平均復旧時間(MTTR) — 本番環境のインシデント発生後、サービスを復旧するのにかかる平均時間。
  • ドメイン駆動設計(DDD) — ビジネスドメインのモデルと言語を中心に据えるソフトウェア設計のアプローチ。
  • ヘキサゴナルアーキテクチャ — ポートとアダプターを介して、ドメインロジックをインフラから分離する階層化アーキテクチャスタイル。
  • クリーンアーキテクチャ — 依存関係がドメインに向かって内側を指す階層化アーキテクチャ。Robert C. Martinによって広められた。
  • イベントストーミング — ドメインイベントを表す付箋を使ってビジネスプロセスを可視化する、協働的なモデリングワークショップ。
  • マイクロサービス — アプリケーションを、ビジネス機能を中心に編成された、小さく独立してデプロイ可能なサービスの集合として構造化するアーキテクチャスタイル。
  • サービスメッシュ — 通常はサイドカープロキシを介して、サービス間通信を扱う専用のインフラ層。
  • APIコントラクト — プロデューサーとコンシューマーが遵守することに合意する、APIの形式的な仕様(OpenAPI、gRPC proto、GraphQLスキーマ)。
  • イベントチャネル — サービスが非同期にパブリッシュ・サブスクライブする、名前と型を持つイベントのストリーム(多くの場合Kafkaトピックなど)。
  • オーナーシップマップ — システム要素(サービス、モジュール、パイプライン)から、それらに責任を持つチームや個人への対応づけ。
  • リビングドキュメンテーション — 稼働中のシステムから生成または検証されるドキュメントで、システムの進化に合わせて正確さを保ち続けるもの。
  • MCPサーバー — Model Context Protocolを実装したサーバーで、AIコーディングアシスタントが標準化されたツールインターフェースを通じてプロジェクトのコンテキストを照会できるようにするもの。