skip to main content
10.1145/3341105.3373988acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

Engineering trustable choreography-based systems using blockchain

Published: 30 March 2020 Publication History

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.

References

[1]
Aldazabal, A., Baily, T., Nanclares, F., Sadovykh, A., Hein, C., and Ritter, T. Automated model driven development processes. In Model Driven Tool and Process Integration (2008), Fraunhofer IRB Verlag, pp. 361 -- 375.
[2]
Ali, M., De Angelis, G., and Polini, A. Servicepot-an extensible registry for choreography governance. In 7th International Symposium on Service-Oriented System Engineering (2013), IEEE, pp. 113--124.
[3]
Almeida, S., Albuquerque, A., and Silva, A. An approach to develop software that uses blockchain. In Software Engineering and Algorithms in Intelligent Systems (2018), vol. 763 of AISC, Springer, pp. 346--355.
[4]
Autili, M., Di Salle, A., Gallo, F., Pompilio, C., and Tivoli, M. Model-driven adaptation of service choreographies. In 33rd Annual ACM Symposium on Applied Computing (2018), ACM, pp. 1441--1450.
[5]
Autili, M., Gallo, F., Inverardi, P., Pompilio, C., and Tivoli, M. Introducing trust in service-oriented distributed systems through blockchain. In International Workshop on Governing Adaptive and Unplanned Systems of Systems (2019).
[6]
Autili, M., Inverardi, P., and Tivoli, M. Choreos: Large scale choreographies for the future internet. In 2014 Software Evolution Week - IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (2014), pp. 391--394.
[7]
Benyagoub, S., Ouederni, M., Aït-Ameur, Y., and Mashkoor, A. Incremental construction of realizable choreographies. In NASA Formal Methods Symposium (2018), vol. 10811 of LNCS, Springer, pp. 1--19.
[8]
Carminati, B., Ferrari, E., and Rondanini, C. Blockchain as a platform for secure inter-organizational business processes. In Collaboration and Internet Computing (2018), IEEE, pp. 122--129.
[9]
Carminati, B., Rondanini, C., and Ferrari, E. Confidential business process execution on blockchain. In Web Services (2018), IEEE, pp. 58--65.
[10]
Corradini, F., Morichetta, A., Polini, A., Re, B., and Tiezzi, F. Collaboration vs. choreography conformance in BPMN 2.0: From theory to practice. In EDOC (2018), IEEE Computer Society, pp. 95--104.
[11]
Fridgen, G., Radszuwill, S., Urbach, N., and Utz, L. Cross-organizational workflow management using blockchain technology - towards applicability, auditability, and automation. In Hawaii International Conference on System Sciences (2018), AIS Electronic Library, pp. 1--10.
[12]
García-Bañuelos, L., Ponomarev, A., Dumas, M., and Weber, I. Optimized execution of business processes on blockchain. In Business Process Management (2017), vol. 10445 of LNCS, Springer, pp. 130--146.
[13]
Hanada, Y., Hsiao, L., and Levis, P. Smart contracts for machine-to-machine communication: Possibilities and limitations. In Internet of Things and Intelligence System (2018), IEEE, pp. 130--136.
[14]
Kosba, A., Miller, A., Shi, E., Wen, Z., and Papamanthou, C. Hawk: The blockchain model of cryptography and privacy-preserving smart contracts. In IEEE symposium on security and privacy (2016), pp. 839--858.
[15]
Ladleif, J., Weske, M., and Weber, I. Modeling and enforcing blockchain-based choreographies. In BPM (2019), vol. 11675 of LNCS, Springer, pp. 69--85.
[16]
López-Pintado, O., Dumas, M., García-Bañuelos, L., and Weber, I. Dynamic role binding in blockchain-based collaborative business processes. In Advanced Information Systems Engineering (2019), vol. 11483 of LNCS, Springer, pp. 399--414.
[17]
López-Pintado, O., Dumas, M., García-Bañuelos, L., and Weber, I. Interpreted execution of business process models on blockchain. ArXiv abs/1906.01420 (2019).
[18]
López-Pintado, O., Dumas, M., and Weber, I. Caterpillar: A blockchain-based business process management system. In BPM Demo Track and BPM Dissertation Award (2017), vol. 1920, CEUR-WS.org.
[19]
López-Pintado, O., García-Bañuelos, L., Dumas, M., Weber, I., and Ponomarev, A. CATERPILLAR: A business process execution engine on the ethereum blockchain. CoRR abs/1808.03517 (2018).
[20]
Madsen, M. F., Gaub, M., Høgnason, T., Kirkbro, M. E., Slaats, T., and Debois, S. Collaboration among adversaries: distributed workflow execution on a blockchain. In Symposium on Foundations and Applications of Blockchain (2018).
[21]
Marrocco, L., Ferrer, E. C., Bucchiarone, A., Grignard, A., Alonso, L., Larson, K., et al. Basic: Towards a blockchained agent-based simulator for cities. In Massively Multiagent Systems (2018), vol. 11422 of LNCS, Springer, pp. 144--162.
[22]
Mendling, J., Weber, I., and et al. Blockchains for business process management - challenges and opportunities. ACM Transactions on Management Information Systems 9, 1 (2018), 1--16.
[23]
OMG. Business Process Model and Notation, 2011.
[24]
Pastor, O. Model-driven development in practice: From requirements. In Theory and Practice of Computer Science, vol. 10139 of LNCS. Springer, 2017, pp. 405--410.
[25]
Porru, S., Pinna, A., Marchesi, M., and Tonelli, R. Blockchain-oriented software engineering: challenges and new directions. In Software Engineering Companion (2017), IEEE/ACM, pp. 169--171.
[26]
Rocha, H., and Ducasse, S. Preliminary steps towards modeling blockchain oriented software. In Emerging Trends in Software Engineering for Blockchain (2018), ACM, pp. 52--57.
[27]
Schurr, P. H., and Ozanne, J. L. Influences on exchange processes: Buyers' preconceptions of a seller's trustworthiness and bargaining toughness. Journal of consumer research 11, 4 (1985), 939--953.
[28]
Sturm, C., Szalanczi, J., Schönig, S., and Jablonski, S. A lean architecture for blockchain based decentralized process execution. In Business Process Management Workshops (2018), vol. 342 of LNBIP, Springer, pp. 361--373.
[29]
Tran, A. B., Lu, Q., and Weber, I. Lorikeet: A model-driven engineering tool for blockchain-based business process execution and asset management. In BPM Dissertation Award, Demonstration, and Industrial Track (2018), vol. 2196, CEUR-WS.org, pp. 56--60.
[30]
Weber, I., Xu, X., Riveret, R., Governatori, G., Ponomarev, A., and Mendling, J. Untrusted business process monitoring and execution using blockchain. In Business Process Management (2016), vol. 9850 of LNCS, Springer, pp. 329--347.
[31]
Wessling, F., and Gruhn, V. Engineering software architectures of blockchain-oriented applications. In Software Architecture Companion (2018), IEEE, pp. 45--46.
[32]
Wood, G. Ethereum: A secure decentralised generalised transaction ledger. Tech. rep., Ethereum Yellow Paper, 2014.
[33]
Xu, X., Lu, Q., Liu, Y., Zhu, L., Yao, H., and Vasilakos, A. V. Designing blockchain-based applications a case study for imported product traceability. Future Generation Computer Systems 92 (2019), 399--406.
[34]
Zhang, F., Cecchetti, E., Croman, K., Juels, A., and Shi, E. Town crier: An authenticated data feed for smart contracts. In Computer and Communications Security (2016), ACM, pp. 270--282.
[35]
Zyskind, G., Nathan, O., and Pentland, A. Decentralizing privacy: Using blockchain to protect personal data. In Security and Privacy (2015), IEEE Computer Society, pp. 180--184.

Cited By

View all
  • (2024)Coordinating REST Interactions in Service Choreographies using BlockchainBlockchain: Research and Applications10.1016/j.bcra.2024.100241(100241)Online publication date: Dec-2024
  • (2024)Smart Contract Generation Supporting Multi-instance for Inter-Organizational Process CollaborationComputer Supported Cooperative Work and Social Computing10.1007/978-981-99-9640-7_29(390-405)Online publication date: 5-Jan-2024
  • (2024)Smart Contracts’ Upgradability for Flexible Business ProcessesBusiness Process Management: Blockchain, Robotic Process Automation, Central and Eastern European, Educators and Industry Forum10.1007/978-3-031-70445-1_4(55-70)Online publication date: 1-Sep-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '20: Proceedings of the 35th Annual ACM Symposium on Applied Computing
March 2020
2348 pages
ISBN:9781450368667
DOI:10.1145/3341105
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 30 March 2020

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Conference

SAC '20
Sponsor:
SAC '20: The 35th ACM/SIGAPP Symposium on Applied Computing
March 30 - April 3, 2020
Brno, Czech Republic

Acceptance Rates

Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Upcoming Conference

SAC '25
The 40th ACM/SIGAPP Symposium on Applied Computing
March 31 - April 4, 2025
Catania , Italy

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)40
  • Downloads (Last 6 weeks)3
Reflects downloads up to 20 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Coordinating REST Interactions in Service Choreographies using BlockchainBlockchain: Research and Applications10.1016/j.bcra.2024.100241(100241)Online publication date: Dec-2024
  • (2024)Smart Contract Generation Supporting Multi-instance for Inter-Organizational Process CollaborationComputer Supported Cooperative Work and Social Computing10.1007/978-981-99-9640-7_29(390-405)Online publication date: 5-Jan-2024
  • (2024)Smart Contracts’ Upgradability for Flexible Business ProcessesBusiness Process Management: Blockchain, Robotic Process Automation, Central and Eastern European, Educators and Industry Forum10.1007/978-3-031-70445-1_4(55-70)Online publication date: 1-Sep-2024
  • (2023)RESTChain: a Blockchain-based Mediator for REST Interactions in Service ChoreographiesProceedings of the 38th ACM/SIGAPP Symposium on Applied Computing10.1145/3555776.3577826(245-248)Online publication date: 27-Mar-2023
  • (2023)An analysis of the Oracles used in Ethereum’s blockchain2023 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER56733.2023.00106(878-885)Online publication date: Mar-2023
  • (2023)A study on Diem and Aptos distributed ledger technologyInternational Journal of Parallel, Emergent and Distributed Systems10.1080/17445760.2023.2217486(1-17)Online publication date: 21-Jul-2023
  • (2023)A Flexible Approach to Multi-party Business Process Execution on BlockchainFuture Generation Computer Systems10.1016/j.future.2023.05.006147:C(219-234)Online publication date: 1-Oct-2023
  • (2023)Blockchain-based collaborative business process data sharing and access controlJournal of Reliable Intelligent Environments10.1007/s40860-023-00212-w10:1(3-17)Online publication date: 2-Nov-2023
  • (2023)ReSuMo: a regression strategy and tool for mutation testing of solidity smart contractsSoftware Quality Journal10.1007/s11219-023-09637-132:1(225-253)Online publication date: 17-Jun-2023
  • (2023)Design of blockchain-based applications using model-driven engineering and low-code/no-code platforms: a structured literature reviewSoftware and Systems Modeling (SoSyM)10.1007/s10270-023-01109-122:6(1857-1895)Online publication date: 1-Dec-2023
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media