ドメインモデリングについて
ドメインモデリングとは
ドメインモデリング(domain Modeling)とは
ドメインモデリングとは、システム開発の対象となる業務のプロセスやデータ構造を分析して図式化することです。
モデリングを実施することで、システムの処理を可視化して、必要な機能や改善点を明確化することができます。
ドメインとは
ドメインとは、分析の対象となる問題領域やステークホルダのことです。
言い換えれば、ドメインは、ソリューションを提供するために分析しなければならない範囲のことを指します。
この用語はビジネスアナリシス(要求分析)分野で使われるものであり、情報システム開発分野以外で使用される意味合いと異なるため注意が必要です。
ドメインは、「コアドメイン」と「支援サブドメイン」と「汎用サブドメイン」の3種類に分割することができます。
コアドメインとは、ビジネスで最も重要な価値や競争優位性を生み出す部分を指します。
支援サブドメインはビジネスの主要領域をサポートする部分であり、汎用サブドメインはシステムに必要なビジネス外の領域のことです。
モデリングとは
モデリングとは「モデル化」のことです。
モデル化とは、システム開発における業務プロセスやデータ構造などから共通する性質や特徴を抽出して、抽象的な模型(モデル)を作成することです。
モデルを作成することで、構造や構成要素、対象間の関係や作用などを明確化して、システムの全体像を可視化します。
モデル化は、物理から論理、現状から将来という流れをとって、整合性のあるモデルを作成します。
順番 | 種類 | 説明 |
---|---|---|
1 | 現物理モデル |
現状の業務機能と情報システムでの処理を分析し、相互の関係を明確化したもの。 現在の業務や実装と、具体的な制約(組織、場所、時期、担当、媒体など)が加わります。 |
2 | 現論理モデル |
企業における主要機能を明確にして、現状の業務機能を分析し、体系化したもの。 物理モデルから制約を取り払ったモデルです。 |
3 | 新論理モデル |
経営目標の達成に必要な業務機能を定義し、体系化したもの。 現論理モデルに、システム化の要件や新機能を加えたモデルです。 |
4 | 新物理モデル |
本来あるべき業務機能と現状を比較して、その差異を分析し、評価したもの。 業務を実装するために各種制約を加えたモデルです。 |
モデル化の手法には、トップダウンアプローチとボトムアップアプローチがあります。
トップダウンアプローチは、業務の全体像(概念データモデル)を定義してから、各部分を具体化を進める方法です。
ボトムアップアプローチは、現状業務を細かく調査した結果を抽象化してモデル化を行なう方法です。
これらの手法を使い分けして、正規化されて、かつすべての属性を備えた最終的な論理データモデルを作成します。
モデル化の代表的な図式
データフロー図(DFD:Data Flow Diagram)
DFDは、適用業務データの流れに着目して、情報システムに必要な処理や機能をモデル化する図式表現です。
最低限の記述ルールがいくつかありますが、基本的には自由度が高く、多くの表現が可能な図式です。
DFDの記述は、データフロー、プロセス、データストア、ターミネータの4種類の記号を用います。
記号 | 説明 |
---|---|
ターミネータ(Terminator) |
システムの外部からデータを提供または受信する人や組織を示す記号です。 エンティティ、外部実体、情報源などとも呼ばれます。 |
データフロー(Data flow) |
システム内で移動するデータの流れを示す記号です。 矢印の方向がデータの移動方向を示しており、システム内のデータの流れがどのように行われているかを表現できます。 |
プロセス(Process) |
システム内で行われる操作やタスクを示す記号です。 プロセスは、データに何らかの変更を加え出力しなければならないというルールがあります。 また、プロセスには入力と出力のデータフローが(最低1つずつ)必要です。 |
データストア(data store) |
データの保管場所を示す記号です。 ほかのデータストアと直接にデータフローで結ばれることはなく、処理が介在します。 |
E-R図(ERD:Entity Relationship Diagram)
E-R図とは、対象とする世界を実体(エンティティ)と関連(リレーションシップ)の二つの概念で表現する図です。
システム開発においては、存在するデータとデータ同士の関係をもとにしてモデル化します。
情報システムの全体計画立案のためにE-Rモデルを用いて会社のデータモデルを作成する手順は以下のようになります。
1.企業の全体像を把握するため、基本的なエンティティだけを抽出します。
2.それらの相互間のリレーションシップを含めて、鳥瞰(かん)図を作成します。
3.エンティティを詳細化し、すべてのリレーションシップを明確にします。
ペトリネット(Petri net)
ペトリネットとは、並行する処理同士の制御の流れや同期のタイミングをモデル化する図式表現です。
ドイツの数学者、カール・アダム・ペトリが1962年に発表した離散分散システムを数学的に表現するために考案された手法です。
ペトリネットは、プレース(状態)、トランジション(事象)という2種類の節点(ノード)をもつ有向2部グラフでシステムの動作を記述します。
トランジションの発火(事象の発生)を契機として、トークンがプレースに移動します。
UML
UMLを参照ください。
BPMN(Business Process Model and Notation:ビジネスプロセスモデリング表記法)
BPMNとは、Business Process Management Initiative (BPMI) によって策定された、ビジネスプロセスをワークフローとして描画するための図式表現です。
イベント・アクティビティ・分岐・合流をオブジェクトと、フローを示す矢印などで構成された図によって、業務プロセスを表現します。