第6章 プロセスのモデリング

6.1. 便利な定義

本項を読んで、本書全体で使用される用語について学びましょう。
プロセス定義は、ビジネスプロセスの形式仕様を表したもので、 有向グラフに基づいています。 そのグラフは、ノードと遷移で構成されています。グラフ内の全てのノードは、 特定のタイプを持っています。 ノードのタイプはランタイムの動作を定義します。 プロセス定義は、 開始状態を 1 つのみ持っています。
トークンは実行パスです。 トークンは、グラフ中でノードへのポインターを維持するランタイムの概念です。
プロセスインスタンスとは、ひとつのプロセス定義の実行です。 プロセスインスタンスが作成される時、 実行のメインパスのトークンも作成されます。 このトークンは、プロセスインスタンスのルートトークンと呼ばれ、 プロセス定義の開始状態に位置しています。
シグナルがトークンに、グラフ実行の継続を指示します。 名前のないシグナルを受け取った場合、 トークンは、デフォルト退場遷移で、その時に位置していたノードを退場します。 遷移名がシグナル上で、指定されている場合、 指定されている遷移で、その時のノードを退場します。 プロセスインスタンスに与えられたシグナルは、ルートトークンに委譲されます。
トークンがノードに入場後、そのノードは実行されます。 ノード自身はグラフ実行の継続の責務があります。トークンをノードから退場させることで、グラフ実行の継続が行われます。 各ノードタイプは、グラフ実行のための異なる動作を実装することもできます。 実行を渡さないノードは、状態として振る舞います。
アクション は、実行プロセスの中で、 イベント上で実行される Java コードの一部です。 グラフは、ソフトウェア要件を伝達する重要な道具です。 しかし、 グラフは、作成されるソフトウェアの単なるビュー (投影) にすぎず、 多くの技術的な詳細を隠します。 アクションは、グラフ表現とは別に、技術的な詳細を追加するメカニズムです。 グラフが導入されると、アクションを付け足すことが可能です。 主なイベントタイプは、 entering a nodeleaving a nodetaking a transition です。
定義について理解いただけたと思います。 次にプロセスモデリングの仕組みについて説明します。