ドメイン分析では、主にドメインモデルを作成し、ドメイン内のシステムに共通する特性とさまざまな特性を表現する。ドメインモデルは、コンポーネントを設計するための基礎として機能することで、構成可能な方法でアーキテクチャとコンポーネントを作成することを支援する。効果的なドメインモデルは、ドメイン内の多様で一貫した特徴を含むだけでなく、ドメイン内で使用される語彙を定義し、システム内の概念、アイデア、現象を定義する。フィーチャーモデルは、概念を必要なフィーチャーとオプションのフィーチャーに分解し、完全に形式化された設定可能な要求のセットを作成する。
ドメイン設計.
ドメイン設計は、ドメイン分析フェーズで作成されたドメインモデルを使用し、ドメイン内のすべてのシステムが適合できる汎用アーキテクチャを作成することを目的とする。アプリケーションエンジニアリングが機能要件と非機能要件を使用して設計を作成するのと同じように、ドメインエンジニアリングのドメイン設計フェーズでは、ドメイン分析フェーズで作成された設定可能な要件を使用して、システムファミリーのための設定可能で標準化されたソリューションを作成する。ドメイン設計の目的は、要件構成が異なるにもかかわらず、ドメイン内のシステムに共通する問題を解決するアーキテクチャパターンを作成することである。ドメイン設計におけるパターンの開発に加えて、エンジニアはパターンの範囲と、コンテキストがパターンに関連するレベルを特定することにも注意しなければならない。コンテキストの制限は非常に重要である。コンテキストの量が多すぎると、そのパターンは多くのシステムに適用できず、コンテキストの量が少なすぎると、パターンが十分に強力でないために有用でなくなる。有用なパターンは、頻繁に繰り返され、かつ高品質でなければならない。
ドメイン設計の目的は、開発された機能モデルによって提供される柔軟性を保持しながら、可能な限り多くのドメイン要件を満たすことである。アーキテクチャは、ドメイン内のすべてのシステムを満足させるのに十分な柔軟性を持ちながら、ソリューションのベースとなる強固なフレームワークを提供するのに十分な剛性を持つべきである。
ドメイン実装.
ドメイン実装とは、ドメイン内でカスタマイズされたプログラムを効率的に生成するためのプロセスとツールの作成である。
批判.