Langage et méthode pour une ingénierie des modèles fiable - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2006

Langage et méthode pour une ingénierie des modèles fiable

Résumé

One of the conditions for model-driven developement to deliver its promises in terms of quality and productivity is to ensure, (1) the quality of the models and (2) the correctness of model tansformations that are used. The contribution of this work follows both directions. To improve the quality of models, we propose an original language called Kermeta for the specification of modeling languages. Kermeta is the core of the model-oriented platform developped in the Triskell team. It has been validated with a wide range of applications including model transformation, model conposition and weaving and the specification of dedicated modeling languages. To improve the quality of model transformations, we propose a technique for the generation and the selection of test models. This technique takes advantage of the fact that models processed by a model transformation are described by meta-models. Overall, this work is a first step towards reliability of model-driven developement.
Ce travail s'inscrit dans un contexte où la taille et la complexité des logiciels augmentent alors que les contraintes de temps de développement, de qualité, de maintenance et d'évolution sont toujours plus fortes. Pour répondre à cette tendance, l'ingénierie dirigée par les modèles constitue une évolution prometteuse des techniques de génie logiciel. Les idées de l'ingénierie dirigée par les modèles sont, d'une part de rendre les modèles productifs, et d'autre part d'automatiser certaines étapes du développement grâce à des transformations de modèles. Une des conditions pour que l'ingénierie dirigée par les modèles tienne ses promesses, en terme de productivité et de qualité, est d'assurer, tout d'abord, la correction des modèles, et ensuite, la correction des transformations utilisées. La contribution de ce travail s'articule autour de ces deux axes et constitue un premier pas vers la fiabilisation des processus de dévelopement dirigés pas les modèles. Le premier axe de ce travail vise à améliorer les possibilités de validation des modèles en proposant une plateforme pour la définition de langages de modélisation. En fonction des expériences et du domaine considéré, les modèles utilisés dans l'ingénierie dirigée par les modèles sont exprimés dans divers langages de modélisation. Comme tout langage, un langage de modélisation est constitué de plusieurs éléments de spécification : une syntaxe abstraite (ou méta-modèle), une sémantique et des contraintes syntaxiques et sémantiques. Pour assurer la précision et la cohérence d'un tel langage, il faut d'une part spécifier sans ambiguïtés chaque élément, et d'autre part assurer la bonne intégration des différents éléments entre eux. Or, les pratiques actuelles de l'ingénierie dirigée par les modèles utilisent des formalismes hétérogènes et parfois difficiles à exploiter (le langage naturel par exemple) pour la spécification de ces éléments. Afin d'améliorer la définition des langages de modélisation, nous proposons l'utilisation d'un coeur sémantique unique et précis. Ce coeur sémantique se présente sous la forme d'un langage appelé Kermeta. Au coeur de la plateforme d'ingénierie dirigée par les modèles développée par l'équipe Triskell, le langage Kermeta a été utilisé dans des contextes variés dont la transformation de modèles, la modélisation orientée-aspects et l'analyse d'exigences logicielles. L'utilisation de Kermeta pour ces applications a permis de valider le langage et de mettre en évidence ses avantages par rapport aux techniques existantes. Le second axe de ce travail concerne la validation des transformations de modèles. Celles-ci sont utilisées pour automatiser les phases du processus de développement qui peuvent l'être. Qu'il s'agisse de raffinement, de composition, de refactoring ou encore de génération de code, la qualité des transformations de modèles est primordiale pour assurer la qualité des logiciels développés. Il suffit en effet qu'une seule transformation utilisée soit erronée pour que l'ensemble du processus de développement soit fragilisé. Dans ce contexte, nous proposons une technique pour la sélection de modèles de test permettant la validation des programmes de transformation de modèles. Cette technique tire avantage du fait que toute transformation de modèles manipule des données dont la structure est décrite par un méta-modèle.

Mots clés

Fichier principal
Vignette du fichier
Fleurey06a.pdf (4.72 Mo) Télécharger le fichier
Loading...

Dates et versions

tel-00538288 , version 1 (22-11-2010)

Identifiants

  • HAL Id : tel-00538288 , version 1

Citer

Franck Fleurey. Langage et méthode pour une ingénierie des modèles fiable. Génie logiciel [cs.SE]. Université Rennes 1, 2006. Français. ⟨NNT : ⟩. ⟨tel-00538288⟩
468 Consultations
1629 Téléchargements

Partager

Gmail Facebook X LinkedIn More