YAWL - Tokyo 2008 - Petia Wohed

44
a university for the world real R © 2008, www.yawlgroup.org YAWL: Yet Another Workflow Language presented by Petia Wohed SU/KTH ももももももももももももももも ~~

description

YAWL - Yet Another Workflow Language - Petia Wohed (translated by Shigeaki Wakizaka)

Transcript of YAWL - Tokyo 2008 - Petia Wohed

Page 1: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

© 2008, www.yawlgroup.org

YAWL:Yet Another Workflow

Language

presented by

Petia Wohed

SU/KTH

~もうひとつのワークフロー言語~

Page 2: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

2© 2008, www.yawlgroup.com

Acknowledgement

• This presentation uses slides prepared by the following people:– Wil van der Aalst, TUE & QUT

– Michael Adams, QUT

– Lachlan Aldred, QUT

– Arthur ter Hofstede, QUT

– Massimiliano de Leoni, Università di Roma

– Chun Ouyang, QUT

– Marcello La Rosa, QUT

– Nick Russell, TUE

– Petia Wohed, SU/KTH

– Moe Wynn, QUT

以下の方々に確認いただいています

Page 3: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

3© 2008, www.yawlgroup.com

Agenda

• Introduction

• Workflow patterns

• YAWL concepts

• YAWL system

• Dynamic workflow & Exception handling

• Current and future activities

はじめに

ワークフローパターン

YAWL コンセプト

YAWL の仕組み

動的ワークフロー&例外ハンドリング

今とこれから

テーマ

Page 4: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

4© 2008, www.yawlgroup.com

Setting the scene –Workflow: What and Why?

• Support for coordination of humans and applications in performing business activities

• Explicit representation of control flow dependencies and resourcing strategies

• Benefits:– Improved efficiency (time, cost)– Compliance– Improved responsiveness

ワークフローって何?それでそうなるの?

業務の中の人とアプリケーションの協調をサポート

フローと人 / システムの割り当ての制御を明示的に表現

利点

効率化 ( 時間、コスト )

コンプライアンス

効率的な対応

Page 5: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

5© 2008, www.yawlgroup.com

Workflow Animation

Animation by Wil van der Aalst, Vincent Almering and Herman Wijbenga

ワークフローアニメーション

Page 6: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

6© 2008, www.yawlgroup.com

Problems in the field of Workflow/BPM

• Lack of commonly accepted conceptual foundations

• Lack of proper formal foundations (this despite the amount of buzz …)

• No lack of proposed standards …

• Tools are typically hard to use, expensive and not easily integrated

• Lack of support for processes that need to change on-the-fly

• Lack of proper support for exceptions

• Limited support for design time analysis (verification and validation)

• Resource perspective particularly underwhelming

• Insufficient support for inter-process communication

問題点

代表的な概念ファウンデーションの欠如

公式なファウンデーションの欠如

標準の欠如?

ツールが難しい、高い、連携が簡単ではない

実行時に変更されるプロセスが未対応

業務例外のサポートが未対応

プロセス設計時における verify と validate の制限

プロセス設計時における verify と validate の制限

プロセス間通信のサポートが不十分

Page 7: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

7© 2008, www.yawlgroup.com

Workflow Patterns Initiative

• Started in 1999, joint work TU/e and QUT

• Objectives:– Identification of workflow modelling scenarios and solutions

– Benchmarking• Commercial Workflow products (MQ/Series Workflow, Staffware, etc)

• Open Source Workflow products (jBPM, OpenWFE, Enhydra Shark)

• Proposed standards for web service composition (BPML, BPEL)

• Process modelling languages (UML, BPMN)

– Foundation for selecting workflow solutions

• Home Page: www.workflowpatterns.com

• Primary publication:– W.M.P. van der Aalst, A.H.M. ter Hofstede, B. Kiepuszewski, A.P. Barros, “Workflow

Patterns”, Distributed and Parallel Databases 14(3):5-51, 2003.

• Evaluations of commercial offerings, research prototypes, proposed standards for web service composition, etc

ワークフローパターンイニシアティブ

目的

ワークフローモデリングのシナリオと提案の確立

ワークフローでの提案を行なうファウンデーション

公刊

評価、調査 ( 提案された web サービスコンポジションなど )

Page 8: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

8© 2008, www.yawlgroup.com

Exception P:s

Exception handlingin a process

CAiSE’2006

N. RussellW. van der AalstA. ter Hofstede

Jun 2006

Control-flow P:s 43

- 23 new patterns - Formalised in CPN notation

TR

N. RussellA. ter HofstedeW. van der AalstN. Mulyar

Sep 2006

revised

Oct 2005

Data P:s - 40

N. RussellA. ter HofstedeD. EdmondW. van der Aalst

Data representationand handling in aprocess

ER’2005

Jun 2005

Resource P:s - 43

Resource definition & work distribution in a process

N. RussellW. van der AalstA. ter HofstedeD. Edmond

CAiSE’2005

The Workflow Patterns Framework

time

These perspectives follow S. Jablonski and C. Bussler’s classification from:Workflow Management: Modeling Concepts, Architecture, and Implementation. International Thomson Computer Press, 1996

Control-flow P:s 20

W. van der AalstA. ter HofstedeB. KiepuszewskiA. Barros

The ordering of activities in a process

2000

CoopIS’2000 DAPD’2003

2003

www.workflowpatterns.com

プロセス内のアクティビティの整理プロセス内のリソース定義と作業の分担プロセス内のデータ表現とハンドリング

コントロールフローパターン リソースパターン データパターン

新コントロールフローパターン

23 の新パターンと CPN 記述

ワークフローパターンフレームワーク

Page 9: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

9© 2008, www.yawlgroup.com

The Workflow Patterns Framework

EvaluatIons

Control-flow P:s 20

2000 2003

XPDL, BPEL4WS, BPML, WSFL, XLANG, WSCI, UML AD 1.4 UML AD 2.0, BPMN

COSAFLOWer Eastman MeteorMobileI-Flow Staffware InConcert

Domino WorkflowVisual WorkflowForte Conductor MQSeries/Workflow SAR R/3 Workflow Verve WorkflowChangengine

Jun 2005

Resource P:s - 43

BPEL4WS UML AD 2.0BPMN

Staffware WebSphere MQFLOWerCOSAiPlanetjBPMOpenWFEEnhydra Shark

XPDL, BPEL4WSUML AD 2.0, BPMN

StaffwareMQSeriesFLOWerCOSAjBPMOpenWFEEnhydra Shark

Data P:s - 40

Oct 2005

Exception P:s

Staffware WebSphere MQFLOWerCOSAiPlanet

XPDL 2.0,BPEL4WS 1.1, BPMN

time

L a n g u a g e D e v e l o p m e n t: YAWL/newYAWL

評価

ワークフローパターンフレームワーク

Page 10: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

13© 2008, www.yawlgroup.com

The New Control-flow Patterns

• Multiple Instances (MI) Patternsdelineate situations with multiple threads of execution in a workflow which relate to the same activity.

• State-based Patternsreflect situations which are most easily modelled in WF languages with an explicit notion of state.

• Cancellation Patternscategorise the various cancellation scenarios that may be relevant for a workflow specification.

• Trigger Patternscatalogue the different triggering mechanisms appearing in a process context.

• Basic Control-flow Patterns

capture elementary aspects of control-flow (similar to the concepts provided by the WFMC).

• Advanced Branching andSynchronization Patternsdescribe more complex branching and synchronization scenarios.

• Iteration Patternsdescribe various ways in which iteration may be specified.

• Termination Patternsaddress the issue of when the execution of a workflow is considered to be finished.

新コントロールフローパターン

基本パターン

応用分岐パターン

繰り返しパターン

終了パターン

コントロールフローの基本パターン . Wfmc 版に類似

より複雑な分岐、同期のパターンを説明

繰り返し制御が現れる複数のパターンを説明

ワークフローが終了する状態の問題について言及

複数インスタンスパターン

同一アクティビティでのマルチスレッドの描写

明確なフローの状態についての記述

状態ベースパターン

ワークフロー仕様に関連あるキャンセルパターンを分類化

キャンセルパターン

プロセス上で発生しうる様々なトリガー ( プロセスを進める ) のカタログ化

トリガーパターン

Page 11: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

15© 2008, www.yawlgroup.com

A (Very) Complex CF Pattern:The General OR-Join

• Basically: Wait only if you have to

• Problems:– How should you treat other OR-joins?

– How do you deal with cycles?

– How do you treat decomposed tasks?

– Is an analysis of the future possible? How complex will it be?

(for a detailed discussion see [WEAH05] and work by Kindler et al)

Advanced: 38

© Y

AW

L F

ou

nd

atio

n

複雑パターン :OR-Join

“ しなければいけないときのみ待て”

・他の OR-joins をどう扱うべきか?・フローサイクルとどう扱うか?・他タスクとの関連はどう扱うべきか?・未来予測 / 分析は可能?どれだけ複雑?

詳細は WEAH05 の議論を参照

Page 12: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

16© 2008, www.yawlgroup.com

Non-local semantics of Gen. OR-Join ("bus driver semantics")

Not only in EPCs but also in many

WFM systems: Domino Workflow,

Eastman, MQ Series, etc.

Advanced: 38

Click here for a FLASH animation of General OR-Join

ノンローカルな OR-Join

EPCs だけでなくたくさんのWFMS でも同様です

Page 13: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

21© 2008, www.yawlgroup.com

Workflow Resource Patterns

• Focus on the manner in which work is offered to, allocated to and managed by workflow participants

• Consider both the system and resource perspectives

• Assume the existence of a process model and related organisational model

• Take into account differing workflow paradigms:

– richness of process model (esp. allocation directives)– autonomy of resources– alternate routing mechanisms– work management facilities

ワークフローリソースパターン

ワークフロー参加者による作業の指示、人 / システムの割り当て、管理などの作法に焦点を当てています

システムとリソースの両面で考えます

プロセス、関連している組織が既に存在していることを仮定しています

異なるワークフローパラダイムを取り入れます

リッチプロセスモデル

リソースの自律

ルーティングメカニズムの代替

作業管理ファシリティ

Page 14: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

22© 2008, www.yawlgroup.com

Resource Patterns Classes

• Creation patterns: design-time work allocation directives

• Push patterns: workflow system proactively distributes work items

• Pull patterns: resources proactively identify and commit to work items

• Detour patterns: re-routing of work items

• Auto-start patterns: automated commencement

• Visibility patterns: observability of workflow activities

• Multiple resource patterns: work allocation involving multiple participants or resources

Click here for a FLASH animation of Delegation Pattern

リソースパターン分類

生成パターン:設計時でのリソース割り当て

プッシュパターン:ワークフローシステムが積極的に作業を提供

プルパターン:リソース(人など)が積極的に作業をコミットする

回り道パターン:作業の流れを変える

自動スタートパターン:自動開始のパターン

可視化パターン:作業の監視性

複数リソースパターン:複数リソースにまたがる作業の割り当て

Page 15: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

23© 2008, www.yawlgroup.com

Work Item Lifecycle

created

offered to a single resource

offered tomultiple

resources

allocatedto a singleresource

suspended

failed

started completed

R:allocate-s

R:start-s

R:suspend R:resume

R:completeR:fail

R:start

R:start-m

S:create

S:offer-s

S:offer-m

S:allocate

R:allocate-m

作業ライフサイクル

Page 16: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

25© 2008, www.yawlgroup.com

www.yawlfoundation.org (research)

www.sourceforge.net/projects/yawl (system)

http://www.yawlgroup.com (consultancy)

YAWL in the webYAWL in the web 詳細は web で。。。

Page 17: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

26© 2008, www.yawlgroup.com

YAWL Overview• Collaboration between TU/e and QUT

• Based on Workflow Patterns Initiative

• YAWL: 2002 – newYAWL: 2007

• System development– Open source (currently LGPL)– Governed by YAWL Foundation– Industry collaboration

• M2 Investments – first:telecom • Intercontinental Hotels Group (till 2007)

• Main publication– [AH05] W.M.P. van der Aalst and A.H.M. ter Hofstede. YAWL: Yet

Another Workflow Language, Information Systems 30(4):245-275, 2005

YAWL 概要

TU/e と QUT のコラボレーション

ワークフローパターンイニシアティブに基づいています

YAWL 2002年から始まって , 新 YAWL が 2007年スタート

業界コラボレーション

テレコム

インターコンチネンタルホテルグループ

とりまく環境

Page 18: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

27© 2008, www.yawlgroup.com

YAWL Highlights• YAWL

– Based on the (old) control-flow patterns– Extends Petri nets– Formalisation of control flow perspective– Verification– Dynamic workflow– Exception handling

• YAWL System– Open source– Service oriented architecture– Production class

• newYAWL– Direct support for:

• 41 out of 42 control flow patterns (missing: implicit termination)• 38 out of 40 data patterns (and the other two, passing by reference, partially)• 38 out of 43 resource patterns (missing: patterns related to case handling)

– Formalisation in CPN– Implementation of its resource perspective in system (due in the near future …)

YAWL ハイライト

旧コントロールフローパターンに基づいていますペトリネットを拡張

コントロールフローの形式化立証

動的ワークフロー例外ハンドリング

オープンソースSOA製品レベル

パターンサポート

CPN形式

リソース面での実装も近い将来に対応。。。

Page 19: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

28© 2008, www.yawlgroup.com

YAWL notation

Composite task Multiple Instance task

YAWL 記述

Page 20: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

29© 2008, www.yawlgroup.com

General YAWL Example I

register

flight

hotel

car

pay

YAWL サンプル

Page 21: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

30© 2008, www.yawlgroup.com

General YAWL Example II

register

flight

hotel

car

pay

YAWL サンプル2

Page 22: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

31© 2008, www.yawlgroup.com

General YAWL Example III

register do_itinerary_segment

pay

register_itinerary_segment

flight

hotel prepare_payment_information

car

© Y

AW

L F

ou

nd

atio

n

YAWL サンプル3

Page 23: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

32© 2008, www.yawlgroup.com

Cancellation in YAWL

• The concept of cancellation region generalises the cancel activity and cancel case patterns

• Syntactically, a cancellation region consists of a number of tasks and places (possibly including implicit ones!) part of the same composite task and attached to a so-called cancellation task (also part of the same composite task).

• Semantically, upon completion of the cancellation task all tokens in the cancellation region (or in decompositions of tasks in that region etc) are removed.

YAWL でのキャンセル

キャンセルについてのコンセプトはキャンセル作業、ケースを一般化すること

構文的にキャンセル領域は複数のタスクで構成され、あるタスクはキャンセルタスクと関連します

意味としてはキャンセル領域のすべてのトークン(状態)は戻される (移動 ) ということ

Page 24: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

33© 2008, www.yawlgroup.com

General YAWL Example IV

register do_itinerary_segment

pay

cancel

booking_in_progress

YAWL サンプル4

Page 25: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

35© 2008, www.yawlgroup.com

• Engine, Graphical Editor, Custom YAWL Services

• First release November 2003, Open Sourced in May 2004

• Release 2.0 planned for Mid 2008

• Perspectives:– Control-flow: comprehensive support for original patterns– Data: using XML technologies– Resource: fairly basic currently, comprehensive support in 2.0

– Operational: tasks can be linked to web services

• Service-oriented architecture• Automated form generation• Support for dynamic workflow and exception handling• Support for design time verification• Persistence (thanks to M2 Investments/first:telecom)

The YAWL System The YAWL システム

エンジン、グラフィカルエディタ、独自 YAWL サービス

2003年 11月にリリースされ、 2004年 5月にオープンソース化

2008年中に ver.2.0 リリース予定旧パターンの統括的なサポート

XML 利用

今は基本的なところのみサポート、 ver.2.0 で完全サポート

タスクは web サービスにリンクしていますSOA

フォーム自動生成

動的ワークフローと例外ハンドリング

設計時の立証

永続化

Page 26: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

42© 2008, www.yawlgroup.com

YAWL Workflow Engine

Worklet Service

Resource Service

Web Service

Invoker Service

A B X

E

Event Log

Event LogProcess

Repository

Case Data

YAWL Process Editor

A A B

Admin Worklist

R R

A BB

O

W

Org Model Event Log

Worklet Repository

Exception SelectionX

Web Service users Web

Service

Service Oriented Architecture

PROM

Interfaces

A - AdministrationB - ProcessesE - LoggingO - Org DataR - ResourcingW - Work QueueX - Exception

SOA

Page 27: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

43© 2008, www.yawlgroup.com

Control flow specification コントロールフロー仕様

Page 28: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

44© 2008, www.yawlgroup.com

Data flow specification データフロー仕様

Page 29: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

45© 2008, www.yawlgroup.com

Resource specification (2.0) リソース仕様(2.0)

Page 30: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

46© 2008, www.yawlgroup.com

YAWL resource service YAWL リソースサービス

Page 31: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

47© 2008, www.yawlgroup.com

Case management ケース管理

Page 32: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

48© 2008, www.yawlgroup.com

Work Item Actions ワークアイテムアクション

Page 33: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

49© 2008, www.yawlgroup.com

Data entry for started work itemsデータエントリ

Page 34: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

50© 2008, www.yawlgroup.com

User Management ユーザ管理

Page 35: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

51© 2008, www.yawlgroup.com

Verification

• Design time analysis of YAWL specifications

• Important due to long-lived nature of workflows

• Highly complex (both algorithmically and computationally)

• Almost never supported by commercial or open source systems

• YAWL environment supports three approaches:

– Structural– Behavioural– Reset nets

立証

YAWL 仕様のプロセス設計時による分析

ワークフローの長時間という特質からくる重要さ

高い複雑さ(アルゴリズム面、計算面)

ほとんどの商用 / オープンソースの製品ではサポートされていない

YAWL環境では以下の3つのアプローチを採用しています:

構造

振る舞い

ネット初期化

Page 36: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

52© 2008, www.yawlgroup.com

Dynamic Workflow and Exception Handling:Workflow Limitations• Uptake of WfMS is limited to implementation of rigid and/or idealised

workflow processes.

• Reason: WfMSs have difficulty dealing with process flexibility:

• Keeping it simple means ignoring deviations

• Capturing deviations means complex models

– difficulty evolving with the work practices they model

– difficulty representing “real-world” activities

– limited exception handling capabilities

動的ワークフローと例外ハンドリング:ワークフローの制約

WFMS の理解は“堅い” ,“ 理想的な”ワークフロープロセスの実装に限られます

プロセス柔軟性をあつかうのは難しい

シンプルさを保つということはズレ(細かい本質でないこと)を無視すること

ズレを正確に把握することはモデルが複雑になるということ

進化していくモデルに対応する難しさ

現実のアクティビティを表現する難しさ

例外ハンドリングでできることの限界

Page 37: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

53© 2008, www.yawlgroup.com

Introducing Worklets

• A worklet is a small, self-contained, complete workflow process which handles one specific action (task) in a larger, composite activity (process).

• Each task of a process instance may be linked to an extensible repertoire of worklets, one of which is contextually chosen at runtime to carry out the task.

• The repertoire is dynamically constructed as different approaches to completing a task are developed, derived from the context of each process instance.

• A sequence of worklets may be chained to form an entire workflow process.

Worklets とは

Worklets は小さく、自分だけで動作し、ワークフロープロセスを管理できます(大きく、複雑なアクティビティにある特定の作業(タスク)も扱えます )

各プロセスインスタンスのタスクは Worklets の拡張可能なレパートリーに関連づいています。それらのうちのひとつは実行時に前後関係からタスク間の関連が決定します。

異なるフロー(タスクを終了するための)が設計されるときに動的にレパートリーが構築されます

Worklets における順序はプロセス全体を構成するために管理されます

Page 38: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

55© 2008, www.yawlgroup.com

Worklet Selection• Each worklet is a representation of a particular situated action, the runtime selection of which relies on the relevant

context of each case instance, derived from case and historical data.

• The worklet selection process is achieved through the use of modified Ripple Down Rules (RDR).

• Each task in a process may be associated with a particular RDR set from which are referenced a repertoire of worklets.

• One will be dynamically selected and assigned to perform the task at runtime, based on the particular context of the task.

ワークレット選択

各ワークレットはあるアクション ( 作業の単位)を表したもので、実行時のアクションの選択は実行時の状況、履歴データから決定されます

そのアクションの決定には RippleDownRules(RDR) が利用されます

各タスクはワークレットのレパートリーから参照される RDR とひもづいています

アクションが動的に決定されタスクの実行に割り当てられるのはタスクの状態に基づいて行なわれます

Page 39: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

60© 2008, www.yawlgroup.com

Worklet Exception Service

• The Worklet Service also provides support for exception handling.

• Each specification may have a separate RDR rule set defined for each type of possible process exception.

• When an exception occurs:

– If a process has a rule set defined for that exception type, the worklet service will handle the exception by invoking an appropriately selected exception handling process

– If there is no associated rule set, the exception is simply ignored.

ワークレット例外サービス

ワークレットサービスは例外ハンドリングもサポートします

各仕様は実行可能なプロセスのための RDR ルールセットを保持しています

例外がおきると:

例外タイプのルールセットを保持している場合、ワークレットサービスは指定された例外タイプを呼び出し例外を適切にハンドリングします

例外タイプのルールセットを保持していない場合、例外は無視されます

Page 40: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

61© 2008, www.yawlgroup.com

Worklets & Exceptions• The Worklet Service uses the same rules framework for selecting exception

handlers as it does for worklet substitutions

• For exceptions, a discrete exception handling sequence is selected instead of a single worklet

– The exception sequence may contain a worklet to run as a compensatory process

• Exception Handling sequences can be defined 'on-the-fly' for unexpected exceptions, which will then be dynamically incorporated into an instance of that workflow process whenever needed.

– Worklets to handle exceptions are constructed in exactly the same way as those for standard processes.

• Importantly, the method used to handle an exception is captured by the system, and so a history is recorded for future instantiations.

– In this way, the process model-set undergoes a dynamic natural evolution.

ワークレットと例外

ワークレットサービスは例外ハンドリングの際にも同じルールフレームワークを利用します

例外ハンドリングの処理はワークレットの代わりに順番が制御されることがあります

例外ハンドリングの処理順序に補正を目的としたワークレット自体が含まれることもあります

例外ハンドリングの処理順序は予期せぬ例外のための順序も実行時として定義できます。必要なときにはプロセスインスタンス内で動的に呼び出されます

ワークレットでは標準プロセスと同様の方法で例外ハンドリングを構築できます

重要なのは、例外はシステムで補足され、履歴が保持されること

プロセスのモデルセットは動的に裏側で行なわれます

Page 41: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

62© 2008, www.yawlgroup.com

Exception Factors

Targets

Task

Case

All Cases

Ancestors

Events

Constraints (pre & post)

Constraint violation

Timeout

Unavailable resource

Task abort

External Triggers

Actions

Suspend

Continue

Restart

Complete

Fail

Remove

Compensate

The Worklet Service can take these actions against these targets for these events

例外ファクター

ワークレットサービスは以下のイベントを取得できます

Page 42: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

63© 2008, www.yawlgroup.com

Exception Handlers• Exception handling sequences are defined using the 'exception handling primitives‘

• A specification can have a repertoire of handlers for each exception type - the appropriate handler will be chosen contextually at runtime

– For item-level exceptions, each itemin the specification has its own repertoire of handlers

• A sequence can contain any number of compensation primitives, each associated with a worklet.

– Worklets can run in parallel with the parent task, or while the parent is suspended

例外ハンドラ

例外ハンドリングの順序は‘ exception handling primitives‘ で定義されます

フロー定義では例外ハンドラのレパートリーを保持し、実行時の状態で適切なハンドラが選択されるようになります

個々のワークフローアイテム毎に例外ハンドラを定義できます

ワークレットに関連する補正むけの順序も含んでいます

ワークレットは親タスクが一時停止された場合にでも並行実行可能です

Page 43: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

66© 2008, www.yawlgroup.com

Current and Future ActivitiesTransition of YAWL 2.0 Beta version to YAWL 2.0 version

– Case studies (e.g. Film & TV industry) – YAWL4Film– Simulator– Inter-process communication– Configurable reference models– Visualization framework for work list presentation– Declarative workflows

– BPMN2YAWL plug-in– YAWL to OpenWFEru – by John Mettraux

今とこれから

YAWL Beta から YAWL2.0 version にむけて

事例

シミュレータ

プロセス間相互通信

設定可能な参照モデル

ワークリストのビジュアル化

宣言的ワークフロー

BPMN2YAWL プラグイン

OpenWFE-ru の YAWL インテグレーション

Page 44: YAWL - Tokyo 2008 - Petia Wohed

a university for the worldrealR

67© 2008, www.yawlgroup.com

Thanks!

• Questions?