Low-Code Engineering for the Internet of Things - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2023

Low-Code Engineering for the Internet of Things

Ingénierie Low-Code pour l'Internet des objets

Résumé

The Internet of Things (IoT) technologies are often seen as the main drivers of the current technological revolution, which devotes the most priority to improving the well-being of humanity. IoT is typically regarded as a powerful network of systems that integrates several heterogeneous and independently networked devices working together to achieve a shared purpose. Engineering such systems require efficient tools to deal with the intrinsic complexities while offering means to increase system reliability by limiting future repair costs. Low-Code Development Platforms (LCDPs) unravel the opportunities to advance the simplicity of how new applications are developed in different business application domains. However, in the IoT domain, systems are complex, multi-layered, and highly heterogeneous in all aspects, not to mention the large amount of data being collected and processed concurrently. Even though there is a convenient push toward coping with such complexities, there still needs to be a massive gap regarding the actual development techniques that support early system analysis, deployment, and run-time management. Low-Code Engineering (LCE), on the other hand, aims to tackle such issues by extending the development knowledge present in LCDPs to a more sophisticated era of "Low-Code Engineering Platforms (LCEPs)" by injecting into it the theoretical and technical concepts present in Model-Driven Engineering (MDE), Cloud Computing, and Machine Learning. These platforms target more sophisticated domains such as IoT, industrial automation, data science, recommender systems, etc. This dissertation addresses such challenges by first presenting the current state of the art of Low-Code Engineering Platforms (LCEPs), which gives a better understanding of what LCEPs are and their differences with respect to existing LCDPs, particularly in the IoT domain. We also highlight how MDE plays a significant role in the LCE's evolution. Then, we examine the current limitations, open challenges, and opportunities of existing IoT Engineering platforms in realizing such an initiative. While evaluating the quality of such complex platforms could be challenging, we propose the software product quality model for evaluating the static and dynamic quality properties of such engineering platforms. The complexity behind the automated realization of IoT systems can be extremely daunting. One efficient approach is to adopt Domain-Specific Languages (DSLs). DSLs are tailored to the specific domain to pave the way for the domain experts to define the system's behavior based on their expertise. This dissertation presents CHESSIoT, a platform that integrates high-level visual DSLs, software development, safety analysis, and deployment mechanisms for engineering multi-layered IoT systems. With CHESSIoT, users may conduct various engineering tasks on system and software models to enable earlier decision-making. This is achieved in a unique environment that combines multi-staged designs, most notably the system-level, functional, and deployment architectures. The physical architecture specifically contains the high-level system building blocks and their interconnections suitable to perform both early qualitative and quantitative safety analysis by employing logical Fault-Trees (FTs). On the other hand, the software model is equipped with the system's functional behavior suitable for generating platform-specific code ready to be deployed on low-level IoT device nodes. Additionally, the framework supports modeling of the system's deployment, which would ultimately be used to generate deployment artifacts. To facilitate run-time management of deployed services, the tool offers means for defining run-time service provisioning modules through which deployment rules are defined and configured. To demonstrate the effectiveness of our proposed approach, throughout this dissertation, different comparative assessment was conducted to highlight the potential contribution of our approach in relation to existing approaches. Finally, we used the implications from the conducted research studies as well as experiments from running examples to tackle potential research questions as well as demonstrate the capabilities of our supporting tool.
Les technologies de l’Internet des objets (IoT) sont souvent considérées comme les principaux moteurs de la révolution technologique actuelle, dont la priorité est l’amélioration du bien-être de l’humanité. L'IoT est généralement considéré comme un puissant réseau de systèmes qui intègre plusieurs appareils hétérogènes et indépendamment en réseau travaillant ensemble pour atteindre un objectif commun. L'ingénierie de tels systèmes nécessite des outils efficaces pour gérer les complexités intrinsèques tout en offrant des moyens d'augmenter la fiabilité du système en limitant les coûts de réparation futurs. Les plates-formes de développement Low-Code (LCDP) dévoilent les opportunités permettant de simplifier la manière dont les nouvelles applications sont développées dans différents domaines d'applications métier. Cependant, dans le domaine de l’IoT, les systèmes sont complexes, multicouches et très hétérogènes à tous égards, sans parler de la grande quantité de données collectées et traitées simultanément. Même s'il existe des efforts pratiques pour faire face à de telles complexités, il reste encore un écart énorme en ce qui concerne les techniques de développement réelles qui prennent en charge l'analyse précoce du système, le déploiement et la gestion de l'exécution. L'ingénierie Low-Code (LCE), quant à elle, vise à résoudre ces problèmes en étendant les connaissances de développement présentes dans les LCDP à une ère plus sophistiquée de « plates-formes d'ingénierie Low-Code (LCEP) » en y injectant les connaissances théoriques et techniques. concepts présents dans l'ingénierie pilotée par modèle (MDE), le cloud computing et l'apprentissage automatique. Ces plateformes ciblent des domaines plus sophistiqués tels que l'IoT, l'automatisation industrielle, la science des données, les systèmes de recommandation, etc. Cette thèse aborde ces défis en présentant d'abord l'état actuel de l'art des plateformes d'ingénierie Low-Code (LCEP), ce qui permet de mieux comprendre de ce que sont les LCEP et de leurs différences par rapport aux LCDP existants, notamment dans le domaine de l'IoT. Nous soulignons également comment le MDE joue un rôle important dans l'évolution du LCE. Ensuite, nous examinons les limites actuelles, les défis ouverts et les opportunités des plates-formes d'ingénierie IoT existantes pour réaliser une telle initiative. Bien qu'évaluer la qualité de plates-formes aussi complexes puisse être difficile, nous proposons le modèle de qualité des produits logiciels pour évaluer les propriétés de qualité statiques et dynamiques de telles plates-formes d'ingénierie. La complexité derrière la réalisation automatisée des systèmes IoT peut être extrêmement intimidante. Une approche efficace consiste à adopter des langages spécifiques à un domaine (DSL). Les DSL sont adaptés au domaine spécifique pour permettre aux experts du domaine de définir le comportement du système en fonction de leur expertise. Cette thèse présente CHESSIoT, une plate-forme qui intègre des DSL visuels de haut niveau, le développement de logiciels, l'analyse de sécurité et des mécanismes de déploiement pour l'ingénierie de systèmes IoT multicouches. Avec CHESSIoT, les utilisateurs peuvent effectuer diverses tâches d'ingénierie sur des modèles de systèmes et de logiciels pour permettre une prise de décision plus précoce. Ceci est réalisé dans un environnement unique qui combine des conceptions à plusieurs étapes, notamment les architectures au niveau du système, fonctionnelles et de déploiement. L'architecture physique contient spécifiquement les éléments constitutifs du système de haut niveau et leurs interconnexions adaptés pour effectuer des analyses de sécurité qualitatives et quantitatives précoces en utilisant des arbres de défaillances (FT) logiques. D'autre part, le modèle logiciel est doté du comportement fonctionnel du système adapté à la génération de code spécifique à la plate-forme, prêt à être déployé sur des nœuds de dispositifs IoT de bas niveau. De plus, le cadre prend en charge la modélisation du déploiement du système, qui serait finalement utilisé pour générer des artefacts de déploiement. Pour faciliter la gestion d'exécution des services déployés, l'outil offre des moyens de définir des modules de fourniture de services d'exécution à travers lesquels les règles de déploiement sont définies et configurées. Pour démontrer l'efficacité de notre approche proposée, tout au long de cette thèse, différentes évaluations comparatives ont été menées pour mettre en évidence l'apport potentiel de notre approche par rapport aux approches existantes. Enfin, nous avons utilisé les implications des études de recherche menées ainsi que des expériences tirées d'exemples concrets pour aborder des questions de recherche potentielles et démontrer les capacités de notre outil de support.
Fichier principal
Vignette du fichier
LCE4IoT_ThesisFelicien.pdf (26.27 Mo) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-04197421 , version 1 (06-09-2023)

Licence

Paternité

Identifiants

Citer

Felicien Ihirwe. Low-Code Engineering for the Internet of Things. Computer Science [cs]. University of L'Aquila, 2023. English. ⟨NNT : ⟩. ⟨tel-04197421⟩
28 Consultations
9 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More