Coffee : a framework supporting expressive variability modeling and flexible automated analysis

Angela Villota Gomez · 2022

Coffee : un cadre pour la modélisation expressive de la variabilité et l'analyse automatisée flexible La modélisation de la variabilité et l’analyse automatisée des modèles de variabilité sont 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é.

Read the paper · More papers on PaperTik