Research paper presentation delivered at the IEEE Enterprise Computing Conference (EDOC), Paris, France, 30 October 2019. The paper introduces the technical details of Caterpillar´s business process execution engine v3.0 https://git.io/caterpillar - Paper available at https://arxiv.org/pdf/1906.01420.pdf
Interpreted Execution of Business Process Models on Blockchain
1. Orlenys López-Pintado
Marlon Dumas, Luciano García-Bañuelos, Ingo Weber
Paris, October 30, 2019
Interpreted Execution of Business
Process Models on Blockchain
4. 4
Related Work
2018- Lorikeet (BPMN- Choreographies )
2018- Caterpillar (BPMN)
Translate high-level process models into smart contracts
2016- C. Frantz et al. (Domain Specific
Language)2018- M. Madsen et al. (Declarative Workflows)
2019- G. Falazi et al. (BPMN extension)
2018- H. Nakamura et al. (Statecharts and optimizations)
COMPILED APPROACHES
Lack of
FLEXIBILITY
5. 5
Problem
COMPILED APPROACHES
Lack of FLEXIBILITY
Code Generation:
Model Dependent
Redundant
Conformance with the model
Immutable = Secure = Tamper proof
Avoid changes in the process model during its execution
How to flexibly and cost-efficiently execute collaborative processes
involving mutually untrusted parties on a blockchain platform?
COST-EFFICIENCY?
6. 6
Interpreter Overview
2018- C. Sturm et al. (Single Contract
Execution)
INTERPRETED
EXECUTION
Dynamic data structures to
store process-specific data.
Process perspectives decoupled on a Modular Architecture
Flexibility for the participants of the process to react under unexpected
situations during the execution
(1)Keeping different variants of the same model,
(2)Deviating the flow during the execution temporarily,
(3)Permanently modifying a process model with impact in all the future instances
BPMN Interpreter- Single Smart
contract encoding BPMN
Standard
13. 13
Experimentatio
n
Assessing the costs of executing business processes using the
interpreted approach presented in this paper, relative to existing
compiled solutions
14. 14
Experimental Results
Caterpillar Compiled:
0.011 – 0.031 ETH (1.66 – 4.54
EUR)
Costs for Average Gas Price
Full Execution (24-10-2019)
Caterpillar Interpreted:
0.007 – 0.010 ETH (0.95 – 1.39
EUR)
Processes including:
15 - 60 BPMN elements
15. 15
Conclusion
Flexible model-driven execution engine on blockchain relaying on a novel
BPMN interpreter combined with dynamic data structures to store process-
specific information.
Modular multi-layer architecture that coordinates a full-fledged process
execution such that the parties can create, update and monitor the process
instances dynamically.
Open Source Implementation.
Experimental evaluation shows the Interpreter significantly consumes less
gas than the compiled version of Caterpillar thus it is more cost-efficient.
16. 16
Future Work
How to ensure that the already running instances do not end up
in an inconsistent state after a process model change?
Adapt existing approaches for consistency verification of dynamic process
model changes to this setting
Policies that restrict the allowed changes and/or that allow participants to
selectively accept or reject changes at runtime
17. Questions
THANK YOU !!!
Orlenys López-Pintado
Marlon Dumas, Luciano García-Bañuelos, Ingo Weber
Paris, October 30, 2019
Interpreted Execution of Business
Process Models on Blockchain