2022
|
Journal ArticleAbel Gómez, Markel Iglesias-Urkia, Lorea Belategi, Xabier Mendialdua, Jordi Cabot Model-driven development of asynchronous message-driven architectures with AsyncAPI In: Software and Systems Modeling, vol. 21, pp. 1583–1611 , 2022. Abstract | Links | BibTeX | Tags: AsyncAPI, Cyber-Physical Systems (CPS), Internet of Things (IoT), Publish-Subscribe @article{Gomez:SoSym:2021,
title = {Model-driven development of asynchronous message-driven architectures with AsyncAPI},
author = {Abel G\'{o}mez and Markel Iglesias-Urkia and Lorea Belategi and Xabier Mendialdua and Jordi Cabot},
doi = {10.1007/s10270-021-00945-3},
year = {2022},
date = {2022-08-01},
urldate = {2022-08-01},
journal = {Software and Systems Modeling},
volume = {21},
pages = {1583\textendash1611 },
publisher = {Springer Science and Business Media LLC},
abstract = {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.},
keywords = {AsyncAPI, Cyber-Physical Systems (CPS), Internet of Things (IoT), Publish-Subscribe},
pubstate = {published},
tppubtype = {article}
}
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. Full Text AvailableOpen Access |
ConferenceAbel Gómez, Jordi Cabot, Xavier Pi Hacia la (semi)automatización en la Industria 4.0 mediante UML y AsyncAPI Actas de las XXVI Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2022), SISTEDES, 2022. Abstract | Links | BibTeX | Tags: AsyncAPI, Industry, Model Transformation (MT), Publish-Subscribe, UML Profiles, Unified Modeling Language (UML) @conference{Gomez:JISBD:2022,
title = {Hacia la (semi)automatizaci\'{o}n en la Industria 4.0 mediante UML y AsyncAPI},
author = {Abel G\'{o}mez and Jordi Cabot and Xavier Pi},
editor = {A. Go\~{n}i Sarriguren},
url = {http://hdl.handle.net/11705/JISBD/2022/572},
year = {2022},
date = {2022-01-01},
urldate = {2022-01-01},
booktitle = {Actas de las XXVI Jornadas de Ingenier\'{i}a del Software y Bases de Datos (JISBD 2022)},
publisher = {SISTEDES},
abstract = {El uso y despliegue de los llamados sistemas ciberf\'{i}sicos ha calado profundamente en la industria, dando lugar a la Industria 4.0. T\'{i}picamente, las arquitecturas de la Industria 4.0 muestran un acoplamiento muy bajo entre sus componentes, siendo distribuidas, as\'{i}ncronas, y gui\'{a}ndose la comunicaci\'{o}n por eventos. Estas caracter\'{i}sticas, diferentes de las de arquitecturas que hasta ahora eran el foco de las t\'{e}cnicas de modelado, conllevan la necesidad de dotar a la Industria 4.0 de nuevos lenguajes y herramientas que permitan un desarrollo m\'{a}s eficiente y preciso. En este art\'{i}culo, proponemos el uso de UML para el modelado de este tipo de arquitecturas y una serie de transformaciones que permiten automatizar su procesamiento. M\'{a}s concretamente, presentamos un perfil UML para la Industria 4.0, as+AO0 como una transformaci\'{o}n de modelos capaz de generar una descripci\'{o}n abstracta \textemdashempleando la especificaci\'{o}n AsyncAPI\textemdash de las interfaces de programaci\'{o}n que subyacen a la arquitectura. A partir de dicha descripci\'{o}n abstracta en AsyncAPI, generamos el c\'{o}digo que dan soporte a dichas interfaces de forma autom\'{a}tica.},
keywords = {AsyncAPI, Industry, Model Transformation (MT), Publish-Subscribe, UML Profiles, Unified Modeling Language (UML)},
pubstate = {published},
tppubtype = {conference}
}
El uso y despliegue de los llamados sistemas ciberfísicos ha calado profundamente en la industria, dando lugar a la Industria 4.0. Típicamente, las arquitecturas de la Industria 4.0 muestran un acoplamiento muy bajo entre sus componentes, siendo distribuidas, asíncronas, y guiándose la comunicación por eventos. Estas características, diferentes de las de arquitecturas que hasta ahora eran el foco de las técnicas de modelado, conllevan la necesidad de dotar a la Industria 4.0 de nuevos lenguajes y herramientas que permitan un desarrollo más eficiente y preciso. En este artículo, proponemos el uso de UML para el modelado de este tipo de arquitecturas y una serie de transformaciones que permiten automatizar su procesamiento. Más concretamente, presentamos un perfil UML para la Industria 4.0, as+AO0 como una transformación de modelos capaz de generar una descripción abstracta —empleando la especificación AsyncAPI— de las interfaces de programación que subyacen a la arquitectura. A partir de dicha descripción abstracta en AsyncAPI, generamos el código que dan soporte a dichas interfaces de forma automática. Full Text AvailableOpen AccessSpanish |
2019
|
ConferenceAbel Gómez, Iker Fernandez de Larrea, Markel Iglesias-Urkia, Beatriz Lopez-Davalillo, Aitor Urbieta, Jordi Cabot Una Aproximación Basada en Modelos para la Definición de Arquitecturas Asíncronas Actas de las XXIV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2019), Sistedes, 2019. Abstract | Links | BibTeX | Tags: AsyncAPI, Asynchronous Architechtures, Cyber-Physical Systems (CPS), Publish-Subscribe @conference{Gomez:JISBD:2019b,
title = {Una Aproximaci\'{o}n Basada en Modelos para la Definici\'{o}n de Arquitecturas As\'{i}ncronas},
author = {Abel G\'{o}mez and Iker Fernandez de Larrea and Markel Iglesias-Urkia and Beatriz Lopez-Davalillo and Aitor Urbieta and Jordi Cabot},
editor = {Jennifer P\'{e}rez},
url = {http://hdl.handle.net/11705/JISBD/2019/035},
year = {2019},
date = {2019-09-02},
booktitle = {Actas de las XXIV Jornadas de Ingenier\'{i}a del Software y Bases de Datos (JISBD 2019)},
publisher = {Sistedes},
abstract = {En la nueva era del Internet de las cosas (IoT), nuestros objetos cotidianos se han convertido en los llamados sistemas ciberf\'{i}sicos (CPS). El uso y despliegue de los CPS ha calado especialmente en la industria, dando lugar a la llamada Industria 4.0 o IoT Industrial (IIoT). T\'{i}picamente, las arquitecturas IIoT son distribuidas y as\'{i}ncronas, estando la comunicaci\'{o}n guiada por eventos como por ejemplo la publicaci\'{o}n (y correspondiente suscripci\'{o}n) a mensajes. No obstante, las mejoras en escalabilidad y tolerancia al cambio de estas arquitecturas tienen sus desventajas, y es f\'{a}cil que el conocimiento sobre los mensajes y su categorizaci\'{o}n (topics) se diluya entre los elementos de la arquitectura, dando lugar a problemas de interoperabilidad entre los agentes implicados. En este art\'{i}culo, presentamos nuestra propuesta para automatizar el dise\~{n}o e implementaci\'{o}n de estas arquitecturas mediante t\'{e}cnicas basadas en modelos. Para ello nos apoyamos en AsyncAPI, una propuesta para la especificaci\'{o}n de API dirigidas por mensajes.},
keywords = {AsyncAPI, Asynchronous Architechtures, Cyber-Physical Systems (CPS), Publish-Subscribe},
pubstate = {published},
tppubtype = {conference}
}
En la nueva era del Internet de las cosas (IoT), nuestros objetos cotidianos se han convertido en los llamados sistemas ciberfísicos (CPS). El uso y despliegue de los CPS ha calado especialmente en la industria, dando lugar a la llamada Industria 4.0 o IoT Industrial (IIoT). Típicamente, las arquitecturas IIoT son distribuidas y asíncronas, estando la comunicación guiada por eventos como por ejemplo la publicación (y correspondiente suscripción) a mensajes. No obstante, las mejoras en escalabilidad y tolerancia al cambio de estas arquitecturas tienen sus desventajas, y es fácil que el conocimiento sobre los mensajes y su categorización (topics) se diluya entre los elementos de la arquitectura, dando lugar a problemas de interoperabilidad entre los agentes implicados. En este artículo, presentamos nuestra propuesta para automatizar el diseño e implementación de estas arquitecturas mediante técnicas basadas en modelos. Para ello nos apoyamos en AsyncAPI, una propuesta para la especificación de API dirigidas por mensajes. Open AccessSpanish |
Journal ArticleAbel Gómez, Ricardo J. Rodríguez, María-Emilia Cambronero, Valentín Valero Profiling the publish/subscribe paradigm for automated analysis using colored Petri nets In: Software & Systems Modeling, vol. 18, no. 5, pp. 2973-3003, 2019, ISSN: 1619-1374. Abstract | Links | BibTeX | Tags: CPN Tools, Model Transformation (MT), Model-Driven Engineering (MDE), Petri net (PN), Publish-Subscribe, Unified Modeling Language (UML) @article{G\'{o}mez2019b,
title = {Profiling the publish/subscribe paradigm for automated analysis using colored Petri nets},
author = {Abel G\'{o}mez and Ricardo J. Rodr\'{i}guez and Mar\'{i}a-Emilia Cambronero and Valent\'{i}n Valero},
doi = {10.1007/s10270-019-00716-1},
issn = {1619-1374},
year = {2019},
date = {2019-01-22},
journal = {Software \& Systems Modeling},
volume = {18},
number = {5},
pages = {2973-3003},
abstract = {UML sequence diagrams are used to graphically describe the message interactions between the objects participating in a certain scenario. Combined fragments extend the basic functionality of UML sequence diagrams with control structures, such as sequences, alternatives, iterations, or parallels. In this paper, we present a UML profile to annotate sequence diagrams with combined fragments to model timed Web services with distributed resources under the publish/subscribe paradigm. This profile is exploited to automatically obtain a representation of the system based on Colored Petri nets using a novel model-to-model (M2M) transformation. This M2M transformation has been specified using QVT and has been integrated in a new add-on extending a state-of-the-art UML modeling tool. Generated Petri nets can be immediately used in well-known Petri net software, such as CPN Tools, to analyze the system behavior. Hence, our model-to-model transformation tool allows for simulating the system and finding design errors in early stages of system development, which enables us to fix them at these early phases and thus potentially saving development costs.},
keywords = {CPN Tools, Model Transformation (MT), Model-Driven Engineering (MDE), Petri net (PN), Publish-Subscribe, Unified Modeling Language (UML)},
pubstate = {published},
tppubtype = {article}
}
UML sequence diagrams are used to graphically describe the message interactions between the objects participating in a certain scenario. Combined fragments extend the basic functionality of UML sequence diagrams with control structures, such as sequences, alternatives, iterations, or parallels. In this paper, we present a UML profile to annotate sequence diagrams with combined fragments to model timed Web services with distributed resources under the publish/subscribe paradigm. This profile is exploited to automatically obtain a representation of the system based on Colored Petri nets using a novel model-to-model (M2M) transformation. This M2M transformation has been specified using QVT and has been integrated in a new add-on extending a state-of-the-art UML modeling tool. Generated Petri nets can be immediately used in well-known Petri net software, such as CPN Tools, to analyze the system behavior. Hence, our model-to-model transformation tool allows for simulating the system and finding design errors in early stages of system development, which enables us to fix them at these early phases and thus potentially saving development costs. Full Text AvailableOpen Access |