The creation of blockchain-based software applications requires today considerable technical knowledge, particularly in software design and programming. This is regarded as a major barrier in adopting this technology in business and making it accessible to a wider audience. As a solution, no-code and low-code approaches have been proposed that require only little or no programming knowledge for creating full-fledged software applications. In this paper we review academic approaches from the discipline of model-driven engineering as well as industrial no-code and low-code development platforms for blockchains. We further present a case study for an integrated no-code blockchain environment for demonstrating the state-of-the-art in this area. Based on the gained insights we derive requirements for the future development of no-code and low-code approaches that are dedicated to the field of blockchains.
For the development of blockchain smart contracts, a structured approach based on the principles of the Model Driven Architecture can be beneficial and facilitate the implementation of smart contracts. This paper presents such an approach, which, in combination with Unified Modeling Language (UML) Class and State machine diagrams, allows the smart contract structure and behavior logic to be modeled in several abstraction layers. This paper delves into details on how the model-to-model transformations from the specified Blockchain Platform Independent Model (PIM) with specified state-like behavior can be used to produce a Solidity Platform Specific Model (PSM). Subsequently, we elaborate on how the Solidity PSM is used for Solidity smart contract code generation by employing model-to-text transformations. The paper also demonstrates the process of our proposed transformations and code generation using smart contract code examples from Solidity documentation. Based on the examples, a Blockchain PIM is specified and transformed to Solidity PSM, which is then used for Solidity smart contract code generation. The generated smart contract code is then compiled, deployed on the Ethereum blockchain JavaScript virtual machine, and compared to the original smart contract code in terms of Solidity code metrics, similarity scores, and execution costs. The evaluation results indicate that our approach could be successfully used to model and later generate smart contract code.
Luca Spalazzi, Francesco Spegni, Alessandra Corneli, Berardo Naticchia
Abstract BPMN choreography is a modeling language capable to describe scenarios where several independent participants have to collaborate in a climate of opposing interests and therefore are forced to trust each other. For this reason, in many contexts, a strong need for transparency, responsibility, and choreography compliance arise by the various participants. Blockchains and smart contracts, thanks to their characteristic of providing a decentralized and consensus‐based validation mechanism, seem to be able to meet these needs in an untrusted scenario. Nevertheless, most of the related work focused either on transparency, accountability, or compliance, but none on all three of them. Furthermore, such works do not take into account the nondeterministc nature of choreographies. This work aims at using blockchains and smart contracts in this scenario providing a formally well‐defined set of tools to match all three the aforementioned requirements. This work applies the proposed techniques to a case study from the construction industry, an economical relevant application domain where the demand for transparency, accountability, and compliance with procurement contracts (that can be modeled as choreographies) is very strong.
Christoph H.-J. Braun, Janina Traue, Boris Lingl, Tobias Käfer
We present an approach for documenting the execution of inter-organisational workflows on a distributed ledger, with the possibility of adding selectively shared verifiable data to the workflow instances' documentation. On data level, we base our approach on semantic workflow and data modelling, augmented with hashing. As system components, we use a distributed ledger as consensus-based shared database for workflow documentation and data verification, and RESTful APIs for sharing data with different privacy and publicity requirements. We evaluate our approach using a load test based in a real-world logistics setting.
Access control management in a System of Systems---i.e., a collaborative environment composed of a multitude of distributed autonomous organizations---is a challenging task. To answer the challenge, in this paper we propose a novel approach that incorporates semantic technologies in the Attribute-Based Access Control (ABAC) approach. Building on the basic principles of ABAC, our approach allows for a highly expressive modeling of the context in which access decisions are made, by providing mechanisms to describe rich relationships among entities, which can evolve over time. In addition, our system works in a truly decentralized manner, which makes it suitable for geographically distributed enterprise systems. We show the feasibility in practice of our approach through some experimental results.
From the graphical representation to the smart contract language: a use case in the construction industry Xuling Ye and Markus König Pages 272-279 (2021 Proceedings of the 38th ISARC, Dubai, UAE, ISBN 978-952-69524-1-3, ISSN 2413-5844) Abstract: With the growing popularity of blockchain technology in the construction industry, smart contracts are becoming increasingly common. A smart contract is a self-executing contract, which contains if-then rules that automatically execute certain processes when certain conditions are met. Such smart contracts serve as programmable blockchain applications. Using blockchain-enabled smart contracts, many processes like construction contracting and payments can be automated. Since research on blockchain-enabled smart contracts in the construction industry is still theoretical, researchers usually assume that users (e.g. clients, contractors) can directly program the conditions in a smart contract. However, it is difficult for stakeholders to program smart contracts themselves due to a lack of knowledge. The smart contracts developed by programmers might not fully represent stakeholders' ideas. Therefore, this paper proposes an approach that illustrates how graphical workflow notations (e.g. BPMN, YAWL) can be translated into smart contract programming languages (e.g. Solidity, Vyper). In this way, non-programmers can also design and generate their own smart contracts. To test the feasibility of this approach, an illustrative example is presented for generating smart contracts displaying automated the reporting, checking and payment process of construction works. In particular, the smart contracts in this example are translated from YAWL graphical representations into Solidity smart contract languages. Finally, improvements and further developments of the approach are discussed in several aspects. Keywords: process modeling; smart contract; blockchain; construction industry DOI: https://doi.org/10.22260/ISARC2021/0039 Download fulltext Download BibTex Download Endnote (RIS) TeX Import to Mendeley
Scalability, privacy, and interoperability are some of the major issues receiving attention in research on blockchain technologies. We concentrate on the trade finance vertical for which we develop a new modeling approach with the objective of automatic transformation of an application, represented using Business Process Model and Notation (BPMN), into a smart contract deployed on a blockchain. Here, we describe how the BPMN model is transformed into a multimodal model that combines DE-HSM modeling. We provide a high-level overview of the method and review how BPMN categories of elements are transformed into a multi-modal DE-HSM model. We also describe briefly how the DE-FMS model is automatically transformed into deployable smart contracts that interact to form a distributed application: The smart contract deployed on the main blockchain coordinates activities amongst the business partners and interoperates with smart contracts, also automatically prepared and deployed on a sidechain(s), with one smart contract per individual business partner. Privacy is obtained by performing activities, which are not germane to the collaboration with the other business partners but deal with the private activities of the individual business partner, in a smart contract deployed and executed on a side chain. We thus provide for interoperability of smart contracts and privacy as private activities of a business partner are performed in a smart contract on a private sidechain.
Miguel Morales‐Sandoval, J. A. Llorens Molina, Heidy M. Marin-Castro, J. L. Gonzalez‐Compean
In an Inter-Organizational Business Process (IOBP), independent organizations (collaborators) exchange messages to perform business transactions. With process mining, the collaborators could know what they are actually doing from process execution data and take actions for improving the underlying business process. However, process mining assumes that the knowledge of the entire process is available, something that is difficult to achieve in IOBPs since process execution data generally is not shared among the collaborating entities due to regulations and confidentiality policies (exposure of customers’ data or business secrets). Additionally, there is an inherently lack-of-trust problem in IOBP as the collaborators are mutually untrusted and executed IOBP can be subject to dispute on counterfeiting actions. Recently, Blockchain has been suggested for IOBP execution management to mitigate the lack-of-trust problem. Independently, some works have suggested the use of Blockchain to support process mining tasks. In this paper, we study and address the problem of IOBP mining whose management and execution is supported by Blockchain. As contribution, we present an approach that takes advantage of Blockchain capabilities to tackle, at the same time, the lack-of-trust problem (management and execution) and confident execution data collection for process mining (discovery and conformance) of IOBPs. We present a method that (i) ensures the business rules for the correct execution and monitoring of the IOBP by collaborators, (ii) creates the event log, with data cleaning integrated, at the time the IOBP executes, and (iii) produces useful event log in XES and CSV format for the discovery and conformance checking tasks in process mining. By a set of experiments on real IOBPs, we validate our method and evaluate its impact in the resulting discovered models (fitness and precision metrics). Results revealed the effectiveness of our method to cope with both the lack-of-trust problem in IOBPs at the time that contributes to collect the data for process mining. Our method was implemented as a software tool available to the community as open-source code.
Amit K. Chopra, Samuel H. Christie, Munindar P. Singh
Interaction-Oriented Programming (IOP) refers to multiagent concepts, languages, and programming models for engineering applications that are characterized by interactions between autonomous parties. Such applications arise in domains such as e-commerce, health care, and finance. Owing to the autonomy of the principals involved, such applications are conceptually decentralized. We demonstrate how to specify a decentralized application flexibly and how to engineer correct, fault-tolerant endpoints (agents) for the principals in a straightforward manner. Notably, the entire application is realized as agents communicating over an unordered, unreliable messaging infrastructure (our implementations in fact use UDP). IOP departs from traditional distributed systems approaches that rely on guarantees in the application's communication infrastructure, e.g., for ordering and fault tolerance. Notably, IOP shows how to address application semantics, the holy grail of distributed systems.
Flavio Corradini, Alessandro Marcelletti, Andrea Morichetta, Andrea Polini · 7 authors
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 multi-party 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 technologies, 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 model-driven 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 Business Process Modelling Notation (BPMN) choreography diagram a blockchain infrastructure ready to be used. This overcomes the need to get acquainted with many details of the specific technology.
Dennis Lamken, Tobias Wagner, Tim Hoiss, Karl Seidenfad · 7 authors
The design and implementation of a blockchain as an infrastructure for a supply chain with efficient tracking and tracing is a recurring software design problem. The design pattern "Blockchain Data Management (BCDM)" provides a meta-model, chaincode for data object management and a REST-API for integration in a supply chain infrastructure. The analysis is grounded in the experiences of the NutriSafe research project with its scenarios and its use of the Hyperledger Fabric framework as technical platform.
Recently, Blockchain technology adoption has expanded to many application areas due to the evolution of smart contracts. However, developing smart contracts is non-trivial and challenging due to the lack of tools and expertise in this field. A promising solution to overcome this issue is to use Model-Driven Engineering (MDE), however, using models still involves a learning curve and might not be suitable for non-technical users. To tackle this challenge, chatbot or conversational interfaces can be used to assess the non-technical users to specify a smart contract in gradual and interactive manner. In this paper, we propose iContractBot, a chatbot for modeling and developing smart contracts. Moreover, we investigate how to integrate iContractBot with iContractML, a domain-specific modeling language for developing smart contracts, and instantiate intention models from the chatbot. The iContractBot framework provides a domain-specific language (DSL) based on the user intention and performs model-to-text transformation to generate the smart contract code. A smart contract use case is presented to demonstrate how iContractBot can be utilized for creating models and generating the deployment artifacts for smart contracts based on a simple conversation.
ABSTRACT The formalization of the REA2 ontology presented in this paper offers a minimal set of operationalized semantics for a single white-box model relevant to all business stakeholders independent of their role or involvement in economic activities. This paper's theoretical innovations are the use of MERODE to model increment and decrement semantics as fundamental stand-alone concepts that simultaneously affect economic resources, event, agents, and the semantics of the stock-flow, participation, and ownership associations and the formalization of the REA axioms as executable finite state machines. MERODE's possibilities for model execution through fast prototyping allowed validation through the modeling of an archetypical exchange scenario. Both innovations contribute to the reliability of a generic semantic model for finance and logistics in both the traditional, as well as the sharing, economy, thus promoting traceability and accountability in value networks and supply chains supported by both centralized and decentralized ledger technologies.
Distributed ledger technology (DLT) has been designed to ensure the correctness and integrity of transaction and process management. A ledger maintains records of data transactions as well as assures the correct execution of processes attached to data. Consistency across processes and parties is achieved by means of consensus building. However, scalability is a major concern when and significant amounts of data need confirmation. When digitalizing existing business processes with serious amounts of data, scalability becomes a pivotal objective. Hence, technical means for information compression become a vital asset. This paper presents a novel approach for data aggregation. On the one hand, data are aggregated in order to merely maintain an audit certificate of the aggregate on the ledger. On the other hand, provenance of raw data aggregated can be traced and proven correctly. Hence, audit services for information exchange in business relationships can scale, while raw data of supplier parties must not be unveiled in detail. We present a novel architecture for efficient data aggregation, while ensuring smart contracts and their main functionality of processing relevant process data. German waterway transportation serves as evaluation scenario. Moreover, decentral identity management is introduced as anchor element of our DLT-enabled ecosystem for business collaboration. Hence, preserving sovereignty and safety of personal data can be assured for M2M economies.
Summary In smart home systems (SHS), devices intercommunicate to create an intelligent environment that can monitor the inhabitant's health state and provide adapted services. However, existing health monitoring systems (HMS) do not provide adapted services to the patient autonomy degree. Furthermore, in these critical systems, the Quality of Service (QoS) aspect is very important; therefore, service level agreements (SLA) are the best solution to define and guarantee the expected QoS levels, nevertheless, existing SLA specification languages lack expressiveness in terms of user preference specification, dynamic service management and pricing. In this work, we propose an elderly health state‐aware SHS to offer adapted services according to the elderly health state, it is based on three main parts: (a) the functional autonomy measurement system (SMAF) for calculating the inhabitant's profile or autonomy degree, (b) domain‐specific language (DSL) for SLA that aims to increase patient‐awareness through the use of preferences, facilitate the SLA management using microservices, and manage the QoS dynamically using multilevel SLA (ML‐SLA) concept, and (c) smart contracts for the provision of adapted services and the verification of SLA terms.
Με την παρούσα μεταπτυχιακή εργασία θα μελετήσουμε τις βασικές έννοιες του blockchain, των smart contracts καθώς και την ασφάλεια των τελευταίων. Tα smart contracts καταλαμβάνουν πολλούς τομείς της βιομηχανίας προκειμένου να αυτοματοποιηθούν οι διαδικάσιες και να εξαλειφθεί ο εξωτερικός διαμεσολαβητής. Συνεπώς, η ασφάλεια τους λαμβάνει όλο και μεγαλύτερη αξία και προσοχή. Θα αναλύσουμε γνωστές ευπάθειες των smart contracts και τρόπους αποφυγής τους με έμφαση στα εργαλεία στατικής ανάλυσης.
Fredrik Milani, Luciano García‐Bañuelos, Svitlana Filipova, Mariia Markovska
Purpose Blockchain technology is increasingly positioned as a promising and disruptive technology. Such a promise has attracted companies to explore how blockchain technology can be used to gain significant benefits. Process models play a cardinal role when seeking to improve business processes as they are the foundation of process analysis and redesign. This paper examines how blockchain-oriented processes can be conceptually modelled with activity- (BPMN) and artifact-centric (CMMN) modelling paradigms. Design/methodology/approach This paper discusses how commonly occurring patterns, specific to block-chain-based applications, can be modelled with BPMN and CMMN. Furthermore, the advantages and disadvantages of both notations for accurately representing blockchain-specific patterns are discussed. Findings The main finding of this paper is that neither BPMN nor CMMN can adequately and accurately represent certain patterns specific for blockchain-oriented processes. BPMN, while supporting most of the patterns, does not provide sufficient support to represent tokenization. CMMN, on the other hand, does not provide support to distinguish between activities executed and data stored on-chain versus off-chain. Originality/value The paper provides insight into the strengths and weaknesses of BPMN and CMMN for modelling processes to be supported by blockchain. This will serve to aid analysts to produce better process models for communication purposes and, thereby, facilitate development of blockchain-based solutions.
Université du Luxembourg, Gilbert Fridgen, Sven Radszuwill, André Schweizer · 5 authors
In the financial services industry, many people assume blockchain to have significant impacts. From research and practice, we observe two main paradigms of how organizations interact with blockchain. First, organizations use blockchain to optimize existing processes (blockchain-based business process optimization (BPO)). Second, organizations use blockchain to disrupt existing processes, foster disintermediation, and enable disruptive business models (blockchain-based business process disruption (BPD)). However, we lack scientific research that evaluates its de facto potential. We bridge this gap by following a design science research approach to design blockchain-based business process re-engineering (BPRE) for a letter of credit that combines the advantages of BPO and BPD. We conduct three design cycles and develop three artefacts: a BPO, a BPD, and a BPRE approach. Our BPRE approach combines the advantages of partial disintermediation (i.e., increased efficiency and transparency) with the advantages of intermediaries (i.e., process flexibility, liquidity provision, and dispute mediation).