プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Business Process Management Studioでのビジネス・プロセスの開発
12c (12.2.1.1)
E79347-01
目次へ移動
目次

前
次

8 ビジネス・カタログの使用

この章では、ビジネス・カタログを使用して、BPMプロジェクトにプロセスを実装するために必要なコンポーネントを格納および編成する方法について説明します。また、BPMプロジェクトのアーティファクトがビジネス・カタログでどのように表されるのかについても説明します。

この章の内容は次のとおりです。

8.1 ビジネス・カタログの概要

ビジネス・カタログは、BPMプロジェクト内のディレクトリであり、BPMNプロセスへのフロー・オブジェクトの実装に使用するコンポーネントが格納されます。ビジネス・カタログ内のアセットは、BPMプロジェクト内の複数のプロセス間で共有および再利用できます。

ビジネス・カタログには、次のタイプのコンポーネントが格納されます。

  • エラー

  • イベント

  • ヒューマン・タスク

  • ビジネス・ルール

  • サービス・アダプタ

  • 合成タイプ

  • BPELプロセスおよびメディエータ

  • ビジネス・オブジェクト

  • ビジネス例外

  • 列挙

コンポーネントによっては、特定のアクティビティや複数のフロー・オブジェクトを実装したり、フロー・オブジェクトのデータ・アソシエーションを定義する目的で使用できます。

表8-1は、フロー・オブジェクトの実装でフロー・オブジェクトにより使用されるビジネス・カタログ内のコンポーネントを示しています。

表8-1 フロー・オブジェクトの実装

コンポーネント フロー・オブジェクト

エラー

  • エラー開始イベント

  • エラー・スロー・イベント

  • エラー・キャッチ・イベント

  • エラー終了イベント

ビジネス例外

  • エラー開始イベント

  • エラー・スロー・イベント

  • エラー・キャッチ・イベント

  • エラー終了イベント

イベント

  • シグナル開始イベント

  • シグナル・スロー・イベント

  • シグナル終了イベント

ヒューマン・タスク

ユーザー・タスク

ビジネス・ルール

ビジネス・ルール・タスク

サービス・アダプタ

  • サービス・タスク

  • メッセージ・スロー・イベント

  • メッセージ・キャッチ・イベント

  • メッセージ終了イベント

  • 送信タスクおよび受信タスク

メディエータ

  • サービス・タスク

  • メッセージ・スロー・イベント

  • メッセージ・キャッチ・イベント

  • メッセージ終了イベント

  • 送信タスクおよび受信タスク

BPELプロセス

  • サービス・タスク

  • メッセージ・スロー・イベント

  • メッセージ・キャッチ・イベント

  • メッセージ終了イベント

  • 送信タスクおよび受信タスク

ビジネス・オブジェクト

ビジネス・オブジェクトは、次のタスクまたはイベントのデータ・アソシエーション内で引数として使用できます。

  • サービス・タスク

  • ユーザー・タスク

  • ビジネス・ルール・タスク

  • メッセージ・スロー・イベント

  • メッセージ・キャッチ・イベント

  • メッセージ終了イベント

  • 送信タスクおよび受信タスク

列挙

列挙の属性を、次のデータ・アソシエーションの引数として使用できます。

  • サービス・タスク

  • ユーザー・タスク

  • ビジネス・ルール・タスク

  • メッセージ・スロー・イベント

  • メッセージ・キャッチ・イベント

  • メッセージ終了イベント

  • 送信タスクおよび受信タスク

ビジネス・カタログでは、コンポーネントのタイプに応じて、2種類の方法でコンポーネントが格納されます。コンポーネントは、ビジネス・カタログでの格納方法によって次のカテゴリに分類できます。

  • 非合成コンポーネント

  • 合成コンポーネント

8.1.1 非合成コンポーネント

ビジネス・カタログによって、これらのコンポーネントの情報とともにファイルが格納されます。BPMプロジェクトを開くと、ビジネス・カタログにより作成されたファイルが、コンポーネントをロードするために読み取られます。

次のコンポーネントは合成されません。

  • ビジネス・オブジェクト

  • 例外

  • モジュール

  • カスタマイズされたサービスおよび参照

  • 列挙

8.1.2 合成コンポーネント

ビジネス・カタログによって、SOAコンポジットに含まれるSOAコンポーネントやXMLタイプまたは要素に基づいて、コンポーネント構造が動的に生成されます。これらのコンポーネントは変更できません。コンポーネントは、そのタイプに応じて異なる事前定義済モジュールに含められます。コンポーネントを別のモジュールに移動することはできません。コンポーネントを変更する場合や、別のモジュールに格納する場合は、サービスまたはタイプをカスタマイズする必要があります。

ビジネス・カタログは、合成コンポーネントに対してはいずれのファイル・タイプも格納しません。合成コンポーネントの構造は、その合成コンポーネントが表すXMLコンポーネントまたはSOAコンポーネントに基づいて動的に生成されます。

合成コンポーネントを変更したり、別のモジュールに移動することはできません。これらのコンポーネントは動的に生成されるため、その基になっているXMLスキーマまたはSOAコンポーネントに行った変更は自動的に合成コンポーネントに反映されます。

次のコンポーネントは合成されます。

  • 合成タイプ

  • ビジネス・ルール

  • ヒューマン・タスク

  • BPELプロセス

  • メディエータ

8.1.3 ビジネス・カタログへのコンポーネントの追加

コンポーネントをビジネス・カタログに追加する方法は、コンポーネントのタイプによって異なります。

  • エラー: サービスまたは参照をBPMNプロジェクトに追加すると、その中の操作にエラーを生成する機能があれば、これらのエラーは「エラー」事前定義済モジュール内に表示されます。

  • イベント: イベントをSOAコンポジットに追加すると、それらのイベントは「イベント」事前定義済モジュール内に表示されます。BPMプロジェクトでのイベントの使用方法の詳細は、「シグナル・イベントを使用したプロセス間の通信の概要」を参照してください。

  • ヒューマン・タスク: SOAコンポジットに含まれている既存のヒューマン・タスクおよび新しく追加したヒューマン・タスクは、自動的に「HumanTask」事前定義済モジュール内のコンポーネントとして表示されます。このコンポーネントは、追加したヒューマン・タスクから生成されます。詳細は、ヒューマン・タスクの使用を参照してください。

  • ビジネス・ルール: SOAコンポジットに含まれている既存のビジネス・ルールおよび新しく追加したビジネス・ルールは、自動的に「BusinessRule」事前定義済モジュール内のコンポーネントとして表示されます。このコンポーネントは、追加したビジネス・ルールから生成されます。詳細は、「ビジネス・ルールの使用」を参照してください。

  • サービス・アダプタ: SOAコンポジット内の既存のサービス・アダプタおよび新しく追加したサービス・アダプタは、「サービス」および「参照」事前定義済モジュール内に表示されます。詳細は、「サービスおよび参照の使用」を参照してください。

  • BPELプロセスおよびメディエータ: SOAコンポジットに含まれているBPELプロセスとメディエータおよび新しく追加したBPELプロセスとメディエータは、自動的に「サービス」および「参照」事前定義済モジュール内のコンポーネントとして表示されます。詳細は、「Oracle BPMでのOracle Mediatorの概要」および「Oracle BPMでのBPELプロセスの概要」を参照してください。

  • 合成タイプ: 1つ以上の引数を必要とするサービスまたは参照を追加すると、「タイプ」事前定義済モジュール内にそれらの引数のデータ型が存在していなければ、Studioによって自動的に追加されます。詳細は、「サービスおよび参照の概要」を参照してください。合成タイプをカスタマイズして、名前を変更したり、ユーザー定義モジュールに移動することができます。合成タイプのカスタマイズ方法の詳細は、「合成タイプのカスタマイズ」を参照してください。

  • ビジネス・オブジェクト: ビジネス・オブジェクトをビジネス・カタログに追加する方法は何通りかあります。詳細は、「ビジネス・オブジェクトのモデリング」を参照してください。

  • 列挙: ビジネス・カタログのカスタム・モジュールで列挙を追加できます。列挙の作成方法の詳細は、「列挙の作成」を参照してください。

注意:

欠落または破損しているリソースを参照するコンポーネントを追加すると、ビジネス・カタログには、この欠落している依存関係がエラー・ノードで示されます。ノードのラベルには、リソースのパスが表示されます。欠落しているリソースの詳細は、ノードにマウスを置いてツールチップを表示するか、BPMプロジェクトを構築してください。BPMプロジェクトを構築すると、欠落しているリソースを必要とするコンポーネントを検索できます。

8.1.4 モジュールを使用したビジネス・コンポーネントの編成

モジュールを使用して、ビジネス・カタログ内のビジネス・オブジェクトを別々のグループに編成できます。一般に、関連するコンポーネントはすべて1つのモジュールにまとめます。

営業見積サンプルでは、プロセスで使用される見積情報の管理に使用されるすべてのコンポーネントを格納するためのQuotesという名前のモジュールを作成できます。

複数のモジュールはネストできます。モジュールをネストすると、コンポーネントの構成を反映する階層構造を作成できます。

営業見積サンプルにおいては、プロジェクト内の情報を処理するすべてのモジュールを1つのモジュールにまとめることができます。これを行うため、QuotesモジュールやContractsモジュールなどを含むDataという名前のモジュールを作成できます。

モジュールを使用してコンポーネントを編成すると、次のような利点があります。

  • プロジェクトの可読性が向上します。モジュールには、モジュール内のコンポーネントの情報を示すような名前を付けることをお薦めします。

  • 特定のコンポーネントを見つけやすくなります。

  • 必要な場合、異なるモジュールに属する異なるコンポーネントを識別するために同じ名前を使用できます。

ビジネス・オブジェクトをビジネス・カタログのルート・レベルに追加することはできません。必ず、ビジネス・オブジェクトを格納できるモジュールを作成する必要があります。

モジュールの名前にはわかりやすい識別子を使用することをお薦めします。これにより、コンポーネントを見つけやすくなり、他の開発者がプロジェクトを理解しやすくなります。

8.1.4.1 事前定義済モジュール

ビジネス・カタログには、次の事前定義済モジュールが含まれています。

  • エラー: プロジェクト内のサービスおよび参照での操作により定義されたエラーが格納されます。

  • イベント: SOAコンポジットに追加したイベントが格納されます。

  • HumanTask: プロジェクトに追加したヒューマン・タスクが格納されます。

  • 参照: BPMNプロセスのインタフェースの定義に使用できるインタフェースが格納されます。

  • ルール: プロジェクトに追加したビジネス・ルールが格納されます。

  • サービス: BPMNプロセスにフロー・オブジェクトを実装するために使用できるコンポーネントが格納されます。

  • タイプ: ビジネス・カタログ内に存在していないタイプの引数を必要とするサービスまたは参照を追加したときにStudioによって生成されるタイプが格納されます。

これらのモジュールはビジネス・カタログの永続的な部分であり、削除や名前の変更はできません。Studioでは、これらの名前を使用して新規の最上位レベルのモジュールを作成することはできません。

これらの事前定義済モジュール内に新規のモジュールを作成することはできません。事前定義済モジュールに格納されているコンポーネントは合成されるため、コンポーネントの名前を変更したり、他のモジュールに移動することはできません。

図8-1 カスタム・モジュールおよび事前定義済モジュール

図8-1の説明が続きます
「図8-1 カスタム・モジュールおよび事前定義済モジュール」の説明

8.2 新規モジュールの追加

ビジネス・カタログでは、新規のモジュールを作成して、プロジェクト内のビジネス・オブジェクトを格納および編成できます。

モジュールは、ビジネス・カタログのルート・レベルに追加することも、別のモジュール内に追加することもできます。

8.2.1 新規のモジュールを追加する方法

新しく作成したコンポーネントとカスタマイズしたサービスおよび参照を格納するための新規モジュールを作成できます。

新規のモジュールを追加するには:

  1. 「アプリケーション」ウィンドウで、「コンポーネント」ノードまたはユーザー定義の既存のモジュールを右クリックします。
  2. 「新規」を選択します。
  3. 「モジュール」を選択します。
  4. モジュールを識別する名前を入力します。
  5. 「OK」をクリックします。

8.2.2 新規のモジュールを追加した後の結果

新規のモジュールがビジネス・カタログ内に表示されます。この新規モジュール内で、新規のビジネス・オブジェクト、ビジネス例外およびモジュールを作成できます。また、サービスおよび参照をカスタマイズすることもできます。

8.3 モジュールの削除

ビジネス・カタログ内のカスタム・モジュールは削除できます。事前定義済モジュールは削除できません。

モジュールを削除すると、そのモジュール内のすべてのコンポーネントも削除されます。

8.3.1 モジュールを削除する方法

使用しないモジュールや不要なモジュールは削除できます。

モジュールを削除するには:

  1. 「アプリケーション」ウィンドウで、削除するモジュールを右クリックします。
  2. 「削除」を選択します。

    確認メッセージが表示されます。

  3. 「OK」をクリックします。

8.3.2 モジュールを削除した後の結果

モジュールを削除すると、モジュールおよびそのモジュール内のコンポーネントがビジネス・カタログから削除されます。

プロジェクト内に削除したコンポーネントを使用しているフロー・オブジェクトまたはコンポーネントがあると、BPMプロジェクトの構築時にエラーが発生します。

8.4 合成タイプのカスタマイズ

合成タイプをカスタマイズして、わかりやすい名前に変更すると、プロセス・アナリストおよびプロセス開発者がコンポーネントの用途を理解しやすくなります。

タイプをカスタマイズする際は、カスタマイズしたタイプを格納するユーザー定義モジュールを入力する必要もあります。

8.4.1 合成タイプをカスタマイズする方法

合成タイプをカスタマイズして、名前を変更したり、ユーザー定義モジュールに移動することができます。

合成タイプをカスタマイズするには:

  1. 「アプリケーション」ウィンドウで、「タイプ」事前定義済モジュールを開きます。
  2. カスタマイズするタイプを右クリックします。
  3. 「タイプのカスタマイズ」を選択します。

    ビジネス・オブジェクトの作成ダイアログ・ボックスが表示されます。

  4. 「名前」フィールドに、カスタマイズしたタイプの名前を入力します。
  5. 「宛先モジュール」フィールドに、カスタマイズしたタイプを格納するモジュールの名前を入力します。または、「参照」ボタンをクリックして使用可能なモジュールを参照し、モジュールを選択します。
  6. 「OK」をクリックします。

8.4.2 合成タイプをカスタマイズした後の結果

「タイプ」事前定義済モジュールが消え、カスタマイズしたタイプに対して選択したモジュール内に新規のビジネス・オブジェクトが表示されます。

Oracle BPM Studioによって自動的に、合成タイプへのすべての参照が、カスタマイズしたタイプへの参照で置き換えられます。

カスタマイズしたタイプを削除すると、合成タイプが再び「タイプ」事前定義済モジュール内に表示されます。

8.5 列挙の作成

列挙を使用して、同じタイプの値からなるコレクションをモデル化できます。列挙によって、コンパイル時に特定の引数の値を確認および制限し、実行時のバグおよびエラーを回避できます。

列挙の名前を入力すると、単純式エディタの自動完了機能によって、使用可能な属性とそれらの値のリストが表示されます。このリストから、使用する属性を選択できます。

8.5.1 列挙の作成方法

列挙を作成すると、値からなるコレクションをモデル化できます。

列挙を作成する手順は次のとおりです。

  1. 「プロジェクト・ナビゲータ」ツリーで、「ビジネス・カタログ」ノードを右クリックします。
  2. 「新規」を選択します。
  3. 「列挙」を選択します。

    「列挙の作成」ダイアログ・ボックスが表示されます。

  4. 列挙を識別する名前を入力します。
  5. 「宛先モジュール」フィールドの横にある「検索」ボタンをクリックし、列挙を格納するモジュールを選択します。

    新しいモジュールを作成するには、「宛先モジュール」フィールドにその名前を入力するか、「検索」ダイアログ・ボックスからそれを作成します。

  6. 「タイプ」リストから、列挙のタイプを選択します。

    使用可能なタイプは次のとおりです。

    • 文字列

    • 整数

    • 倍精度浮動小数点

    • 小数

    • ブール

    各タイプから1つの列挙のみ追加できます。

  7. 「OK」をクリックします。

    列挙エディタが表示されます。

  8. 列挙に属性を追加します。

    詳細は、「列挙への属性の追加方法」を参照してください。

8.5.2 列挙への属性の追加方法

列挙を作成した後、モデル化しているコレクションの一部となる属性を追加し、それらに値を割り当てる必要があります。

列挙に属性を追加する手順は次のとおりです。

  1. 列挙を編集します。
  2. 「列挙」エディタで「アイテム」モジュールを開きます。
  3. 追加」ボタンをクリックします。

    アイテムの作成ダイアログ・ボックスが表示されます。

  4. 属性を識別する名前を入力します。

    名前は、属性ごとに一意であり、Java予約語でなく、数字で始まり、空白も特殊文字も含まれていない必要があります。

  5. 属性の値を入力します。
  6. 「OK」をクリックします。

    新しい属性が列挙エディタに表示されます。

  7. 必要に応じて、「ドキュメント」ラベルの横にある「編集」ボタンをクリックし、属性を説明するドキュメントを追加します。

8.5.3 単純式での列挙の使用方法

次のサンプル・コードは、単純式での列挙の使用方法を示しています。例の中の列挙は、色のコレクションです。例の中のコードは、red属性の値(その色を表す16進RGB形式の文字列)にアクセスします。

例8-1 単純式での列挙の使用方法

Module.Color.red