Upload
jonas-anseeuw
View
198
Download
0
Embed Size (px)
Citation preview
18/05/2015 1
Jonas Anseeuw, Gregory Van Seghbroeck, Bruno Volckaert, Filip De Turck
BPMN Extensions for
Decentralized Execution and
Monitoring of Business Processes
Example: simulation workflow
Outsourced process (SaaS)
On premise, in-house processes
Computational service
Outsourced service (SaaS)
Virtual Test
Process
Hiring
Process
Design data Product data Simulation data
Engineering
Teams
execute
results
On premise, in-house processes
Virtual
Test
Process
Design
Process
Design data Product data Simulation data
Engineering
Teams
execute
results
BPO
Workflow data
Computational
service
update
launch
update
launch
Workflow as a Service
Simulation
Workflow
BPO results in decentralized workflows
Business Workflow
Simulation Workflow Simulation Workflow
Company B Company C
Company A
Business process modeling languages
must be extended
to support decentralized workflows
Business Process Execution Language (BPEL)
Business Process Model and Notation (BPMN)
Web Service Choreography Description
Language (WS-CDL)
…
Extending BPMN 2.0
using its extensibility mechanism
Correlation & monitoring extensions
Extensions backwards compatible with current
specification
BPMN Extensions for Decentralized
Execution and Monitoring of Business
Processes
1. Choreography Development Cycle
2. Correlation extensions
3. Monitoring extensions
BPMN Extensions for Decentralized
Execution and Monitoring of Business
Processes
1. Choreography Development Cycle
2. Correlation extensions
3. Monitoring extensions
Choreography Development Cycle
Model
Choreography
Stub
Extraction
Validated
model
Public
Requirements
Model individual
process
Privaterequirements
Each partner
Partner’s
EPP
Execute
choreographyDeploy
ValidateChoreography
Validate
Choreography
Monitor
Choreography
Model Choreography (I)
1. Define choreography
+ Participants
Model
Choreography
Stub
Extraction
Validated
model
Public
Requirements
Model individual
process
Private
requirements
Each partner
Partner’s
EPP
Execute
choreographyDeploy
Validate
Choreography
Validate
Choreography
Monitor
Choreography
1. Define choreography
2. Extract Tasks/Message events
Model Choreography (II)
Model
Choreography
Stub
Extraction
Validated
model
Public
Requirements
Model individual
process
Private
requirements
Each partner
Partner’s
EPP
Execute
choreographyDeploy
Validate
Choreography
Validate
Choreography
Monitor
Choreography
Model Choreography (III)
1. Define choreography
2. Extract Tasks/Message events
3. Refine individual processes
+ Detailed data flow
+ Detailed message flow
Model
Choreography
Stub
Extraction
Validated
model
Public
Requirements
Model individual
process
Private
requirements
Each partner
Partner’s
EPP
Execute
choreographyDeploy
Validate
Choreography
Validate
Choreography
Monitor
Choreography
Model Choreography (IV)
1. Define choreography
2. Extract Tasks/Message events
3. Refine individual processes
4. Define conversations
Model
Choreography
Stub
Extraction
Validated
model
Public
Requirements
Model individual
process
Private
requirements
Each partner
Partner’s
EPP
Execute
choreographyDeploy
Validate
Choreography
Validate
Choreography
Monitor
Choreography
Model Choreography (V)
1. Define choreography
2. Extract Tasks/Message events
3. Refine individual processes
4. Define conversations
5. Define correlation
Model
Choreography
Stub
Extraction
Validated
model
Public
Requirements
Model individual
process
Private
requirements
Each partner
Partner’s
EPP
Execute
choreographyDeploy
Validate
Choreography
Validate
Choreography
Monitor
Choreography
extension
Model Choreography (VI)
1. Define choreography
2. Extract Tasks/Message events
3. Refine individual processes
4. Define conversations
5. Define correlation
6. Define monitoring
Model
Choreography
Stub
Extraction
Validated
model
Public
Requirements
Model individual
process
Private
requirements
Each partner
Partner’s
EPP
Execute
choreographyDeploy
Validate
Choreography
Validate
Choreography
Monitor
Choreography
extension
extension
Model Choreography (VII)
1. Define choreography
2. Extract Tasks/Message events
3. Refine individual processes
4. Define conversations
5. Define correlation
6. Define monitoring
7. Validate choreography
Model
Choreography
Stub
Extraction
Validated
model
Public
Requirements
Model individual
process
Private
requirements
Each partner
Partner’s
EPP
Execute
choreographyDeploy
Validate
Choreography
Validate
Choreography
Monitor
Choreography
extension
extension
BPMN Extensions for Decentralized
Execution and Monitoring of Business
Processes
1. Choreography Development Cycle
2. Correlation extensions
a. Extending BPMN
b. Semantical meaning
3. Monitoring extensions
BPMN versus WS-CDL
BPMN only has Conversations
= Grouping of Message Flows,
identified by CorrelationKeys
vs. WS-CDL
Thorough Correlation model: ChannelType
Identities: primary, alternate, derived, association
Extending BPMN to mimic WS-CDL
BPMN Conversation == WS-CDL ChannelType
Add Identity types to CorrelationKey
Identities: primary, alternate, derived, association
<collaboration><conversation>
<correlationKey type="primary"></conversation>
<collaboration>
Semantical meaning
Will result in more conversations
Loses readability
User interface will visualize correlation between
messages/conversations different
BPMN Extensions for Decentralized
Execution and Monitoring of Business
Processes
1. Choreography Development Cycle
2. Correlation extensions
3. Monitoring extensions
a. Monitoring model
b. Monitoring metadata
c. Describing monitoring declarations
d. Visualization
e. Implementation
BPMN has auditing and monitoring
placeholders
Actual definition is out of scope of the
specification
Auditing and monitoring tags can be set for all
FlowElements and Process
Monitoring model
Declarative model
Include in monitoring/auditing tag
servicetime between TaskA and TaskC?
log after TaskA?
Describing monitoring declarations
& visualization Single monitoring points
Monitoring ranges
Monitoring aggregates
Process instance
Process: range of process instances
System: range of processes
servicetime between TaskA and TaskC?
log after TaskA?
BPMN Extensions for Decentralized
Execution and Monitoring of Business
Processes
1. Choreography Development Model
2. Correlation extensions
3. Monitoring extensions
Extending BPMN 2.0
using its extensibility mechanism
to support decentralized workflows
BPMN correlation extensions
can hold similar information as WS-CDL mechanism
BPMN monitoring
achieved by adding a wrapper around FlowElements
and Process