資格暗記無料で始める

ドメイン駆動設計(DDD)とは?

ドメイン駆動設計(DDD)とは、業務領域(ドメイン)の知識をモデルとしてコードの中心に据え、業務専門家と開発者が同じ言葉(ユビキタス言語)で語れる状態を保つ設計手法。エンティティ、値オブジェクト、集約、リポジトリ、境界づけられたコンテキストといった構成要素を用いる。

どめいんくどうせっけい

基本情報技術者試験の頻出用語/テクノロジ系/別名:ドメイン駆動設計、DDD


ドメイン駆動設計(DDD)の意味

業務領域(ドメイン)の知識をモデルとしてコードの中心に据え、業務専門家と開発者が同じ言葉(ユビキタス言語)で語れる状態を保つ設計手法。エンティティ、値オブジェクト、集約、リポジトリ、境界づけられたコンテキストといった構成要素を用いる。

ドメイン駆動設計(DDD)の具体例

「注文」を集約ルートとし、明細は集約の内部としてルート経由でのみ更新する。こうすると「明細合計と注文金額が一致する」という不変条件を1か所で守れる。販売部門の「顧客」と保守部門の「顧客」は意味が違うため、別コンテキストとして分けて扱う。

ドメイン駆動設計(DDD)は試験でどう引っ掛けられる?

DDDは技術要素の名前を並べる話ではなく、業務の複雑さに投資を集中させる方針。単純なCRUDに適用すると層が増えるだけで損になる。またマイクロサービス化と同義ではない。境界づけられたコンテキストはサービス分割の指針にはなるが別概念。

ドメイン駆動設計(DDD)と関連する用語

最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。