Post on 08-Jan-2016
description
Transformation of yEPC Business Process Models to YAWL
Jan Mendling Vienna University of EconomicsMichael Moser Vienna University of EconomicsGustaf Neumann Vienna University of Economics
ACM SAC - Model Transformation TrackFolie 2
Agenda
1. What is the Motivation of this transformation?
2. What EPC extensions do yEPCs introduce?
3. Differences between yEPCs and YAWL
4. Conclusion and Future Research
ACM SAC - Model Transformation TrackFolie 3
Agenda
What is the motivation of this transformation?
ACM SAC - Model Transformation TrackFolie 4
Business Process and Workflow Modeling
Business Process Modeling
Workflow Modeling
Customer inquiries
about products
Customer inquiry
processing
Document to be created from sales
activity
XOR
V
XOR
Quotation to be created from inquiry
Inquiry items are rejected
Customer inquiry is
transmitted
Inquiry is created EPCs
YAWL
ACM SAC - Model Transformation TrackFolie 5
Motivation of yEPCs to YAWL transformation
• Lots of business process models are available as EPCs
• YAWL is a workflow language with
• Execution semantics and
• Verification tools
• Transformation provides formal semantics of YAWL for yEPCs
ACM SAC - Model Transformation TrackFolie 6
yEPC symbols
Event
Function
Hierarchical Function
ProcessInterface
OR-Connector
XOR-Connector
AND-Connector
EmptyConnector
[min, max, required, creation]Multiple instantiation parameters
Cancellation area
AtomicTask
Condition
InputCondition
OutputCondition
AND-SplitTask
AND-JoinTask
OR-SplitTask
OR-JoinTask
XOR-SplitTask
XOR-JoinTask
CompositeTask
Cancellation
MultipleInstanceAtomicTask
MultipleInstance
CompositeTask
ACM SAC - Model Transformation TrackFolie 7
EPC example from the SAP reference model
Customer inquiries
about products
Customer inquiry
processing
Document to be created from sales
activity
XOR
V
XOR
Quotation to be created from inquiry
Inquiry items are rejected
Customer inquiry is
transmitted
Inquiry is created
Function
Events
Connector
ACM SAC - Model Transformation TrackFolie 8
YAWL Notation
AtomicTask
Condition
InputCondition
OutputCondition
AND-SplitTask
AND-JoinTask
OR-SplitTask
OR-JoinTask
XOR-SplitTask
XOR-JoinTask
CompositeTask
Cancellation
MultipleInstanceAtomicTask
MultipleInstance
CompositeTask
ACM SAC - Model Transformation TrackFolie 9
YAWL Model for Customer Inquiry
ACM SAC - Model Transformation TrackFolie 10
Application of the transformation
V
V
V
SAP Reference Model
EPC to YAWL
Generated YAWL Models
Model Analyzer
WofYAWL <warning>Task or (ahvi) may not forward control to task xor (aho7)</warning><warning>Task or (ahvi) may not forward control to task and (ahql)</warning>...
WofYAWL Analysis Output
<model><treenr>Asset Accounting</treenr><modelnr>1</modelnr><modeltype>MT_EEPC</modeltype><level>5</level><name>Index Series</name><events>0</events><andsplits>0</andsplits><arcs>2</arcs><hasCycles>false</hasCycles>...
Model Characteristics Table Generator
# # # # # ## ## # # # # ## ## # # # # ## ## # # # # ## ## # # # # ## ## # # # # ## #
Analysis Table
ACM SAC - Model Transformation TrackFolie 11
Agenda
What EPC extensions do yEPCs introduce?
ACM SAC - Model Transformation TrackFolie 12
Workflow Patterns Support of EPCs
• 20 Workflow Patterns as benchmark
• EPCs cannot express:
• Deferred choice
• Multiple instantiation
• State-based patterns
• Cancellation patterns
ACM SAC - Model Transformation TrackFolie 13
yEPC symbols
Event
Function
Hierarchical Function
ProcessInterface
OR-Connector
XOR-Connector
AND-Connector
EmptyConnector
[min, max, required, creation]Multiple instantiation parameters
Cancellation area
AtomicTask
Condition
InputCondition
OutputCondition
AND-SplitTask
AND-JoinTask
OR-SplitTask
OR-JoinTask
XOR-SplitTask
XOR-JoinTask
CompositeTask
Cancellation
MultipleInstanceAtomicTask
MultipleInstance
CompositeTask
ACM SAC - Model Transformation TrackFolie 14
Interleaved Parallel Routing
B
A mutex
C
E
pre-C
pre-B post-B
post-C
ACM SAC - Model Transformation TrackFolie 15
Agenda
What are the differences between yEPC and YAWL?
ACM SAC - Model Transformation TrackFolie 16
Differences yEPC and YAWL
START A START B
Function 2Function 1
Event 1
Event 2 Event 3
Function 3 Function 4 Function 5 Function 6
END BEND A
ACM SAC - Model Transformation TrackFolie 17
Multiple Start and End Events
e1 e2
e1 e2
ACM SAC - Model Transformation TrackFolie 18
Connector Chains
ACM SAC - Model Transformation TrackFolie 19
Events and State Representation
Function 1
Event 1
Function 3 Function 4
Function 1
Function 3 Function 4
ACM SAC - Model Transformation TrackFolie 20
Agenda
Conclusion and Future Work
ACM SAC - Model Transformation TrackFolie 21
Conclusion
Conclusion
• yEPC-based modelling of all workflow patterns
• yEPC execution semantics via mapping to YAWL
• Verification of EPCs using YAWL analysis tools
ACM SAC - Model Transformation TrackFolie 22
Application of the transformation
V
V
V
SAP Reference Model
EPC to YAWL
Generated YAWL Models
Model Analyzer
WofYAWL <warning>Task or (ahvi) may not forward control to task xor (aho7)</warning><warning>Task or (ahvi) may not forward control to task and (ahql)</warning>...
WofYAWL Analysis Output
<model><treenr>Asset Accounting</treenr><modelnr>1</modelnr><modeltype>MT_EEPC</modeltype><level>5</level><name>Index Series</name><events>0</events><andsplits>0</andsplits><arcs>2</arcs><hasCycles>false</hasCycles>...
Model Characteristics Table Generator
# # # # # ## ## # # # # ## ## # # # # ## ## # # # # ## ## # # # # ## ## # # # # ## #
Analysis Table
34 of 603 EPC models had formal errors (deadlock, lifelock, etc.)