Vous êtes sur la page 1sur 4

Université Abderrahmane Mira de Béjaia fevrier, 2020

Faculté des Sciences Exactes


Département d’Informatique
Master I GL
IDM

Série de TP N° 2
(Métamodélisation et transformation de modèles)

Objectif 1: Création d’un profil UML dédié aux bases de données relationnelles.

Une base de données contient un ensemble de tables. Une table contient un


ensemble de colonnes, un sous-ensemble de ces colonnes forme la clé primaire de la
table.

Création du profil :

1. Créez un nouveau projet Papyrus en choisissant le type « Profile » comme langage


pour les diagrammes et nommez le ProfilBDDR.
2. Donnez un nom au modèle et cochez la case « UML Profil Diagram » puis cliquez sur
Finish.
3. Une palette s’affiche, utilisez la pour créer trois stéréotypes : Base, Table et Colonne.
4. Ajoutez l’attribut ClefPrimaire de type Colonne au stéréotype Table et modifiez sa
multiplicité à 1..*
5. Importez la métaclasse: Package, cette dernière sera étendue par le stéréotype Base.
6. Utilisez la relation d’extension qui se trouve sur la palette pour les lier.
7. De la même façon, importez les métaclasses Class et Property et liez les aux
stéréotypes Table et Colonne en utilisant les relations d’extension.
8. Ajoutez les relations d’association entre les stéréotypes : Base et Table et entre Table
et Colonne.
9. Enregistrez le modèle et acceptez de définir votre profil afin de pouvoir l’utiliser.

Application du profil créé :

On veut créer une base de données Bibliothèque qui contient deux tables Adhérent et Livre.
La table Adhérent se compose de quatre colonnes : nom, prénom, dateNaissance et
adresse. La table Livre contient les colonnes : isbn, titre et auteur. La composition des
colonnes nom, prénom et dateNaissance représente la clé primaire de la table Adhérent. La
clé primaire de la table Livre est la colonne isbn.

1
Question : Appliquez le profil conçu précédemment au nouveau modèle de bases de
données.

Etapes à suivre :

1. Dans le même projet, créez un nouveau modèle Papyrus en choisissant cette fois-ci
UML comme langage.
2. Choisissez un diagramme de classe en nommant le nommant : ModelTest
3. Sélectionnez le modèle, puis dans la vue propriétés allez à l'onglet Profile.
4. Appuyez sur « + » pour ajouter un profil qui existe dans votre espace de travail.
5. Cochez la case de votre profil précédemment créé et cliquez sur Ok.
6. Commencez par insérer un package et nommer le Bibliothèque, ce dernier doit
contenir les deux classes : Adhérant et Livre.
7. Pour appliquer le stéréotype, sélectionnez le package Bibliothèque et appuyez sur le
« + » se trouvant dans l'onglet profil de la vue Properties, puis sélectionnez le
stéréotype « Base ».
8. Stéréotypez les classes Adhérant et Livre par « Table » et leurs attributs par :
« Colonne ».
9. La classe Adhérent contient la propriété clefPrimaire qui est une valeur étiquetée
(Tagged value). Ajoutez les valeurs nom, prénom et dateNaissance à cette propriété
en appuyant sur le « + » qui se trouve dans la zone Property values de l'onglet Profile.
10. Pour afficher l'attribut « clefPrimaire », sélectionnez la classe stéréotypée par
«Table» et allez sur l'onglet Apparence. Dans le champ stéréotypes appliqués,
sélectionnez clefPrimaire et appuyez sur le bouton d'affichage.
11. Faites la même chose pour la classe Livre.

Exercice 2 :

Dans un système de stockage de films (Movie storage System), un utilisateur peut ajouter un
film (Add Movie) et consulter la liste des films disponibles (Show All Movies).

- Avec un UCD, modélisez le système adjacent.


- En suivant le modèle MVC, donnez un diagramme de classes java correspondant au
UCD
- Décrivez le comportement des classes dans les différents cas d’utilisation à l’aide de
diagrammes de communication.

Objectif 2: Création de métamodèles, instanciation et transformation de modèles avec ATL.

Installation de ATL :

- Lancez Eclipse Modeling Tool > Help > Install Modeling Components
- Sélectionnez ATL et GMF (Graphical Modeling Framework) Tooling
- Cliquez sur Finish

2
Création d’un projet ATL

- Allez à File > New > Other > ATL > ATL Project > Next >
- Nommez le projet
- Création de 3 folders (dossiers) dans le projet : Dans l’explorateur de projets, avec le
bouton droit cliquez sur le projet et allez à New > Folder > Appelez le Metamodeles,
et faites la meme chose pour les deux folders restants : Modeles et Transformations.

Exercice 3:

On veut transfomer une structure formée de cercles en une autre composée de carrés,
comme montré sur les figures ci-après.

Id : 3
Couleur : vert
Rayon : 6

Id : 5
Couleur : blanc
Rayon : 10
Id : 4
Couleur : bleu
Rayon : 7

Figure 1 : Modèle source de cercles

Id : 3
Couleur : vert
Longueur : 6
Id : 5
Couleur : blanc
Longueur : 10

Id : 4
Couleur : bleu
Longueur : 7

Figure 2 : Modèle cible de carrés

3
- Créez les métamodèles des deux structures cercle (source) et carré (cible).
- Donnez les règles de transformation
- Ecrire le programme ATL réalisant cette transformation

Etapes à suivre:

1. Allez à File > New > Other > ATL > ATL Project > Next >
2. Nommez le projet Cercle2Carré
3. Dans l’explorateur de projet, avec le bouton droit, cliquez sur le projet et allez à New
> Folder > Nommez le : Metamodeles
4. Faites la même chose pour les folders : Modeles et Transformation
5. Pour créer le métamodèle Cercle : cliquez avec le bouton droit sur le folder
Metamodeles > Aller à New > Other >Eclipse Modeling Framework > Ecore Model >
Next > Nommez le CercleMM.ecore > Next > Finish
6. Sélectionnez le fichier recemment créé et faites apparaitre le sous package en le
sélectionnant
7. Allez dans la vue Properties > Entrez Cecle, Cercle, www.cercle.com par exemple
8. Revenir dans l’explorateur de projet > selectionner Cercle_MM.ecore avec le bouton
droit > Initialize ecore_diagram diagram file
9. Une nouvelle fenêtre s’affiche > Laissez le nom par défaut > Next > Finish
10. Dessinez le métamodèle cercle
11. Refaites les memes étapes pour le métamodèle carré
12. Pour créer un modèle de cercle : sélectionné le metamodèle cercle > Faites
apparaitre ses trois composants > Cliquez sur architecture avec le bouton droit >
Create Dynamic Instance > Nommez le nouveau fichier Cercle_Modele.xmi en
sélectionnant le folder Modeles > Finish
13. Développez le ficher récemment créé > cliquez sur le composant Architecture avec le
bouton droit > New Child > Créer 3 cercles et 2 relations
14. Pour créer les règles de transformation : Bouton droit sur le folder transfrormations
> New > Other > ATL File > Next > Nommez le fichier MyRules tout en séléctionnant
le folder Transformations > Next >La fenêtre ATL header Parameters apparait >
Browse WorkSpace pour séléctionner les métamodèles d’entrée et de sortie à partir
du folder Métamodèles > Finish
15. Ecrire les règles en utilisant ctrl + space
16. Cliquez avec le bouton droit sur le fichier .atl > Run As > Run Configurations > entrer
les champs nécéssaires et lancez l’exécution.

Exercice 4:

Reprenez les exercices 3 et 4 de la série de TD N°2 en réalisant les transformations sous ATL.

Vous aimerez peut-être aussi