状態遷移 - イラストレーション
プロセス、ステージ、およびアクティビティの状態遷移を理解するための簡単な例を使用してみましょう。
診断と治療という2つの段階で健康診断のプロセスを考えてみましょう。 これらのステージには、それぞれ次の図に示すように2つのアクティビティが含まれています:
次の表は、計画アイテムの追加の詳細を示しています:
| 計画アイテム | マーカーと条件 |
|---|---|
|
診断ステージ |
必須マーカーが有効になっています。 |
|
治療段階 |
必須マーカーと自動完了マーカーが有効になります。 さらに、前のステージが「完了」の後にのみこのステージがアクティブになるように指定するアクティブ化条件も定義されています。 |
|
試験活動を依頼 |
必須マーカーが有効になっています。 |
|
患者の活動を診断 |
必須および手動アクティベーション・マーカーがアクティブになっています。 さらに、リクエスト・アクティビティが「完了」である場合にのみ、このアクティビティが有効であることを指定する有効化条件も定義されています。 |
|
医学活動を規定 |
手動アクティベーション・マーカーはアクティブですが、アクティブ化条件は指定されていません。 ノート:必須マーカーは無効です。 |
|
一般的なアドバイス活動 |
必須マーカーが有効になっています。 |
プロセス参加者がアプリケーションを起動してプロセスをインスタンス化すると、次の一連の状態遷移が行われます:
-
プロセスは「アクティブ」状態に入り、両方のステージは状態「使用可能」に入ります。
-
診断ステージは手動で起動されておらず、起動条件もないため、すぐに「アクティブ」に変わります。 しかし、治療段階は、その活性化条件が満たされるまで、「使用可能」状態のままです。 これらの段階の活動は、以下の遷移を経る:
-
Request Examinationアクティビティは「使用可能」になります。その後、「アクティブ」が起動するための条件がないため、「アクティブ」がアクティブになります。
-
Diagnose Patientアクティビティは、その有効化条件が満たされるまで、「使用可能」状態のままです。
-
治療段階の下での両方の活動は、この時点ではインスタンス化されていません。
上記の遷移はすべて、プロセスがアクティブになるとすぐに同時に発生することに注意してください。 次の図は、実行中のこの時点でのプロセス・インスタンスとその計画アイテムの状態を示しています:
-
-
今、患者は必要な情報を提供し、リクエスト審査活動を完了します。
-
これは、診断患者活動の有効化条件を満たし、「有効」状態に移行します。
次の図は、診断ステージの現在の状態を示しています:
-
「有効」状態では、Diagnose Patientアクティビティは関連するプロセス参加者が手動でアクティブにするのを待機します。 この場合、開業医がこの活動を開始します。 開業医は、診断を行い、観察を記録し、活動を完了します。
-
その中の両方のアクティビティが「完了」である場合、診断ステージも「完了」状態になります。
-
これは治療段階の活性化条件を満たし、「アクティブ」となる。
-
その後、この段階での両方の活動が「使用可能」になります。
-
Prescribe Medicineアクティビティは、次に「有効」状態に入ります。 医師は、必要な場合にのみ、この活動を開始します。
-
ただし、General Adviceアクティビティは、その起動の条件がないため、「アクティブ」になります。
次の図は、実行中のこの時点でのプロセス・インスタンスとその計画アイテムの状態を示しています:
-
-
開業医が医薬品の使用を開始しないことを決定し、一般的なアドバイス活動のみを完了するこの治療シナリオを検討してください。
-
Prescribe Medicineアクティビティがまだ「有効」状態にあっても、治療段階は自動的に「完了」とマークされます。理由は次のとおりです:
-
ステージ内での活動は「アクティブ」ではありません。 さらに、必須とマークされたすべてのアクティビティは完了しています。 この場合、一般アドバイス・アクティビティは「完了」です。
-
この段階では自動完成マーカーが有効になります。
-
-
両方のステージが「完了」とマークされている場合、プロセスには「完了」もマークされます。
次の図は、プロセス・インスタンスとその計画アイテムの最終状態を示しています:




