以下のクラスが、ワークフロー管理システムの主なコンポーネントです。
レジストリ -
複数のプロセスおよびアクティビティの静的な記述を格納するコレクション。String型のキーを使って格納・取り出しが可能です。
プロセス - ツリー状になったビジネスアクティビティの静的な記述。しばしば別々の個人(もしくはアプリケーションシステム)によって、ネストした形で実行されます。
アクティビティ - 連続したステップの静的な記述。一般に単独の個人(もしくはアプリケーションシステム)によって、適度に短い時間内に実行されます。
ステップ - 個々のタスクの静的な記述。独立し、分割不可能な最小単位として実行されます。ステップは、ループや条件処理で使えるように、他のステップ内でネストすることもできます。(任意のJavaオブジェクトの任意のメソッドの実行といったパワフルな機能を含む)豊富なビルトイン・ステップが提供されなければなりませんし、一連のサポートされたステップの実装を拡張するメカニズムによって、自由に拡張が可能になります。
コンテキスト - アクティビティ(あるいはネストした1組のアクティビティ)全体としての動的な処理状態。他のステップで作成されたJavaBeansや他のステップで利用するJavaBeansのための記憶領域の準備を含みます。ステップの実行はコンテキストに記録されるので、アクティビティの処理を中断したり後で再開することができます。
スコープ - String型のキーによって任意のJavaオブジェクトの格納・取り出しができるMapです。
コンテキストは多くの個別のスコープをサポートします。各スコープはアプリケーションロジックからプラグイン可能であり、既存のアプリケーションの機能に統合できます。例えば、Webアプリケーションの実装において、スコープは一般に、Servlet APIによって提供されるような、リクエスト属性、セッション属性、サーブレットコンテキスト属性に直接マッピングされるでしょう。