ワークフローパターンとは、業務フロー図の形状や、タスクのステータス分類などについて、 分類されたもの。
目次 |
ワークフローパターンの概要
ワークフローパターンとは、 W.M.P. van der Aalst(W.ファンデルアールスト)、A.H.M. ter Hofstede(A.ターホフステード)、N. Russell(N.ラッセル)など、 アイントホーフェン工科大学(オランダ)、 クイーンズランド工科大学(オーストラリア)らの研究チームが、 2002年以降発表し続けているワークフロー分類研究。 プログラマ視点ではなく、ビジネスマン視点でパターン分析している点で特徴がある。
2003年に「Distributed and Parallel Databases(分散並立データベース)」誌に掲載された「Workflow Patterns」以降、 「業務フロー図の形状分類」を中心に様々なパターン研究が行われている。
- 「Control-Flow Patterns」: 業務フロー図の形状分類
- 「Data Patterns」: データ保持受渡に関する分類
- 「Resource Patterns」: 割当タスクの処理ステータス等に関する分類
- 「Exception Handling Patterns」: 中断や断念などの例外対応に関する分類
コントロールフロー(業務フロー図の形状)は、2002年の論文では20パターンであったが、 その後の研究を経て2006年の論文では、43パターンに増加されている。
沿革
- 2003年: Workflow Patterns (PDF:70p)
- 2004年: Workflow Data Patterns (PDF:75p)
- 2004年: Workflow Resource Patterns (PDF:73p)
- 2006年: Workflow Control-Flow Patterns : A Revised View (PDF:134p)
- 2006年: Exception Handling Patterns in Process-Aware Information Systems (PDF:29p)
2003年発表のコントロールフローパターン
単純な「順列(Sequence)」や「並列処理(Parallel Split)」から、 「任意のループ(Arbitrary Cycles)」や「非同期のマルチインスタンス(非同期なマルチインスタンス)」など、 様々なパターンが存在する。構造化されているか否か、等の区別はない。
Basic Control Flow Patterns
- Pattern 1 Sequence
- Pattern 2 Parallel Split
- Pattern 3 Synchronization
- Pattern 4 Exclusive Choice
- Pattern 5 Simple Merge
Advanced Branching and Synchronization Patterns
- Pattern 6 Multi-choice
- Pattern 7 Synchronizing Merge
- Pattern 8 Multi-merge
- Pattern 9 Discriminator
Structural Patterns
- Pattern 10 Arbitrary Cycles
- Pattern 11 Implicit Termination
Patterns involving Multiple Instances
- Pattern 12 Multiple Instances Without Synchronization
- Pattern 13 Multiple Instances With a Priori Design Time Knowledge
- Pattern 14 Multiple Instances With a Priori Runtime Knowledge
- Pattern 15 Multiple Instances Without a Priori Runtime Knowledge
State-based Patterns
- Pattern 16 Deferred Choice
- Pattern 17 Interleaved Parallel Routing
- Pattern 18 Milestone
Cancellation Patterns
- Pattern 19 Cancel Activity
- Pattern 20 Cancel Case
2006年発表のコントロールフローパターン
2003年に発表された20パターンに加えて、 「構造化ループ(Structured Loop)」や「非環状同期マージ(Acyclic Synchronizing Merge)」など、 多種多様な23パターンが追加定義された。
Basic Control-flow patterns
- WCP1: Sequence
- WCP2: Parallel Split
- WCP3: Synchronization
- WCP4: Exclusive Choice
- WCP5: Simple Merge
Advanced Branching and Synchronization Patterns
- WCP6: Multi-Choice
- WCP7: Structured Synchronizing Merge
- WCP37: Acyclic Synchronized Merge
- WCP8: Multi-Merge
- WCP9: Structured Discriminator
- WCP28: Blocking Discriminator
Structural Patterns
- WCP10: Arbitrary Cycles
- WCP21: Structured Loop
- WCP22: Recursion
- WCP11: Implicit Termination
- WCP43: Explicit Termination
Multiple Instance Patterns
- WCP12: Multiple Instance without Synchronization
- WCP13: Multiple Instances with a priori Design-Time Knowledge
- WCP14: Multiple Instances with a priori Run-Time Knowledge
- WCP15: Multiple instances without a priori run-time knowledge
State-based Patterns
- WCP16: Deferred Choice
- WCP17: Interleaved Parallel Routing
- WCP40: Interleaved Routing
- WCP18: Milestone
Cancellation Patterns
- WCP19: Cancel Activity
- WCP20: Cancel Case
New Control-Flow Patterns
- WCP-21 Structured Loop
- WCP-22 Recursion
- WCP-23 Transient Trigger
- WCP-24 Persistent Trigger
- WCP-25 Cancel Region
- WCP-26 Cancel Multiple Instance Activity
- WCP-27 Complete Multiple Instance Activity
- WCP-28 Blocking Discriminator
- WCP-29 Cancelling Discriminator
- WCP-30 Structured Partial Join
- WCP-31 Blocking Partial Join
- WCP-32 Cancelling Partial Join
- WCP-33 Generalized AND-Join
- WCP-34 Static Partial Join for Multiple Instances
- WCP-35 Cancelling Partial Join for Multiple Instances
- WCP-36 Dynamic Partial Join for Multiple Instances
- WCP-37 Acyclic Synchronizing Merge
- WCP-38 General Synchronizing Merge
- WCP-39 Critical Section
- WCP-40 Interleaved Routing
- WCP-41 Thread Merge
- WCP-42 Thread Split
- WCP-43 Explicit Termination
関連事項
参考文献
- WorkflowPatterns.com
- 詳説 ビジネスモデリング―SOAベストプラクティス(オライリー・ジャパン刊)




