第3章 DMN (Decision Model and Notation)
DMN (Decision Model and Notation) は、業務的意思決定を説明してモデル化するために、OMG (Object Management Group) が確立している規格です。DMN は XML スキーマを定義して、DMN モデルを DMN 準拠のプラットフォーム間や組織間で共有し、ビジネスアナリストやビジネスルール開発者が DMN デシジョンサービスの設計と実装で協力できるようにするものです。DMN 規格は、ビジネスプロセスを開発してモデル化する BPMN (Business Process Model and Notation) 規格と類似しており、一緒に使用できます。
DMN の背景およびアプリケーションの詳細は、OMG の Decision Model and Notation specification を参照してください。
3.1. 交通違反 DMN デシジョン要件ダイアグラム (DRD) の作成
デシジョン要件ダイアグラム (DRD) は、DMN モデルを視覚的にしたものです。Business Central の DMN デザイナーを使用して交通違反プロジェクトの DRD を設計し、DRD コンポーネントのデシジョン論理を定義します。
図3.1 交通違反の例の DRD
前提条件
- Business Central に交通違反プロジェクトを作成している。
手順
- traffic-violation プロジェクトのホーム画面で Add Asset をクリックします。
Add Asset ページで DMN をクリックします。Create new DMN ウィンドウが開きます。
-
Create new DMN ウィンドウの DMN 名フィールドで
Traffic Violation
を入力します。 -
Package リストから
com.myspace.traffic_violation
を選択します。 - OK をクリックします。DMN デザイナーで DMN アセットが開きます。
-
Create new DMN ウィンドウの DMN 名フィールドで
- DMN デザイナーキャンバスで、DMN Input Data の入力ノード 2 つをキャンバスにドラッグします。
-
各入力ノードをダブルクリックして、1 つを
Driver
に、もう 1 つをViolation
に名前を変更します。 - DMN Decision デシジョンノードをキャンバスにドラッグします。
-
デシジョンノードをダブルクリックして、
Fine
に名前を変更します。 Violation 入力ノードをクリックして Create DMN Information Requirement アイコンを選択し、2 つのノードを接続する
Fine
デシジョンノードをクリックします。図3.2 DMN 情報要件アイコンの作成
- DMN Decision デシジョンノードをキャンバスにドラッグします。
-
デシジョンノードをダブルクリックして、
Should the driver be suspended?
に名前を変更します。 - Driver 入力ノードをクリックして Create DMN Information Requirement アイコンを選択し、2 つのノードを接続する Should the driver be suspended? デシジョンノードをクリックします。
- Fine デシジョンノードをクリックして Create DMN Information Requirement アイコンを選択し、Should the driver be suspended? デシジョンノードを選択します。
Save をクリックします。
注記DRD を定期的に保存すると、DMN デザイナーは DMN モデルを静的に検証し、モデルが完全に定義されるまでエラーメッセージが出力される可能性があります。DMN モデルをすべて定義し終えてもエラーが発生する場合には、特定の問題を随時トラブルシューティングしてください。