Model-Driven Engineering for Multi-Party Business Processes on Multiple Blockchains

Flavio Corradini, Alessandro Marcelletti, Andrea Morichetta, Andrea Polini, Barbara Re, Emanuele Scala, Francesco Tiezzi francesco
2021 Blockchain: Research and Applications  
As a disruptive technology, the blockchain is continuously finding novel application contexts, bringing new opportunities and radical changes. In this paper, we use blockchain as a communication infrastructure to support multiparty business processes. In particular, through smart contracts specifically generated by the mentioned business process, it is possible to derive a trustable infrastructure enabling the interaction among parties. Moreover, the emergence of different blockchain
more » ... s, satisfying different characteristics, gives the possibility to support the same business process dealing with different non-functional needs. In this paper, we propose a novel engineering methodology supported by a practical framework called Multi-Chain. It permits to derive, using a modeldriven strategy, a blockchain-based infrastructure, that can be deployed over a specific blockchain technology (e.g. Ethereum or Hyperledger Fabric). The objective is to permit the single definition and multiple deployments of the business process, to deliver the same functionalities, but satisfying different non-functional needs. In such a way, organisations willing to cooperate can select the multi-party business process and the blockchain technology they would like to use to satisfy their needs. Using Multi-Chain, they will be able to automatically derive from a BPMN choreography diagram a blockchain infrastructure ready to be used. This overcomes the need to get acquainted with many details of the specific technology. J o u r n a l P r e -p r o o f J o u r n a l P r e -p r o o f where process execution best suits in a permissionless scenario, for instance, with participants that can dynamically join. On the other hand, there are also scenarios where a multi-party business process execution best fits with a permissioned scenario with pre-defined participants and restricted access to data. Being aware of Business Process Modelling Notation (BPMN) [19] emerging as a modelling language to describe and also to support the engineering multi-party business processes [1, 20] , in this paper, we focus on the BPMN choreography diagram. It permits to describe the messages that have to be exchanged among the involved participants from a global perspective, without exposing any internal behaviour of the participants. By relying on BPMN, we provide a model-driven methodology that permits to derive a run-time blockchain-based infrastructure enabling the execution of a multi-party business process. Specifically, starting from a BPMN choreography specification, we support the generation and deployment of proper infrastructure, based on smart contracts, that will enable the execution of the multi-party business process on Ethereum or Hyperledger Fabric, according to different non-functional characteristics as detailed in the next section. The proposed methodology is supported by a practical framework, named Multi-Chain, that allows the adoption of blockchain technologies easier. Summing up, the contribution of the paper is twofold. • A model-driven methodology for the generation of different blockchain infrastructures from the same model of a multi-party business process, that is a choreography diagram specification. • The implementation of the methodology in a practical framework to enable the deployment on both Ethereum and Hyperledger Fabric. The work presented here takes advantage of the results reported in the conference paper [7] , where the ChorChain framework is introduced. In particular, in [7] we illustrate how smart contracts can be used to enable the adoption of the Ethereum blockchain to support a multi-party business process. The ChorChain framework, however, has been designed to fit only a single blockchain implementation, i.e. Ethereum, assuming specific needs. Here, we have revised, generalised and extended that approach in order to fit different requirements and multiple blockchain technologies. This results in a more abstract engineering methodology, supported by a practical framework 3 J o u r n a l P r e -p r o o f 1 https://camunda.com/ 2 https://flowable.com/ 4 J o u r n a l P r e -p r o o f 4. The Multi-Chain Methodology This section presents the proposed methodology supported by the Multi-Chain practical framework. The main steps of the methodology and the 9 J o u r n a l P r e -p r o o f J o u r n a l P r e -p r o o f
doi:10.1016/j.bcra.2021.100018 fatcat:uggih6ddsnhn3abcannoo4phvi