COFFEE: A FRAMEWORK SUPPORTING EXPRESSIVE VARIABILITY MODELING AND FLEXIBLE AUTOMATED ANALYSIS - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2022

COFFEE: A FRAMEWORK SUPPORTING EXPRESSIVE VARIABILITY MODELING AND FLEXIBLE AUTOMATED ANALYSIS

UN CADRE PERMETTANT UNE MODÉLISATION EXPRESSIVE DE LA VARIABILITÉ ET UNE ANALYSE AUTOMATISÉE FLEXIBLE

Résumé

Modeling variability and automated analysis of variability models are tasks that come to- together. Nowadays, it is unrealistic to think about modeling variability without automated support for detecting model’s anomalies and guide the configuration and derivation of products. The introduction of the FODA [KCH+90] language in the early 90’s, marked the beginning of a fruitful development of languages, methods, and tools to describe the common and variable characteristics on families of systems. Also, the industrial application of variability modeling techniques on different types of variability-intensive systems came along with the automation of the analysis strategies. The size of the models, i.e., the number of variable items and constraints, makes the configuration and the anomalies detection unfeasible tasks for humans. Consequently, there is a universe of languages, notations, transformations, algorithms, and tools supporting modeling and analysis tasks. Regretfully, this diversity brings issues and challenges in porting or sharing variability models among tools because of the lack of standards to represent variability. This diversity is even present among tools supporting variations of the same modeling language, as in feature- based notations, where the differences impact the expressiveness and the automation of analysis tasks. At some point, during the exploration phase of the Ph.D., I wondered why the community that continually invests its efforts on providing methods, techniques, and tools for managing variability had somehow overlooked the reuse and variability management in their own proposals and contributions. It seems that the engineering of tools supporting variability modeling and analysis overlooks the reuse management and variability managing techniques. Tool engineers are continually re-implementing the transformations and analyses as they use specific representations, transformation rules, and technologies. This thesis offers a variability management view to the tasks concerning variability modeling and analysis from the point of view of the Programming Languages Engineering. The Coee Framework is a constraint-based framework that supports variability modeling and analysis about variability models, two of the main tasks in the management of variability-intensive systems. This thesis addresses the interoperability between variability management tools, the diversity among variability modeling languages, and the strong dependencies in the automated analysis of variability models. To solve these problems using intermediate representations, encodings, and transformations, this thesis presents two original contributions. First, this thesis defines, formalizes, implements, and evaluates an expressive variability modeling language (the High-Level Variability Language). Second, this research includes a proposal of a three-step transformation framework to provide flexible, multi-language, and multi-solver support for automated analysis of variability models.
La modélisation de la variabilité et l’analyse automatisée des modèles de variabilité sont des tâches qui vont de pair. De nos jours, il est irréaliste de penser à modéliser la variabilité sans un support automatisé pour détecter les anomalies du modèle et guider la configuration et la dérivation des produits. L’introduction du langage FODA [KCH+90] au début des années 90 a marqué le début d’un développement fructueux de langages, de méthodes et d’outils pour décrire les caractéristiques communes et variables des familles de systèmes. De même, l’application industrielle des techniques de modélisation de la variabilité sur différents types de systèmes à forte variabilité s’est accompagnée de l’automatisation des stratégies d’analyse. La taille des modèles, c’est-à-dire le nombre d’éléments variables et de contraintes, rend la configuration et la détection des anomalies des tâches irréalisables pour les humains. Par conséquent, il existe un univers de langages, de notations, de transformations, d’algorithmes et d’outils supportant les tâches de modélisation et d’analyse. Malheureusement, cette diversité entraîne des problèmes et des défis dans le portage ou le partage des modèles de variabilité entre les outils en raison du manque de normes pour représenter la variabilité. Cette diversité est même présente parmi les outils supportant des variations du même langage de modélisation, comme dans les notations basées sur les caractéristiques, où les différences ont un impact sur l’expressivité et l’automatisation des tâches d’analyse. À un moment donné, pendant la phase d’exploration du doctorat, je me suis demandé pourquoi la communauté qui investit continuellement ses efforts pour fournir des méthodes, des techniques et des outils de gestion de la variabilité avait en quelque sorte négligé la réutilisation et la gestion de la variabilité dans ses propres propositions et contributions. Il semble que l’ingénierie des outils supportant la modélisation et l’analyse de la variabilité néglige la gestion de la réutilisation et les techniques de gestion de la variabilité. Les ingénieurs d’outils réimplémentent continuellement les transformations et les analyses lorsqu’ils utilisent des représentations, des règles de transformation et des technologies spécifiques. Cette thèse propose une vision de la gestion de la variabilité pour les tâches concernant la modélisation et l’analyse de la variabilité. Coffee est un cadre basé sur les contraintes qui supporte la modélisation de la variabilité et l’analyse des modèles de variabilité, deux des principales tâches de la gestion des systèmes à forte variabilité. Cette thèse aborde l’interopérabilité entre les outils de gestion de la variabilité, la diversité entre les langages de modélisation de la variabilité et les fortes dépendances dans l’analyse automatisée des modèles de variabilité. Pour résoudre ces problèmes en utilisant des langages intermédiaires, cette thèse présente deux contributions originales. Premièrement, cette thèse définit, formalise, implémente et évalue un langage de modélisation de variabilité expressif (le High-Level Variability Language). Deuxièmement, cette recherche inclut une proposition d’un cadre de transformation en trois étapes pour fournir un support flexible, multi-langage et multi-solveur pour l’analyse automatisée des modèles de variabilité.
Fichier principal
Vignette du fichier
AVillota_Camera_Ready_thesis.pdf (12.49 Mo) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-04081771 , version 1 (25-04-2023)

Identifiants

  • HAL Id : tel-04081771 , version 1

Citer

Angela Villota. COFFEE: A FRAMEWORK SUPPORTING EXPRESSIVE VARIABILITY MODELING AND FLEXIBLE AUTOMATED ANALYSIS. Computer Science [cs]. Paris 1, 2022. English. ⟨NNT : ⟩. ⟨tel-04081771⟩

Collections

UNIV-PARIS1 CRI
7 Consultations
19 Téléchargements

Partager

Gmail Facebook X LinkedIn More