The adoption of model-driven engineering methodologies contributes to reduce the complexity of developing distributed systems. A key point to master such complexity is the use of modelling languages, such as the BPMN standard. This permits to specify choreography diagrams describing, from a global point of view, the interactions that should occur among distributed components in order to reach given goals. Even though BPMN choreographies are promising to increase business possibilities, their concrete adoption has been challenging and faced complex hurdles. On the one hand, there is a lack of concrete support to the different phases of the choreography life-cycle, especially in relation to the choreography execution. Another obstacle consists in the lack of distributed infrastructures allowing the participants involved in the cooperation to trust each other, and in particular to get enough guarantees that all of them will behave as prescribed by the choreography model. In this paper, we face such challenges by proposing a methodology and a related model-driven framework, named ChorChain, that are based on the blockchain technology. We provide support to the whole life-cycle of choreographies, from their modelling to their distributed execution. More specifically, ChorChain takes as input a BPMN choreography model and automatically translates it in a Solidity smart contract. Such a contract will permit to enforce the interactions among the cooperating participants, so to satisfy the prescriptions reported in the starting model. The methodology and the framework have been evaluated through experiments conducted on the Rinkeby Ethereum Testnet.
Engineering Trustable Choreography-based Systems Using Blockchain
Corradini Flavio;Marcelletti Alessandro;Morichetta Andrea;Polini Andrea;Re Barbara;Tiezzi Francesco
2020-01-01
Abstract
The adoption of model-driven engineering methodologies contributes to reduce the complexity of developing distributed systems. A key point to master such complexity is the use of modelling languages, such as the BPMN standard. This permits to specify choreography diagrams describing, from a global point of view, the interactions that should occur among distributed components in order to reach given goals. Even though BPMN choreographies are promising to increase business possibilities, their concrete adoption has been challenging and faced complex hurdles. On the one hand, there is a lack of concrete support to the different phases of the choreography life-cycle, especially in relation to the choreography execution. Another obstacle consists in the lack of distributed infrastructures allowing the participants involved in the cooperation to trust each other, and in particular to get enough guarantees that all of them will behave as prescribed by the choreography model. In this paper, we face such challenges by proposing a methodology and a related model-driven framework, named ChorChain, that are based on the blockchain technology. We provide support to the whole life-cycle of choreographies, from their modelling to their distributed execution. More specifically, ChorChain takes as input a BPMN choreography model and automatically translates it in a Solidity smart contract. Such a contract will permit to enforce the interactions among the cooperating participants, so to satisfy the prescriptions reported in the starting model. The methodology and the framework have been evaluated through experiments conducted on the Rinkeby Ethereum Testnet.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.