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 requires 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, recommendation 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. 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 assessments were conducted to highlight the potential contribution of our approach in relation to existing approaches. Finally, we used the implications from 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.
Low-Code Engineering for the Internet of Things
IHIRWE, JEAN FELICIEN
2023
Abstract
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 requires 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, recommendation 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. 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 assessments were conducted to highlight the potential contribution of our approach in relation to existing approaches. Finally, we used the implications from 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.File | Dimensione | Formato | |
---|---|---|---|
LCE4IoT_ThesisFelicien.pdf
accesso aperto
Dimensione
26.9 MB
Formato
Adobe PDF
|
26.9 MB | Adobe PDF | Visualizza/Apri |
I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/20.500.14242/93146
URN:NBN:IT:UNIVAQ-93146