ワークフローの設計
ワークフローは、反復可能なビジネス・プロセスを表すことができます。 ユーザーは、プロセス、関連するタスクなどのアクティビティー、それらの関係、および各タスクを実行するために必要な条件を定義する必要があります。
プロセスを設計したら、ワークフロー・パレットおよびツールで説明されているように、ワークフロー・ツール、つまりゲートウェイ、特定の条件、デフォルト・フロー、タスク、およびメッセージ宛先に関しての定義をします。
- ゲートウェイを使用している場合、例に示されているように、一般的に、同じゲートウェイで複数のパスを一緒に引いて操作を終了します。 これにより、ワークフローを続行する前に、ゲートウェイ間のさまざまなパスを完了することもできます。
- ワークフローは、約 15 個のコンポーネントに制限します。 インシデントは動的に変化する可能性があり、大規模または複雑なワークフローでは時間がかかり過ぎて、変化を逃す可能性があります。
- 単純で反復可能なプロセス用に小さなワークフローを作成し、その後、これらのワークフローを子ワークフローとして使用して、より複雑なワークフローを単純化します。 これは、ワークフローの相対的なサイズを制限するのに役立ちます。ただし、潜在的なメモリーやパフォーマンスの問題を防ぐために、ネストされたワークフローの深さを制限することをお勧めします。
- 可能ならば、確認応答を待機するよう構成されるメッセージ宛先の使用を制限します。 ワークフローは、メッセージ宛先に到達すると停止し、メッセージ宛先が確認応答を受信するまで待機してから続行します。 オプションで、特定の時間内に確認応答を受信しなかった場合にワークフローの別の部分に進むタイマー・イベントを追加できます。
- また、ワークフローは、手動タスクに到達すると停止し、ユーザーがタスクに完了のマークを付けるまで待機してから続行します。 また、手動タスクが特定の時間内に完了しない場合に代替タスクなどのワークフローの別の部分に進むタイマー・イベントを追加できます。
- (特に、繰り返しの非割り込みタイマーを使用する場合) タスクを閉じる際に多数のワークフロー・インスタンスがブロックされないようにタイマーを確認してください。 例えば、タスクが閉じられない場合に長期間 15 分ごとにタイマーを繰り返すことが望ましくないことがあります。その場合、繰り返しタイマーを限られた回数に設定します。
- ワークフローの関数を使用して、データ収集アクティビティーをリモートで実行し、結果をワークフローに戻します。
- ワークフローが自己文書化されるように、コンポーネントおよび接続に必ず注釈を付けてください。
以下に、ワークフローの単純な例をいくつか示します。
以下の例には、一緒に実行される 2 つのパスがあります。 4 つのタスク (A、B、C、および D) と 2 つの並列ゲートウェイがあります。 ルールがこのワークフローを呼び出すと、対応するインシデントにタスク A が追加されます。 その後、タスク B とタスク C の両方がインシデントに追加されます。 2 番目の並列ゲートウェイを使用して回路が完了されます。これが推奨される方法です。 タスク B とタスク C の両方が完了すると、タスク D がインシデントに追加されます。

以下に、「排他的ゲートウェイ」の例を示します。ここでは、1 つのパスのみをとることができます。 合計で 5 個のタスク (A から E) と 2 個の排他的ゲートウェイがあります。 ルールがこのワークフローを呼び出すと、対応するインシデントにタスク A が追加されます。 この例では、それにより、インシデントが発生した市区町村が判別されます。 タスク A の出力に応じて、タスク B、C、または D がインシデントに追加されます。 ゲートウェイにはタスク D へのデフォルト・フロー・コネクターがあるため、市区町村が「ボストン」でも「ケンブリッジ」でもない場合、ワークフローはデフォルトでタスク D に進みます。
2 番目の排他的ゲートウェイを使用して回路が完了されます。これは推奨される方法です。 B、C、または D が完了すると、タスク E がインシデントに追加されます。

以下に、「包括的ゲートウェイ」の例を示します。ここでは、多くのパスをとることができますが、とれるのは true のパスのみになります。 タスク A が完了し、州が (「ニューイングランド」地域にある)「バーモント」に等しいと、B と D の両方がインシデントに追加されます。 両方のタスクが完了すると、タスク E が追加されます。 タスク A からのロケーションが「ニューハンプシャー」でも「バーモント」でもない場合は、「地域はニューイングランド (Region is New England)」コネクターがデフォルト・フローになることに留意してください。

包括的ゲートウェイまたは排他的ゲートウェイの各例は、デフォルト・フロー・パスを指定しています。デフォルト・フロー・パスとは、ゲートウェイの出力に割り当てられているどの条件にも合致しない場合 (つまり、どのステートメントも true でない場合) に有効なパスです。 デフォルト・フロー・パスには、条件を設定することはできません。