境界づけられたコンテキスト(Bounded Context)
Bounded Context
きょうかいづけられたこんてきすと
ドメイン駆動設計で、特定のドメインモデルとユビキタス言語が一貫して通用する範囲。同じ「顧客」という語でも販売と配送では意味や属性が違うため、範囲を区切ってモデルを分ける。マイクロサービスの分割の単位を考える手掛かりにもなる。
Related
関連キーワードの用語
業務の対象領域(ドメイン)の知識をモデルとして表し、そのモデルを中心にソフトウェアを設計する手法で、エリック・エヴァンスが提唱した。業務の専門家と開発者がユビキタス言語でモデルを作り、境界づけられたコンテキストで範囲を区切り、エンティティや値オブジェクトなどの要素で実装する。
ドメイン駆動設計で、対象となる業務領域(ドメイン)の概念、ルール、概念どうしの関係を整理し、ソフトウェアの構造として表したモデル。業務の専門家と開発者がユビキタス言語を使って作り、ソースコードと一致させ続ける。
ドメイン駆動設計で、ソフトウェアによって課題を解決しようとする業務上の対象領域。例えば保険のシステムなら、契約、保険料、保険金の支払などの業務の知識とルールの範囲を指す。ドメインの知識を整理して表したものがドメインモデルで、大きなドメインは境界づけられたコンテキストに分けて扱う。関係モデルの定義域(ドメイン)とは別の意味である。
ドメイン駆動設計で、システムを構成する複数の境界づけられたコンテキスト(同じモデルと用語が通用する範囲)と、それらの間の関係を図にしたもの。上流・下流の関係、共有するモデル、変換のための層(腐敗防止層)などのつなぎ方を示し、チームやサービスの間の連携の設計に使う。
多数のコンテナの配置、起動・停止、負荷に応じた台数の増減、障害時の自動再起動、ネットワークやストレージの設定などを自動で管理すること。Kubernetesが代表的なツールで、あるべき状態を宣言的に定義すると、その状態を維持するように制御される。
ドメイン駆動設計で、業務の専門家と開発者が共通して使う、ドメインの用語と意味をそろえた言語。会話、文書、ソースコードのクラス名やメソッド名にまで一貫して使い、認識のずれや言い換えによる誤解を防ぐ。境界づけられたコンテキストごとに定める。
