Model-driven development of asynchronous message-driven architectures with AsyncAPI

被引:5
作者
Gomez, Abel [1 ]
Iglesias-Urkia, Markel [2 ]
Belategi, Lorea [2 ]
Mendialdua, Xabier [2 ]
Cabot, Jordi [3 ]
机构
[1] Univ Oberta Catalunya UOC, Internet Interdisciplinary Inst IN3, Barcelona, Spain
[2] Basque Res & Technol Alliance BRTA, Ikerlan Technol Res Ctr, Arrasate Mondragon, Spain
[3] Univ Oberta Catalunya UOC, ICREA Internet Interdisciplinary Inst IN3, Barcelona, Spain
关键词
Publish; subscribe; Cyber-physical systems (CPS); Message-driven architectures; Asynchronous communication; AsyncAPI; Industrial Internet of Things (IIoT); OPC UA; INTERNET; THINGS; IOT;
D O I
10.1007/s10270-021-00945-3
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In the Internet-of-Things (IoT) vision, everyday objects evolve into cyber-physical systems. The massive use and deployment of these systems has given place to the Industry 4.0 or Industrial IoT (IIoT). Due to its scalability requirements, IIoT architectures are typically distributed and asynchronous. In this scenario, one of the most widely used paradigms is publish/subscribe, where messages are sent and received based on a set of categories or topics. However, these architectures face interoperability challenges. Consistency in message categories and structure is the key to avoid potential losses of information. Ensuring this consistency requires complex data processing logic both on the publisher and the subscriber sides. In this paper, we present our proposal relying on AsyncAPI to automate the design and implementation of these asynchronous architectures using model-driven techniques for the generation of (part of) message-driven infrastructures. Our proposal offers two different ways of designing the architectures: either graphically, by modeling and annotating the messages that are sent among the different IoT devices, or textually, by implementing an editor compliant with the AsyncAPI specification. We have evaluated our proposal by conducting a set of experiments with 25 subjects with different expertise and background. The experiments show that one-third of the subjects were able to design and implement a working architecture in less than an hour without previous knowledge of our proposal, and an additional one-third estimated that they would only need less than two hours in total.
引用
收藏
页码:1583 / 1611
页数:29
相关论文
共 50 条
[21]   Towards Model-Driven Simulation of the Internet of Things [J].
Brumbulli, Mihal ;
Gaudin, Emmanuel .
COMPLEX SYSTEMS DESIGN & MANAGEMENT ASIA: SMART NATIONS - SUSTAINING AND DESIGNING, CSD&M ASIA 2016, 2016, 426 :17-29
[22]   Model-Driven Development for Internet of Things: Towards Easing the Concerns of Application Developers [J].
Pal, Arpan ;
Mukherjee, Arijit ;
Balamuralidhar, P. .
INTERNET OF THINGS: USER-CENTRIC IOT, PT I, 2015, 150 :339-346
[23]   Development and Evaluation of a Model-Driven System to Support Mobile Learning in Field Trips [J].
Marcal, Edgar ;
de Castro Andrade, Rossana Maria ;
Viana, Windson .
JOURNAL OF UNIVERSAL COMPUTER SCIENCE, 2017, 23 (12) :1147-1171
[24]   Design and Analysis of IoT Applications: A Model-Driven Approach [J].
Costa, Bruno ;
Pires, Paulo F. ;
Delicato, Flavia C. ;
Li, Wei ;
Zomaya, Albert Y. .
2016 IEEE 14TH INTL CONF ON DEPENDABLE, AUTONOMIC AND SECURE COMPUTING, 14TH INTL CONF ON PERVASIVE INTELLIGENCE AND COMPUTING, 2ND INTL CONF ON BIG DATA INTELLIGENCE AND COMPUTING AND CYBER SCIENCE AND TECHNOLOGY CONGRESS (DASC/PICOM/DATACOM/CYBERSC, 2016, :392-399
[25]   Model-driven scheduling for distributed stream processing systems [J].
Shukla, Anshu ;
Simmhan, Yogesh .
JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2018, 117 :98-114
[26]   Towards Feedback Loops in Model-Driven IoT Applications [J].
Del Gaudio, Daniel ;
Hirmer, Pascal .
SERVICE-ORIENTED COMPUTING, SUMMERSOC 2021, 2021, 1429 :100-108
[27]   RAIDAD: A model-driven framework for automated and agile development of IoT data analysis software [J].
Gholami, Mohsen ;
Zamani, Bahman ;
Ghahfarokhi, Behrouz Shahgholi .
INFORMATION AND SOFTWARE TECHNOLOGY, 2025, 187
[28]   HealMA: a model-driven framework for automatic generation of IoT-based Android health monitoring applications [J].
Mehrabi, Maryam ;
Zamani, Bahman ;
Hamou-Lhadj, Abdelwahab .
AUTOMATED SOFTWARE ENGINEERING, 2022, 29 (02)
[29]   CHESSIoT: A model-driven approach for engineering multi-layered IoT systems [J].
Ihirwe, Felicien ;
Di Ruscio, Davide ;
Gianfranceschi, Simone ;
Pierantonio, Alfonso .
JOURNAL OF COMPUTER LANGUAGES, 2024, 78
[30]   Design, code generation and simulation of IoT environments with mobility devices by using model-driven development: SimulateIoT-Mobile [J].
Barriga, Jose A. ;
Clemente, Pedro J. ;
Perez-Toledano, Miguel A. ;
Jurado-Malaga, Elena ;
Hernandez, Juan .
PERVASIVE AND MOBILE COMPUTING, 2023, 89