iContractML 2.0: A domain-specific language for modeling and deploying smart contracts onto multiple blockchain platforms

被引:23
|
作者
Hamdaqa, Mohammad [1 ,2 ]
Met, Lucas Alberto Pineda [2 ]
Qasse, Ilham [2 ]
机构
[1] Polytech Montreal, Dept Comp & Software Engn, Montreal, PQ, Canada
[2] Reykjavik Univ, Dept Comp Sci, Reykjavik, Iceland
基金
芬兰科学院;
关键词
Smart contracts; Blockchain; Model -driven engineering; Ethereum; Hyperledger fabric; DAML; Azure;
D O I
10.1016/j.infsof.2021.106762
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Context: Smart contracts play a vital role in many fields. Despite being called smart, the development of smart contracts is a tedious task beyond defining a set of contractual rules. In addition to business knowledge, coding a smart contract requires strong technical knowledge in a multiplex of new and rapidly changing domain-specific languages and blockchain platforms. Objectives: The goal of this paper is to assist developers in building smart contracts independently from the language or the target blockchain platform. In which, we present our second-generation smart contract language iContractML 2.0. Methods: We follow a feature-oriented approach to analyze three different blockchain platforms and propose an enhanced reference model and a modeling framework for smart contracts (iContractML 2.0). Then, we evaluate the coverage and extensibility of iContractML 2.0, first through mapping the concepts of the reference models to the constructs within each of the platforms used in devising the reference model, and second through mapping its concepts to a new smart contract language not previously considered. Finally, we demonstrate the capabilities of iContractML 2.0 using five case studies from different business domains. Results: iContractML 2.0 extends our first generation language to support DAML, which is another standardized language for smart contracts. This makes iContractML 2.0 supports the platforms that DAML support by extension. Moreover, iContractML 2.0 supports generating the structural and deployment artifacts in addition to the smart contract behavior by implementing templates for some of the common functions. The results of evaluating the generality of the iContractML 2.0 reference model show that it is 91.7% lucid and 72.2% laconic. Moreover, the reference model is able to capture all the elements of the new language with 83.3% of the components which have a direct one-to-one mapping. Conclusion: iContractML 2.0 is an extensible framework that empowers developers to model and generate functional smart contract code that can be deployed onto multiple blockchain platforms.
引用
收藏
页数:14
相关论文
共 50 条
  • [1] Das Contract - A Visual Domain Specific Language for Modeling Blockchain Smart Contracts
    Skotnica, Marek
    Pergl, Robert
    ADVANCES IN ENTERPRISE ENGINEERING XIII, EEWC 2019, 2020, 374 : 149 - 166
  • [2] From Domain-Specific Language to Code: Smart Contracts and the Application of Design Patterns
    Woehrer, Maximilian
    Zdun, Uwe
    IEEE SOFTWARE, 2020, 37 (05) : 37 - 42
  • [3] SmartHomeML: Towards a Domain-Specific Modeling Language for Creating Smart Home Applications
    Einarsson, Atli F.
    Patreksson, Patrekur
    Hamdaqa, Mohammad
    Hamou-Lhadj, Abdelwahab
    2017 IEEE 2ND INTERNATIONAL CONGRESS ON INTERNET OF THINGS (IEEE ICIOT), 2017, : 82 - 88
  • [4] Framework for domain-specific modeling language development
    Grant, ES
    Reza, H
    SERP'04: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING RESEARCH AND PRACTICE, VOLS 1 AND 2, 2004, : 183 - 187
  • [5] ServML - A Domain-Specific Modeling Language as an Extension of SysML to Model Smart Service Systems
    Marx, Emanuel
    2022 IEEE 24TH CONFERENCE ON BUSINESS INFORMATICS (CBI 2022), VOL 1, 2022, : 100 - 107
  • [6] An Approach of Defining Domain Constraints for Domain-Specific Modeling Language
    Jiang, Tao
    Zhou, Weihong
    INTERNATIONAL JOURNAL OF PATTERN RECOGNITION AND ARTIFICIAL INTELLIGENCE, 2021, 35 (09)
  • [7] Towards deploying model-based testing with a domain-specific modeling approach
    Katara, Mika
    Kervinen, Antti
    Maunumaa, Mika
    Paakkonen, Tuula
    Satama, Mikko
    TAIC PART - TESTING: ACADEMIC & INDUSTRIAL CONFERENCE - PRACTICE AND RESEARCH TECHNIQUES, PROCEEDINGS, 2006, : 81 - +
  • [8] SmartScript - A Domain-Specific Language for Appliance Control in Smart Grids
    Adolf, Diego
    Ferranti, Ettore
    Koch, Stephan
    2012 IEEE THIRD INTERNATIONAL CONFERENCE ON SMART GRID COMMUNICATIONS (SMARTGRIDCOMM), 2012, : 465 - 470
  • [9] Canopus: A Domain-Specific Language for Modeling Performance Testing
    Bernardino, Maicon
    Zorzo, Avelino F.
    Rodrigues, Elder M.
    2016 9TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST), 2016, : 157 - 167
  • [10] BayesLDM: A Domain-specific Modeling Language for Probabilistic Modeling of Longitudinal Data
    Tung, Karine
    De La Torre, Steven
    El Mistiri, Mohamed
    De Braganca, Rebecca Braga
    Hekler, Eric
    Pavel, Misha
    Rivera, Daniel
    Klasnja, Pedja
    Spruijt-Metz, Donna
    Marlin, Benjamin M.
    2022 IEEE/ACM CONFERENCE ON CONNECTED HEALTH: APPLICATIONS, SYSTEMS AND ENGINEERING TECHNOLOGIES (CHASE 2022), 2022, : 78 - 90