Skip to content

A domain-specific language (DSL) for modeling multi-layered and self-adapting IoT systems

Notifications You must be signed in to change notification settings

SOM-Research/selfadaptive-IoT-DSL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DSL for Multi-layered and Self-adaptive IoT Architectures

Repository to host a DSL and code generator for modeling multi-layered and self-adapting IoT systems implemented in MPS.

This DSL aims to model multi-layered and self-adaptive IoT systems focusing on three main contributions: (1) modeling primitives covering the four layers of an IoT system, including IoT devices (sensors or actuators), edge, fog, and cloud nodes; (2) modeling the deployment of container-based applications on those nodes; and (3) a specific sublanguage to express adaptation rules to guarantee QoS at runtime.

You can find in this repository the DSL implemented in MPS, an example sandbox model, a code generator, and the YAML manifests generated for the example model to deploy and manage the system using K3S (lightweight Kubernetes distribution).

Documentation

Publications and Other Resources

  • Alfonso, I., Garcés, K., Castro, H., & Cabot, J. (2021, October). Modeling self-adaptative IoT architectures. In 2021 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion. https://doi.org/10.1109/MODELS-C53483.2021.00122

  • Modeling self-adaptive IoT architectures. Post in modeling-languajes

  • Alfonso, I., Garcés, K., Castro, H., & Cabot, J. Modelado de Sistemas IoT para la Industria en Minerıa Subterránea de Carbón. Actas de las XXVI Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2022), Sistedes, 2022. http://hdl.handle.net/11705/JISBD/2022/8557 (only in Spanish).

  • Modelando Sistemas IoT para la Industria Minera - Ejemplo de Creación de un Lenguaje Específico de Dominio. Post in Ingeniería de Software (only in Spanish).

DSL Extensions

This DSL has been designed to be easily extensible so that we can adapt it to specific types of IoT systems. As an example, we have developed two extensions to our DSL:

  • To model IoT systems for underground coal mining. Repository

  • To model IoT systems for Wastewater Treatment Plants (WWTPs). Repository

About

A domain-specific language (DSL) for modeling multi-layered and self-adapting IoT systems

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published