Nos partenaires

CNRS

Rechercher





Accueil du site > Français > Thèmes de recherche > Thème 7 - Sûreté de développement du logiciel > Equipe MACAO > Propositions de stages, thèses et post-doc > Stages de Master 2

Conception et développement d’un outil de composition de modèles : VMT (Vuml Merging Tool) (03/01/2013)

Contact : Sophie Ebsersold

Laboratoire IRIT — Thème 7 — Equipe MACAO

Direction et unité d’accueil

  • Directeur : Bernard Coulette, professeur en Informatique à l’université de Toulouse 2-Le Mirail
  • Encadrant : Sophie Ebersold, maître de conférences à l’université de Toulouse 2-Le Mirail
  • Institut de Recherche en Informatique de Toulouse (IRIT)
  • Equipe : MACAO

Contexte

Nous avons développé récemment un profil UML, appelé VUML, qui est une extension du langage de modélisation UML pour la modélisation de systèmes intégrant une approche fondée sur les points de vue des utilisateurs.

Sur le plan méthodologique, l’approche VUML [Nassar 2005] permet de modéliser un système logiciel selon des points de vue en utilisant différents diagrammes UML. Initialement, la modélisation des besoins est principalement réalisée grâce aux cas d’utilisation. Puis, pour chaque acteur identifié, donc pour chaque point de vue, on spécifie les scénari ainsi que les diagrammes de classes associés. Enfin nous produisons un modèle VUML par composition de modèles partiels. La technique de composition utilisée est une fusion de modèles basée sur un ensemble de règles de transformation [Anwar et al. 2007a][ Anwar et al. 2007b]. Il s’agit d’appliquer les principes de l’ingénierie dirigée par les modèles pour automatiser cette composition. Plus précisément, nous définissons la composition de modèles statiques UML à l’aide de règles de transformation déclinées en règles de correspondance, de composition et de translation. Ces règles permettent d’abord de mettre en correspondance les modèles en entrée, puis de fusionner les modèles afin de produire un modèle global VUML.

Sur le plan sémantique, VUML étend le métamodèle d’UML et introduit un certain nombre de stéréotypes regroupés sous forme d’un profil UML. A l’instar d’UML, la sémantique VUML comprend un aspect statique et un aspect dynamique. La sémantique statique de VUML est définie par le métamodèle, des règles de bonne modélisation (well-formedness rules) exprimées en langage formel OCL (Object Constraint Language) et des descriptions textuelles informelles.

Pour implémenter les règles de transformation, nous avons utilisés le langage de transformation de modèles ATL [Jouault et al., 2005]. Ce choix nous a permis de coder la plupart des règles de composition sous une forme déclarative. L’ordre d’exécution de ce type de règles est implicitement spécifié par le développeur, puis pris en charge par un algorithme de résolution implanté dans le moteur d’exécution de règles ATL. Les exigences relatives aux contraintes d’implantation telles que la sérialisation de modèles, les scénarii d’exécution et le débogage, sont prises en compte par l’environnement de développement ADT (ATL Development Tooling) (Allilaire et al., 2004) du langage ATL

Le but de ce stage est de développer un outil VMT et son interface utilisateur qui étende le noyau réalisé à ce jour. Celui-ci fonctionne globalement de la façon suivante :

  • Le système demande la saisie les modèles d’entrée et leurs métamodèles correspondants, ainsi que le modèle de sortie et son métamodèle. Pour l’instant on se limite aux modèles d’entrée conformes au métamodèle UML2, et au modèle de sortie VUML également conforme au métamodèle UML2.
  • Après validation de cet écran par le bouton ‘Apply’, l’utilisateur peut passer à l’onglet ‘Model paths’ pour saisir les chemins complets des modèles ainsi que les métamodèles correspondants.
  • A l’aide du boutons ‘Workspace’ ou ‘File system’, l’utilisateur fournit les chemins physiques des fichiers relatifs aux modèles et métamodèles. Certains métamodèles sont déjà enregistrés dans Eclipse, et peuvent être indiqués à l’aide du bouton ‘EMF Registry’, ceci permet de choisir un métamodèle parmi les métamodèles indiqués dans une liste
  • Une fois que l’utilisateur appuie sur le bouton ‘Run’, le système commence l’exécution du scénario de composition.

Objectif du stage

Les principales étapes du projet seront les suivantes :

  • Faire une étude bibliographique du langage ATL et de l’environnement AMMA.
  • Etudier l’approche de composition proposée et son implémentation en ATL (noyau).
  • Etudier les approches de composition de modèles existantes.
  • Concevoir un outil de composition de modèles à base du noyau présenté ci-dessus
  • Développer cet outil sous forme d’un pluging Eclipse.

Mots clés : VUML, transformation de modèles, langage ATL, Environnement Eclipse.

REMARQUE : Ce stage pourra se faire en collaboration avec le laboratoire LSIS de l’ENSIAS de Rabat au Maroc

Références

  • [Allilaire et al. 2004] Allilaire, F., Idrissi, T. ADT : Eclipse Development Tools for ATL. EWMDA-2, Canterbury, England, 2004.
  • [Anwar 2007a] Adil Anwar, Sophie Ebersold, Bernard Coulette, Mahmoud Nassar, Abdelaziz Kriouile,‘Une approche MDA pour produire un modèle VUML par intégration de modèles par points de vue’. In Proceedings of Ingénierie dirigée par les modèles (IDM’2007), Toulouse France, Hermès Science, pp 41-58.
  • [Anwar 2007b] Anwar, A., Ebersold, S., Coulette, B., Nassar, M., Kriouile, A. Vers une approche à base de règles pour la composition de modèles : application au profil VUML. Revue RSTI-L’Objet, vol.13/2007, pp 73-103.
  • [Jouaut et al 2005]Jouault F., Kurtev I., « Transforming Models with ATL », Proceedings of the Model Transformations in Practice Workshop at MoDELS 2005, Montego Bay, Jamaica, 2005.
  • [Nassar et al. 2005] Mahmoud Nassar, Bernard Coulette, Jérémy Guiochet, Sophie Ebersold, Bouchra El Asri, Xavier Crégut, Abdelaziz Kriouile, “Vers un profil UML pour la conception de composants multivue”, Revue RSTI-L’Objet, vol.11, no. 4/2005. pp. 83-113, 2005.
  • [Eclipse M2M] Eclipse/M2M Project Web Page http://www.eclipse.org/m2m/ATL/