ドメイン駆動設計(DDD)
Domain-Driven Design
どめいんくどうせっけい
ビジネスドメインの知識を中心に据えてソフトウェアを設計する手法。ユビキタス言語、境界づけられたコンテキスト、集約、エンティティ、値オブジェクトなどの概念を用いる。Eric Evansが提唱した。
Related
他の資格での定義
ビジネスドメイン(業務領域)の知識を中心に据えてソフトウェアを設計する手法。ドメインモデル、ドメインロジック、ユビキタス言語などの概念を用い、業務の複雑さをソフトウェアに正確に反映する。DDDと略される。
業務ドメインの知識を中心にソフトウェアを設計する手法。ドメインモデル、ドメインロジック、コンテキストマップ、ユビキタス言語、エンティティ、値オブジェクト、サービスなどの概念を用いて、業務の本質をコードに反映する。
ビジネスドメインの知識を中心に据えてソフトウェアを設計する手法。ユビキタス言語、境界づけられたコンテキスト、集約、エンティティ、値オブジェクトなどの概念を用いる。Eric Evansが提唱した。
業務の対象領域(ドメイン)の知識をモデルとして表し、そのモデルを中心にソフトウェアを設計する手法で、エリック・エヴァンスが提唱した。業務の専門家と開発者がユビキタス言語でモデルを作り、境界づけられたコンテキストで範囲を区切り、エンティティや値オブジェクトなどの要素で実装する。
Related
関連キーワードの用語
複数の要件や品質特性の間で、あるものを優先するとほかが犠牲になる関係を分析・評価すること。性能と保守性、コストと品質など、相反する要件間の最適なバランスを見つけるためにシステム設計で広く用いる。
システム要件を実現するために、ハードウェア、ソフトウェア、ネットワーク、データベースなどの構成要素と、それらの関係・インタフェースを決定する設計工程。要件定義とソフトウェア詳細設計の間に位置づけられる。
ソフトウェアシステムの全体構造を定義するもの。構成要素(コンポーネント)、それらの関係、外部環境とのインタフェース、設計・進化の原則を含む。品質特性のトレードオフを考慮して決定する。
ソフトウェアを独立性の高いモジュール(部品)に分割する設計技法。モジュール強度(凝集度)を高く、モジュール結合度を低くすることが設計原則。STS分割、TR分割、共通機能分割などの技法がある。
リレーショナルデータベースの論理設計において、データの冗長性を排除し整合性を保つためにテーブル構造を整理する手法。第1正規形から第3正規形、さらにボイスコッド正規形などがある。更新時異常の防止が目的。
業務で扱うデータの構造、関係、制約を体系的に定義するプロセス。概念データモデル、論理データモデル、物理データモデルの3段階で詳細化し、データベース設計の基礎とする。
