design time validation for the correct execution of bpmn collaborations

36
Design Time Validation for the Correct Execution of BPMN Collaborations Jonas Anseeuw, et al. [email protected]

Upload: jonas-anseeuw

Post on 12-Apr-2017

105 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Design Time Validation for the Correct Execution of BPMN Collaborations

Design Time Validation for the Correct Execution of BPMN Collaborations

JonasAnseeuw,[email protected]

Page 2: Design Time Validation for the Correct Execution of BPMN Collaborations

BPaaS (Business Process as a Service) – a novel cloud paradigm

BPaaSintegrate

SaaSconsume

PaaSbuild

IaaShost

Page 3: Design Time Validation for the Correct Execution of BPMN Collaborations

BPaaS – extending SaaS with BPO

• BPO:BusinessProcessOutsourcing

•  ExamplesofBPO:HR,accounEng,billing,customersupport,businessoperaEons,…

Page 4: Design Time Validation for the Correct Execution of BPMN Collaborations

Example: from document management services to billing process as a service

Page 5: Design Time Validation for the Correct Execution of BPMN Collaborations

Example: simulation workflow as a service

Outsourced process (SaaS)

On premise, in-house processes

Computational service

Outsourced service (SaaS)

Virtual Test Process

Design 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

Page 6: Design Time Validation for the Correct Execution of BPMN Collaborations

BPO results in decentralized business process flows

Company A

Company CCompany B

Page 7: Design Time Validation for the Correct Execution of BPMN Collaborations

How to ensure correct execution of the different interactions in a decentralized workflow without central coordinator?

Page 8: Design Time Validation for the Correct Execution of BPMN Collaborations

Validation algorithm will check at design time if the execution will be conform the model

Model ExecuEon

Page 9: Design Time Validation for the Correct Execution of BPMN Collaborations

What comes next?

1.  Usecase2.  ModelingofusecaseinBPMN3.  ThevalidaEonalgorithm

Page 10: Design Time Validation for the Correct Execution of BPMN Collaborations

Use case: simulation

CompanyA CompanyB

Productteam

Engineeringteam

SimulaEonWFasaservice

Page 11: Design Time Validation for the Correct Execution of BPMN Collaborations

Use case: simulation

Productteam

Engineeringteam

SimulaEon

1.Setup

2.NoEfy

3.Input

4.Validate

5.Start

6.Results

Page 12: Design Time Validation for the Correct Execution of BPMN Collaborations

How to model decentralized workflows?

• BPEL(BusinessProcessExecuEonLanguage)• BPMN(BusinessProcessModelandNotaEon)• WS-CDL(WebServiceChoreographyDescripEonLanguage)• …

=>BPMNoffersagraphicalnotaEonandisacommonusedstandard

Page 13: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Step2 Start Finish

Evaluate Input Validate

Product

Simulation

Engineering

Use case modeled in BPMN

Page 14: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Step2 Start Finish

Evaluate Input Validate

Product

Simulation

Engineering

Use case modeled in BPMN

Page 15: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Start Finish

Evaluate Input Validate

Product

Simulation

Engineering

Use case modeled in BPMN

Step1 StepnStep..

NoEficaEon

Status

Page 16: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Stepn Start Finish

Evaluate

Product

Simulation

Engineering

Step..

NoEficaEon

Status

Use case modeled in BPMN

Input

Validate

Page 17: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Stepn Start Finish

Evaluate

Product

Simulation

Engineering

Step..

NoEficaEon

Status

Use case modeled in BPMN

Input

Validate

Page 18: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Stepn Start Finish

Evaluate

Product

Simulation

Engineering

Step..

NoEficaEon

Status

Input

Validate

Will the execution be conform the model?

Model ExecuEon

Page 19: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Stepn Start Finish

Evaluate

Input

Validate

Product

Simulation

Engineering

Step..

NoEficaEon

Status

This BPMN model contains 5 ambiguities!

1

2

3 4

5

Page 20: Design Time Validation for the Correct Execution of BPMN Collaborations

Validation Algorithm

§ AlgorithmoriginallyusedforWS-CDL(VanSeghbroeck,2011),butadaptedforBPMN

§ TimeVectors§ ImplementedinEclipseBPMN2modeler

Page 21: Design Time Validation for the Correct Execution of BPMN Collaborations

Time Vectors

Page 22: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Stepn Start Finish

Evaluate

Input

Validate

Product

Simulation

Engineering

Step..

NoEficaEon

Status

How the algorithm works

1

2

3 4

5

Page 23: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Stepn Start Finish

Evaluate

Input

Validate

Product

Simulation

Engineering

Step..

NoEficaEon

Status4

Exception 4

Page 24: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Stepn Start Finish

Evaluate

Input

Validate

Product

Simulation

Engineering

Step..

NoEficaEon

Status

Exception

4

4

NoEficaEon

Status

NoEficaEon

Scenario1

Scenario2

Status

Page 25: Design Time Validation for the Correct Execution of BPMN Collaborations

Setup NoEfy Start Result

IniEate Step1 Stepn Start Finish

Evaluate

Input

Validate

Product

Simulation

Engineering

Step..

NoEficaEon

Status

Possible solution for Exception 4

Page 26: Design Time Validation for the Correct Execution of BPMN Collaborations

(1,0,0) (2,0,0) Start Result

(1,1,0) (2,2,1[1,0]) Stepn Start Finish

(2,0,1)

(2,0,1[1,0])

Validate

Product

Simulation

Engineering

Step..

NoEficaEon

Status

Exception : message order 1

1

Setup NoEfy

IniEate

Step1

Evaluate

Input

Page 27: Design Time Validation for the Correct Execution of BPMN Collaborations

(3,2,0) Start Result

(3,3,1[1,0]) Stepn Start Finish

(3,2,1)

(3,2,1[1,0])

Validate

Product

Simulation

Engineering

..

NoEficaEon

Status

Possible solution for Exception 1

Page 28: Design Time Validation for the Correct Execution of BPMN Collaborations

Start Result

(3,3,1[1,0]) (3,5,1[1,0]) Start Finish

(3,2,1[1,0])

(3,5,1[1,2])

Product

Simulation

Engineering

..

NoEficaEon

Status

Exception : parallel order 2

2

Step1 Stepn

Page 29: Design Time Validation for the Correct Execution of BPMN Collaborations

Start Result

(3,3,2) (3,5,2) Start Finish

(3,2,2) (3,5,3)

Product

Simulation

Engineering

..

NoEficaEon

Status

Possible solution for Exception 2

Page 30: Design Time Validation for the Correct Execution of BPMN Collaborations

(4,2,0) Result

(3,3,2) (3,5,2) (3,6,2) Finish

Product

Simulation

Engineering

..

NoEficaEon

Status

Exception : message order 3

3

StartNoEfy

Start

Page 31: Design Time Validation for the Correct Execution of BPMN Collaborations

(5,6,4) Result

(5,6,4) Finish

(3,5,3)

Product

Simulation

Engineering

NoEficaEon

Status

(3,5,4)

(4,5,4)

Possible solution for Exception 3

NoEfy

NoEficaEon Start

Start

Page 32: Design Time Validation for the Correct Execution of BPMN Collaborations

NoEfy Start (7,8,4)

1 n Start (5,8,4)

Evaluate Input Validate

Product

Simulation

Engineering

..

(6,7,4)

(5,7,4)

NoEfy

Exception 55

Status Result

NoEficaEon

Page 33: Design Time Validation for the Correct Execution of BPMN Collaborations

NoEfy Start (8,9,4)

1 n Start (7,9,4)

Evaluate Input Validate

Product

Simulation

Engineering

..

NoEfy

Solution for Exception 5

(6,7,4)

(5,7,4)

(7,7,4)

(7,8,4)

NoEficaEon

NoEfy Result

Result

Page 34: Design Time Validation for the Correct Execution of BPMN Collaborations

NoEfy Result

1 n Finish

Evaluate Input Validate

Product

Simulation

Engineering

..

NoEfy

Properly validated BPMN model

NoEficaEon

Status

Page 35: Design Time Validation for the Correct Execution of BPMN Collaborations

Takeaway points

• BPOresultsindecentralizedworkflows• DecentralizedworkflowscanbemodeledinBPMN

•  ThecorrectexecuEonofBPMNCollaboraEonscanbevalidatedduringdesignEme

Page 36: Design Time Validation for the Correct Execution of BPMN Collaborations

Result

JonasAnseeuw,[email protected]