タスク 1: 意思決定サービスのメイン・ルール・プロジェクトの設計

ビジネス・ユーザーが自然言語でビジネス・ルールを記述できるように、語彙を作成します。 ルール・デザイナーを使用して、Java™オブジェクト・モデルから語彙を作成します。

このタスクについて

開発者は、ビジネス・ユーザーがルールを作成および編集するときに使用できるビジネス・ルールの語彙を作成する必要があります。 語彙は、ビジネス・ユーザーがよく知っている用語で構成されていなければなりません。 語彙を作成するプロセスを言語化 といいます。

このタスクでは、Java プロジェクトで定義されたオブジェクト・モデルに基づいてビジネス・オブジェクト・モデル(BOM)を作成します。 以下の図は、BOM のクラスおよびメンバーが、ビジネス・ユーザーがよく知っている語彙にどのように関連しているかを示しています。

図は、ビジネス・オブジェクト・モデルの設計を示しています。

ステップ 1: Rule Designer の開始と Java オブジェクト・モデルのインポート

Rule Designer は、ビジネス・ルール・アプリケーション用の Eclipse 開発環境です。 この環境で、ルール・プロジェクトと Java プロジェクトの両方を開発できます。

始める前に

このチュートリアル用にコピーするルールが含まれる元のファイルは、米国英語 (en_US) でのみ提供されます。 米国英語で Rule Designer を使用するには、 <InstallDir>/eclipse/eclipse.ini-vmargsの前に以下の行を追加します。ここで、 <InstallDir> は、 Rule Designerのインスタンスのインストール・ディレクトリーです。

-nl
en_US

手順

  1. Rule Designer を開始します ( ルール・アプリケーション開発の準備を参照)。
  2. ワークスペースを選択します。 「ワークスペース・ランチャー」ウィンドウが開くと、そこにデフォルトのワークスペースが表示されます。 ワークスペースが空でない場合は、空のワークスペースに切り替えます。 ワークスペースを作成するには、「ワークスペース・ランチャー」でワークスペースの名前を変更し、「OK」をクリックします。
    ヒント: Rule Designerの開始時に 「ワークスペース・ランチャー」 ウィンドウが表示されない場合は、以下のようにします。 ワークスペースを変更するには、 「ファイル」 > 「ワークスペースの切り替え」をクリックします。
  3. オプション: 接続ウィザードが開いたら、クラウド・ポータルに接続します。
    1. Operational Decision Manager on Cloud URL を次の形式で入力してください。 https://<vhostname>.bpm.ibmcloud.com/
    2. 「接続」をクリックし、クラウドの資格情報を入力します。
    3. 「完了 (Finish)」 をクリックします。
  4. Eclipse 「ようこそ」 ページを閉じて、 「ルール」 パースペクティブを表示します。
    規則 パースペクティブが開いていない場合は、 ウィンドウ > パースペクティブ > パースペクティブを開く > その他をクリックし、 規則を選択し、 開くをクリックします。
  5. ファイル > 「インポート」をクリックします。 「インポート」ウィザードで、 一般 > 「ワークスペースへの既存プロジェクト」を展開し、 「次へ」をクリックします。
  6. 「ルート・ディレクトリーの選択」を選択し、 <InstallDir>/odm-cloud-getting-started-masterを参照して、 「OK」をクリックします。 InstallDir は、 GitHub からダウンロードしたファイルのディレクトリーです ( チュートリアル・プロジェクトの準備と削除を参照)。
  7. miniloan-xom が選択されていることを確認し、 Miniloan Serviceを選択解除します。
  8. プロジェクトをインポートするには、 「終了」 をクリックします。

結果

「ルール」パースペクティブには、「ルール・エクスプローラー」「意思決定サービス・マップ」など、このチュートリアルで学習するさまざまなビューが含まれています。

ルール・エクスプローラー には miniloan-xomが表示されます。これには、チュートリアルで使用する実行オブジェクト・モデル (XOM) が含まれています。 XOM は、ルールを実行する対象となるモデルです。 これは、アプリケーション・オブジェクトとデータを参照し、BOM の基本実装です ( 概要: BOM および実行オブジェクト・モデル (XOM)を参照してください)。 miniloan パッケージは、 Borrower および Loan Java クラスを保持します。

「ルール・プロジェクト・マップ」タブに注意してください。 意思決定サービスの作業を行っているとき、「ルール・プロジェクト・マップ」タブに「意思決定サービス・マップ」が表示されます。これには、意思決定サービスを作成および配布するためのさまざまなステップが含まれています。 「意思決定サービス・マップ」を意思決定サービスの作成プロセスのガイドとして使用できます。 意思決定サービス・マップ が表示されない場合は、 ウィンドウ > ビューの表示 > ルール・プロジェクト・マップ をクリックして開きます。

以下のイメージは、タブ・バーにある「ルール・プロジェクト・マップ」を示しています。

イメージは、「ルール・プロジェクト・マップ」タブを示しています

ステップ 2: 意思決定サービスのルール・プロジェクトの作成

Rule Designerでは、アプリケーションのビジネス・ロジックを意思決定サービスに保管します。 意思決定サービスは、メイン・ルール・プロジェクトとオプションの標準ルール・プロジェクトから構成でき、ビジネス・アプリケーションのロジックを複数のパーツに分割できます。 各ルール・プロジェクトにルール・アーティファクト、BOM、語彙を含めることができ、XOM への参照も含めることができます。 ルール・プロジェクト内で、アプリケーションのビジネス・ロジックを構成する項目を管理、作成、およびデバッグすることができます。 このチュートリアルでは、アプリケーションのロジックを単純化するために、メイン・ルール・プロジェクトのみを作成します。

手順

  1. 「ルール」 パースペクティブが表示されていること、および 「ルール・プロジェクト・マップ」 が下部のタブ・バーに表示されていることを確認します。
  2. 「ルール・プロジェクト・マップ」 タブの 「意思決定サービス・マップ」 で、 「メイン・ルール・プロジェクトの作成」をクリックします。
  3. 「意思決定サービスのルール・プロジェクト」で 「メイン・ルール・プロジェクト」 が選択されていることを確認し、 「次へ」をクリックします。
  4. 「プロジェクト名」 フィールドに、 my decision serviceと入力します。
    デフォルトのロケーションを使用します。

    チュートリアル全体をとおして my decision service という名前を使用します。 意思決定サービスを公開するときは、他のプロジェクトとの競合を避けるために、異なる名前を使用できます。 例えば、 my decision service の前にイニシャルを付けることができます。

  5. 完了」をクリックします。

    ルール・エクスプローラーmy decision serviceが表示されます。

    ルール・プロジェクトには空のフォルダーが含まれています。 rules フォルダーと bom フォルダーを使用して、ルールと BOM を保管します。

ステップ 3: ルール・プロジェクトへの XOM のインポート

Miniloan Java プロジェクトから XOM をインポートします。

手順

  1. 「ルール・エクスプローラー」で、 my decision serviceをクリックします。

    「意思決定サービス・マップ」に、ルール・プロジェクトを設計する際に従うステップが表示されます。

  2. 「意思決定サービス・マップ」で、 「XOM のインポート」をクリックします。
  3. 「XOM のインポート」 ダイアログで、 「Java 実行オブジェクト・モデル」 が選択されていることを確認し、 「OK」をクリックします。
  4. 「プロジェクト」 タブで、 miniloan-xom を選択し、 「適用して閉じる」をクリックします。
    イメージは、必要な Java プロジェクトを示しています。

ステップ 4: ビジネス・オブジェクト・モデルの作成

ビジネス・ルールを作成して編集するためには、BOM を作成しなければなりません。 BOM は手動で作成することも、XOM を解析することで自動的に作成することもできます。 Rule Designer を使用して XOM の Java クラスを解析し、それらのメソッドとプロパティーから BOM を作成します。 その後、BOM に含まれる言語化された用語を使用してルールを作成できます。

手順

  1. 「意思決定サービス・マップ」で、 「BOM の作成」をクリックします。
    ヒント: ルール・エクスプローラーで bom フォルダーを右クリックして、 「新規」 > 「BOM エントリー」をクリックすることもできます。
  2. 「新規 BOM エントリー」ウィザードで、 「名前」 フィールドに miniloanと入力します。
  3. 「XOM から BOM エントリーを作成する」 が選択されていることを確認し、 「次へ」をクリックします。
  4. 「XOM エントリーの選択」 フィールドで、 「XOM の参照」をクリックし、 platform:/miniloan-xomを選択し、 「OK」をクリックします。
  5. 「クラスの選択」の下で、 miniloan パッケージを選択します。 パッケージを選択すると、そのパッケージ内のすべてのクラスが選択されます。
    イメージは、BOM エントリー・ダイアログ内の miniloan パッケージを示しています。
    miniloan パッケージには、 Borrower クラスと Loan クラスが含まれています。
  6. 「次へ」をクリックします。
  7. 「BOM 言語化」 ページで、 「すべてのメソッド」 チェック・ボックスを選択する必要があります。
    すべてのメソッド チェック・ボックスを使用すると、既に選択されているエレメントに加えて、すべてのメソッドが言語化されます。
    「すべてのメソッド」チェック・ボックスを選択します。
  8. 完了」をクリックします。
  9. ルール・エクスプローラーで、 bom > miniloan をダブルクリックして BOM エディターを開きます。 少し時間をかけて BOM を確認してください。

    BOM エディターで、以下のように miniloan エントリーを展開します。

    イメージは、展開された miniloan BOM エントリーを示しています。

    現在、BOM 内には、XOM の Borrower クラスと Loan クラスに相当する 2 つのクラスがあります。

  10. Loan クラスをダブルクリックして、BOM エディターで開きます。

    すべての Java メンバーおよびメソッドが変換され、デフォルトの言語化が割り当てられます。

  11. 「メンバー」 セクションで、 addToMessages(String) メソッドをダブルクリックします。

    BOM エディターが「メンバー」タブに切り替わります。 「メンバーの言語化」セクションを見ると、このメソッドの言語化が add a string to the messages of a loan であることが分かります。

    イメージは、「メンバーの言語化」セクションのメソッドの言語化を示しています。

    言語化は、ルール・エディターでも使用されます。

  12. miniloan タブを閉じて、BOM エディターを閉じます。
    イメージは、BOM エディターを閉じる方法を示しています。

ステップ 5: 意思決定操作の定義

ルール・セットは、ルール成果物とその他のエレメントを含む実行可能なパッケージです。 これには、ルール・エンジンで実行可能な一連のルールが含まれます。 ルール・セットの内容のほかに、クライアント・アプリケーションとルール・セットが情報を交換できるようにするためのパラメーターも定義する必要があります。 意思決定操作には、ルール・セットの内容およびパラメーターを定義するために必要なすべての設定が含まれています。

手順

  1. 「意思決定サービス・マップ」で、 「意思決定操作の追加」をクリックします。
  2. 「新規意思決定操作」 ウィザードの 「名前」 フィールドに、 my operationと入力します。
  3. 「次へ」をクリックします。
    「ソース・ルール・プロジェクト」ウィンドウが開きます。
  4. my decision service が選択されていることを確認し、 「終了」をクリックします。
  5. 「意思決定サービス・マップ」で、 「操作マップに移動」をクリックします。
  6. my decision service > deployment > my operation.dopを選択し、 「OK」をクリックします。
    イメージは、意思決定サービス・フォルダーを示しています。

    操作マップが開き、実行可能な各種アクションが表示されます。 マップ内の各リンクから、それぞれ異なるエディターが開かれます。

    イメージは、操作マップを示しています。

ステップ 6: 操作シグニチャーの設計

クライアント・アプリケーションは、入力パラメーターと出力パラメーターを使用してルール・セットと対話します。 これらのパラメーターは、意思決定操作のシグニチャー内で定義されます。 これらは、Java メソッド・パラメーターと同等です。 これらは、ルールを記述する際に使用できる参照です。

手順

ローンの状況に基づいて意思決定を下せるようにするために、借り手とローンのルール・セット・パラメーターを作成します。

  • 借り手は IN パラメーターです。 IN パラメーターの値は、実行時にルール・セットへの入力として提供されます。

  • ローンは IN_OUT パラメーターです。 IN_OUT パラメーターの値は、実行時にルール・セットへの入力として提供され、ルール・セットによって変更でき、実行完了時には出力として提供されます。

  1. 操作マップで、 「変数セットの追加」をクリックします。
  2. 「新規変数セット」 ウィザードの 「名前」 フィールドに、 my parametersと入力します。
  3. 完了」をクリックします。
  4. borrower パラメーターを定義します。
    1. 「追加」をクリックします。
      デフォルト値が設定された新しい行が表示されます。
    2. 「名前」 列に、 borrowerと入力します。
    3. 「タイプ」 列で、 をクリックします。 ボタンをクリックし、 「一致するタイプ」 ボックスで 「Borrower」 タイプをダブルクリックします。

      miniloan.Borrower 型が「型」列に表示されます。

    4. 「言語化」 列に、 the borrowerと入力します。
  5. ステップ 4 を繰り返して、 loan パラメーターを定義します。
    • 名前: loan
    • タイプ: Loan
    • 言語化: the loan

    変数セットは、次のように表示されます。

    イメージは、変数セットを示しています。
  6. Eclipse 「保存」 ボタンをクリックして作業内容を保存し、 my parameters 変数セット・エディターを閉じます。
  7. 「操作マップ」で、 「変数のバインド」をクリックします。
  8. 以下のように、意思決定操作シグニチャー・エディターの 適格変数 部分で my parameters を展開します。
    イメージは、適格な変数を示しています。
    1. borrower を入力パラメーターにドラッグします。
    2. loan を入力 - 出力パラメーターにドラッグします。

    意思決定操作シグニチャーが次のように表示されます。

    イメージは、意思決定操作シグニチャーのパラメーターを示しています。
  9. 作業を保存して、 my operationを閉じます。

次の作業

次のタスクでは、ルールの実行方法を調整するルール・フローを作成します。