A model-driven methodology to unify software engineering in the internet of things
Une méthodologie fondée sur les modèles pour unifier l'ingénierie logicielle dans l'internet des objets
Résumé
The Internet of Things (IoT) aims for connecting Anything, Anywhere, Anytime (AAA).This assumption brings about a good deal of software engineering challenges. These challenges constitute a serious obstacle to its wider adoption. The main feature of the IoT is genericity, i.e.,enabling things to connect seamlessly regardless of their technologies. Model-Driven Engineering (MDE) is a paradigm that advocates using models to address software engineering problems.MDE could help to meet the genericity of the IoT from a software engineering perspective. In that sense, the IoT could be a requirement provider on the one hand and MDE its solution provider on the other. Existing MDE approaches focus on modeling the behavior of things. But, little attention has been paid to network-related modeling. The present thesis presents a methodology to create smart networks of things based on MDE. It aims to cover and leverage the network-related aspects of an IoT application compared to the existing work. The principle we use consists of avoiding the intrinsic heterogeneity of the IoT by separating the specification of the network, i.e., the things, the communication scheme, and the constraints, from their concrete implementation, i.e., the low-level artifacts (e.g., source code). Technically, the methodology relies on a model based Domain-Specific Language and a code generator. The former enables the specification of the network, and the latter provides a procedure to generate the low-level artifacts from this specification. The adoption of this methodology permits making software engineering of IoT applications more deterministic and saving a significant amount of lines of code compared to the state of practice.
L'Internet des objets (IdO) vise à connecter tout objet, partout, en tout temps (AAA). Cette hypothèse entraîne de nombreux défis en matière de génie logiciel. Ces défis constituent un sérieux obstacle à son adoption à grande échelle. L'une des principales caractéristiques de l'IdO est la généricité, c'est-à-dire permettre aux objets de se connecter de manière transparente, quelles que soient leurs technologies. L'Ingénierie Dirigée par les Modèles (IDM) est un paradigme qui préconise l'utilisation de modèles pour résoudre les problèmes de génie logiciel. L'IDM pourrait aider à répondre au besoin de généricité de l'IdO du point de vue du génie logiciel. Les approches d'IDM existantes se focalisent essentiellement sur la modélisation du comportement des objets. Peu d'attention a été accordée à la modélisation liée au réseau. La présente thèse présente une méthodologie pour l'IdO basée sur l'IDM. Fondamentalement, elle fournit une solution pour créer des réseaux intelligents d'objets. Le principe que nous utilisons consiste à contourner l'hétérogénéité intrinsèque de l'IdO en séparant la spécification du réseau, c'est-à-dire les objets, le schéma de communication et les contraintes, de son implémentation concrète, c'est-à-dire les artefacts logiciels de bas niveau (par exemple, le code source). Techniquement, la méthodologie repose sur un langage dédié basé sur les modèles pour la spécification du réseau et une procédure pour la génération du code des artefacts de bas niveau à partir de cette spécification. L'adoption de cette méthodologie rend l'ingénierie logicielle des applications IdO plus rigoureuse, permet de prévenir les bogues plus tôt et de gagner du temps.
Origine | Version validée par le jury (STAR) |
---|