Oracle® Fusion Middleware Oracle Business Process Managementモデリングおよび実装ガイド 11g リリース1 (11.1.1.7) B61409-07 |
|
前 |
次 |
この章では、シミュレーションを使用して、指定の条件でのビジネス・プロセスの動作を予測する方法、出力がメトリックの目標に合致しているかを検証する方法、およびボトルネックを特定する方法について説明します。ここでは、シミュレーションを実行して、既存のプロセス設計に対する変更の影響をテストする方法についても説明します。
この章の内容は次のとおりです。
シミュレーションを定義した後は、Oracle BPMでシミュレーションを実行して、その定義の効率性を判断します。シミュレーションで実際のデータまたは予測されるデータを反映できます。
Oracle BPMのシミュレーション機能を使用すると、次のことができます。
様々な条件を分析できるように、特定のプロセスに対して複数のモデルを定義します。
異なるビジネス・プロセスでの処理が、参加者などの共有リソースに与える影響を知るために、マルチプロセス・シミュレーションを実行します。
シミュレーションを実行する前に、プロセスの各要素の動作を指定する必要があります。シミュレーションを定義するには、BPMプロジェクトで次の要素を作成して構成する必要があります。
シミュレーション・モデル
個々のプロセス・モデルの動作を定義できます。いずれのプロセス・モデルにも複数のシミュレーション・モデルを作成できるため、多様なシナリオを模倣できます。
シミュレーション定義
シミュレーション・シナリオを定義するプロセスおよびリソースを定義できます。シミュレーション定義では、プロセスに関連付けられたシミュレーション・モデルを選択して、シミュレーションに参加するプロセスを指定します。1つのプロセスに複数のシミュレーション・モデルが定義されている場合もあります。プロセスに複数のシミュレーション・モデルが定義されている場合は、それらのモデルのうちの1つを選択して、シミュレーション定義で使用する必要があります。
シミュレーションは、プロセス内の個々のタスクをコールしません。たとえば、シミュレーションはサービス・タスクに関連付けられているサービスを実行せず、変数に値は割り当てられず、外部リソースは更新されません。
ただし、シミュレーションは、シミュレーション・エディタを使用して定義できる次のシミュレーション変数を使用してアクティビティの動作を模倣します。
期間
リソース
コスト
キュー情報
送信フローを通過するインスタンスの確率
シミュレーション・モデルを使用すると、個々のプロセスの動作をシミュレートできます。シミュレーション定義の一部としてプロセスの動作を指定できます。
各プロセスに複数のシミュレーション・モデルを定義し、リソース割当てとアクティビティ動作の様々な組合せに基づいて様々なシミュレーションを作成できます。
シミュレーション・ウィザードを使用してプロセスに基づいたシミュレーション・モデルを作成することも、最初から作成することもできます。
ビジネス・プロセスからシミュレーション・モデルを作成するには:
BPMプロジェクト・ナビゲータで、「プロセス」ノードを展開します。
シミュレーションに使用するビジネス・プロセスを右クリックします。
「新規シミュレーション」を選択してから、「ウィザード」を選択します。
シミュレーション・ウィザードが表示されます。
シミュレーション・モデルを識別するための名前を入力します。
作成するインスタンスの数を制限する場合は、「作成するプロセス・インスタンスの数を指定してください」を選択してから、下のフィールドを使用してインスタンスの数を指定します。
「ユーザー・タスク」セクションで、分布、固定リソースおよび固定ベースのコストをカスタマイズします。
「次へ」をクリックします。
シミュレーション定義ウィザードが表示されます。
シミュレーション定義の名前を入力します。
シミュレーションの期間を入力します。
矢印ボタンを使用して開始時間を選択するか、「開始時間」フィールドの隣にある「カレンダ」ボタンをクリックします。
すべてのインスタンスの完了を待機してから終了するシミュレーションを構成するには、「シミュレーションが終了する前に実行中のインスタンスを完了」を選択します。
「次へ」をクリックします。
シミュレーションの作成後に実行するアクションを選択します。
使用可能なオプションは次のとおりです。
シミュレーション・モデルを開く
シミュレーション定義を開く
シミュレーションの開始
「終了」をクリックします。
シミュレーション・モデルを作成および構成するには:
BPMプロジェクト・ナビゲータで、「シミュレーション」ノードを展開します。
「シミュレーション・モデル」ノードを右クリックします。
「新規シミュレーション・モデル」を選択します。
「シミュレーション・モデルの作成」ダイアログ・ボックスが表示されます。
プロセスを選択します。
シミュレーション・モデルの名前を入力します。
「OK」をクリックします。
シミュレーションモデルがBPMプロジェクト・ナビゲータの「シミュレーション・モデル」ノードの下に表示され、シミュレーション・モデル・エディタが開きます。
シミュレーション中に作成するインスタンスの数を指定します。
「作成するプロセス・インスタンスの数を指定してください」を選択します。
シミュレーション中に作成するインスタンスの数を指定します。
注意: 指定した期間が終了するまで、またはインスタンスの最大数に達するまで、プロセス・シミュレーションが実行されます。 |
「フロー・ノード」ツリーで、アクティビティを選択します。
選択したアクティビティのタイプに応じて、「フロー・ノード」ツリーの右側に次のタブ・ページが表示されます。
期間: アクティビティの完了に必要な時間を決定する分布を定義します。
リソース: 特定のロールに割り当てられた参加者の数を指定します。このパラメータは、シミュレーション・モデル内で定義することも、プロジェクト・シミュレーション定義内でグローバル・プロジェクト・レベルで定義することもできます。
コスト: アクティビティの処理コストを指定します。ユーザー・タスクの場合は、ユーザー・タスクに割り当てられるリソースのコストも指定します。1時間当たりの給与で測定されます。
キュー情報: 特定のアクティビティに対してプロセス・インスタンスがキューに格納されるシミュレーション動作を定義します。
送信フロー: 様々な送信シーケンス・フローを通過するインスタンスの確率を決定します。
スレッド: このフロー・オブジェクトを実行するスレッドの数を指定します。このタブは、ユーザーの相互作用を伴わないフロー・オブジェクトでのみ使用可能です。
インスタンス作成: シミュレーション用にインスタンスを作成するときに使用する分布カーブを指定できます。このタブは、開始イベントでのみ使用可能です。
各アクティビティを次のように構成します。
「期間」ページの「インスタンス実行期間」セクションで、「分布タイプ」を指定します。表7-1にオプションを示します。
表7-1 シミュレーション・モデルの「フロー・ノード」の「期間」ページのオプション
オプション | 説明 |
---|---|
定数 |
シミュレーション・モデルが期間プロパティに指定された値を使用して、プロセス内のすべてのアクティビティの完了時間を算出するように指定します。 |
均一 |
アクティビティの完了に必要な期間を、常に「差異」プロパティで指定した差異を考慮して決定します。このオプションを選択した場合は、次の各オプションを指定するように要求されます。
|
指数 |
特定期間内に完了するインスタンス数を指定することにより、シミュレーション・アクティビティの完了までの時間を決定します。このオプションを選択した場合は、次のオプションを指定するように要求されます。
|
標準 |
ガウス・ベル分布を使用して、シミュレーション・アクティビティの完了までの時間を決定します。平均分布と標準分布を指定する必要があります。このオプションを選択した場合は、次のオプションを指定するように要求されます。
|
実数 |
特定の時間間隔についてシミュレーション・アクティビティを完了するために必要な時間を指定できます。このオプションを選択した場合は、次のオプションを指定する必要があります。
|
「コスト」ページで、次のプロパティを指定します。
「キュー情報」ページの「キュー警告サイズ」フィールドに、アクティビティを同時に待機できる受信インスタンスの数を指定します。
「送信フロー」ページで、スライダを移動して各送信シーケンス・フローの発生確率を指定します。
アクティビティが境界イベントを含む場合、境界イベントのフローはこのページに表示されます。構成する境界イベントの詳細は、7.3項「境界イベントの構成」を参照してください。
シミュレートするBPMNプロセスに境界イベントが含まれている場合、これらのイベントの発生確率を指定する必要があります。
「送信フロー」ページで様々な境界イベントの確率を指定できます。
境界イベントの確率を指定する方法は、イベントのタイプに応じて異なります。
連続しない境界メッセージおよびエラー・イベント
アクティビティのすべての連続しない境界メッセージおよびエラー・イベントの確率には、関連性があります。これらの確率を追加する場合、結果は常に1である必要があります。
シミュレーション・モデル・エディタには、これらのアクティビティを構成するためのスライダのセットが表示されます。スライダを移動すると、他のスライダの値が自動的に調整されます。スライダの横にあるロック・アイコンをクリックすると、値をロックできます。値がロックされると、他のスライダを移動しても、シミュレーション・モデル・エディタはその値を変更しません。シミュレーション・モデル・エディタでは、2つ以上の値がロック解除された状態になるようになっています。
連続する境界メッセージおよびエラー・イベント
連続する境界メッセージ・イベントまたはエラー・イベントの確率は、他のイベントの発生確率から独立しています。この確率のこの値は、0から1の間で変化します。
シミュレーション・モデル・エディタには、連続する境界メッセージまたはエラー・イベントごとにスライダが表示されます。このスライダを移動して、0から1の間の任意の値を指定できます。
タイマー・イベント
境界タイマー・イベントの確率を指定するには、イベント発生の時間間隔を定義する必要があります。BPMNプロセスでのタイマー・イベントの実装に式を使用する場合、シミュレーション中に使用する固定の時間間隔を定義する必要があります。BPMNプロセスでのタイマー・イベントの実装に固定の時間間隔を使用する場合は、シミュレーション用のBPMNプロセスで定義した間隔を使用できるため、時間間隔の再定義は必要に応じて行います。
シミュレーション・モデル・エディタには、連続しないタイマー・イベント用の表と、連続するタイマー・イベント用のもう1つの表が表示されます。これらの表を使用して各イベントの時間間隔を再定義できます。
図7-1は、各種の境界イベントを持つ見積の承認ユーザー・タスクを示しています。図7-2は、見積の承認ユーザー・タスクのシミュレーション構成ページを示しています。
シミュレーション定義を作成して、シミュレーション・モデルのグループのためのシミュレーション・シナリオを表すことができます。シミュレーション定義に含まれているシミュレーション・モデルのグループから実行するシミュレーション・モデルを選択できます。
シミュレーション・ウィザードを使用してシミュレーション・モデルを作成した後で、シミュレーション定義を作成することもできます。シミュレーション・ウィザードを使用してシミュレーション・モデルおよびシミュレーション定義を作成する方法の詳細は、7.2.1項「ビジネス・プロセスからシミュレーション・モデルを作成する方法」を参照してください。
シミュレーション定義で次のパラメータをカスタマイズして、それがプロジェクトのパフォーマンスにどのように影響するかを確認できます。
シミュレーションの開始時間および期間
プロジェクト・シミュレーションに含めるプロセス・シミュレーション・モデル、シミュレーションに含める参加者リソース
シミュレーション定義を作成および構成するには:
BPMプロジェクト・ナビゲータで、「シミュレーション」ノードを展開します。
「シミュレーション定義」ノードを右クリックします。
「新規シミュレーション」を選択します。
「シミュレーション定義の作成」ダイアログ・ボックスが表示されます。
シミュレーション定義の名前を入力します。
「OK」をクリックします。
シミュレーション定義は「シミュレーション定義」ノードの下に表示され、シミュレーション定義エディタが開きます。図7-3は、シミュレーション定義エディタを示しています。
表7-3で説明されているように、このシミュレーションの一般的なパラメータを指定します。
表7-3 シミュレーション定義の一般的なパラメータ
パラメータ | 説明 |
---|---|
開始時間 |
シミュレーションの開始時間を定義します。この時間はロギングにのみ使用されます。スケジュール目的では使用されません。 |
期間 |
シミュレーションの実行期間を定義します。この間隔は、月単位、日単位、時間単位、分単位および秒単位で指定します。 |
シミュレーションが終了する前に実行中のインスタンスを完了 |
これを選択した場合、シミュレーションは、指定された数のインスタンスの完了後に終了します。これを選択しない場合、シミュレーションはシミュレーション期間が経過すると停止します。その時点で完了していないインスタンスはすべて「処理中」または「キュー」ステータスで表示されます。 |
「プロジェクト」ページには、現在のプロジェクト内のすべてのプロセスがリストされた表が含まれます。プロセスごとに、使用するシミュレーション・モデルを選択できます。また、シミュレーションに含めるプロセスを指定する必要があります。
「プロジェクト」ページで、表7-4で説明されているようにパラメータを指定します。
表7-4 シミュレーション定義の「プロジェクト」のパラメータ
パラメータ | 説明 |
---|---|
プロセス |
このシミュレーションに含めることができるプロセスがリストされます。 |
モデル |
プロセスごとに、7.2.2項「シミュレーション・モデルを作成および構成する方法」で指定したモデルがリストされます。 |
シミュレーションを含む |
プロセスをシミュレーションに含めるかどうかを指定できます。 |
「プロジェクト」ページでパラメータを指定した後、「リソース」タブを選択します。
「リソース」ページに、シミュレーション内で使用するリソースを定義できます。
シミュレーションに含まれるすべてのプロセスが、これらのリソースを共有します。各リソースのコストは、時間単位で定義されます。
リソースを定義するには、次のボタンをクリックします。
「リソースの追加」: リソースをシミュレーション定義に追加します。
リソースの削除: 選択したリソースをシミュレーション定義から削除します。
図7-4は、「リソース」ページの例を示しています。
「保存」をクリックします。
注意: シミュレーションを実行する前に変更を保存したことを確認します。変更を保存していない場合、シミュレーション・エンジンはシミュレーション実行時にその変更内容を使用しません。 |
シミュレーションを一時停止、停止、または最後まで実行することができます。シミュレーションを停止した場合は、最初から再開する必要があります。
シミュレーションを実行するには、シミュレーション・モデルおよび1つ以上のシミュレーション定義を事前に作成しておく必要があります。
シミュレーションを実行するには:
BPMプロジェクト・ナビゲータで:
「シミュレーション」ビューを開きます。
「シミュレーション」リストで、実行するシミュレーション定義を選択します。
「シミュレーションの実行」をクリックします。
シミュレーションが開始されます。
プロジェクト・エディタにシミュレーションのアニメーションが表示され、指定した内容に応じて結果が「シミュレーション」ページに表示されます。
注意: チャートのカラム上にマウス・ポインタを置くと、アクティビティまたはインジケータの値を示すツールチップが表示されます。 |
「シミュレーション」ビューでは、シミュレーションを構成して実行できます。図7-5は、「シミュレーション」ビューを示しています。
「シミュレーション」ビューのツールバーでは、次の操作を実行できます。
「シミュレーション」リストから、実行するシミュレーションを選択します。
適切なボタンをクリックすることにより、シミュレーションを開始、停止、一時停止、または最後まで実行します。シミュレーションを最後まで実行するように選択した場合、シミュレーションはアニメーションなしでバックグラウンドで実行され、より高速でシミュレーションを実行できます。
注意: シミュレーションを停止した場合は、最初から再開する必要があります。 |
「スピード」リストから、シミュレーションの実行スピードを選択します。通常のスピードでは、インスタンスは毎秒1つ作成されます。
「チャート」タブのツールバーでは次が可能です。
結果を表示するグラフィック・タイプの変更
ドリルアップおよびドリルダウン
フォントサイズの拡大/縮小
「シミュレーション」ウィンドウで「チャート」タブまたは「ログ」タブをクリックして、シミュレーション結果をチャートまたはログ・ファイルとして表示できます。
「ログ」タブには、シミュレーションされたプロセスのすべてのインスタンスの動作を追跡するログが表示されます。ログの各行には、次の情報が示されます。
日付と時間
プロセス
インスタンス
インスタンスのパス
「チャート」タブでは、シミュレーションの結果を表示するチャートのタイプを選択できます。このチャートは、監視するリソースが表示されるように構成できます。チャートがリソースの使用状況の測定に使用する単位を選択することもできます。
「チャート」タブでは、次を構成することによってシミュレーションの結果のチャートを表示する方法を構成できます。
チャートのタイプ
監視するアクティビティまたはリソース
インジケータ
図7-6は、サンプルの「チャート」ページのツールバーを示しています。
チャートを使用してシミュレーションの結果を分析するには:
「チャート」タブの下のリストから、表示するチャートのタイプを選択します。
使用可能なタイプを次に示します。
列
棒
棒3D
カラム3D
表
「チャート」タブの右側にある「構成」アイコンをクリックします。
「構成」ダイアログ・ボックスが表示されます。
監視するリソースまたはアクティビティを選択します。
アクティビティまたはリソースを表示する軸を選択します。
「表示」リストの下のリストから、シミュレーションで監視するアクティビティまたはリソースを選択します。
「インジケータ」リストから、監視するインジケータのタイプを選択します。
インジケータの使用可能なタイプは、次のとおりです。
コスト
時間
単位
インジケータ・リストの下のリストから、監視するインジケータを選択します。
チャートには、選択した変数とインジケータが表示されます。
「閉じる」をクリックします。
必要に応じて、「タイプ」リストの横にあるドリル・アップおよびドリル・ダウンのアイコンをクリックして、チャートの詳細レベルを増減します。
シミュレーションの結果を含むシミュレーション・レポートを生成できます。
シミュレーション・レポートを生成するには:
シミュレーションを実行します。
シミュレーションを実行する方法の詳細は、7.5.1項「シミュレーションを実行する方法」を参照してください。
「ドキュメントの生成」アイコンをクリックします。
「シミュレーション・レポート」ダイアログ・ボックスが表示されます。
「ディレクトリの場所」フィールドに、レポートを格納するディレクトリを入力するか、横にあるボタンをクリックしてファイル・システムを参照してディレクトリを選択します。
「レポートのパーツ」表の「名前」列にあるレポート名を編集します。
複数のレポートを生成する場合は、「追加」ボタンをクリックして新しいレポートのパーツを追加します。
「アクティビティ」タブで、オプションを選択します。
サマリー
詳細
下のツリーで、レポートで含めるアクティビティを選択します。
次のオプションを使用して、含めるアクティビティを指定できます。
「すべて」を選択して、シミュレーション定義にすべてのプロセスを含めます。
プロセスを選択して、選択されたプロセス内のすべてのアクティビティを含めます。
含めるアクティビティを個別に選択します。
インジケータ・タブで、オプションを選択します。
サマリー
詳細
下のツリーで、レポートで含めるインジケータを選択します。
レポートに表示するインジケータを個別に選択することも、インジケータのタイプを選択してそのタイプのインジケータすべてを表示することもできます。
レポートで使用するグラフィックのタイプを選択します。
プレビューには、選択したグラフィックの例が表示されます。
「OK」をクリックします。