15.05.2015 Views

Approche de métamodélisation pour la simulation et la vérification ...

Approche de métamodélisation pour la simulation et la vérification ...

Approche de métamodélisation pour la simulation et la vérification ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

36 CHAPITRE 2. L’INGÉNIERIE DIRIGÉE PAR LES MODÈLES<br />

NamedElement<br />

name: String<br />

Type<br />

type<br />

1<br />

TypedElement<br />

DataType<br />

Boolean String Natural<br />

C<strong>la</strong>ss<br />

isAbstract: Boolean = false<br />

0..*<br />

superC<strong>la</strong>ss<br />

Property<br />

lower: Natural = 1<br />

owner<br />

upper : Natural = 1<br />

isOr<strong>de</strong>red : Boolean = false<br />

{or<strong>de</strong>red} 0..* isComposite: Boolean = false<br />

ownedAttribute <strong>de</strong>fault: String = ""<br />

0..1<br />

opposite<br />

FIGURE 2.5: Concepts principaux <strong>de</strong> métamodélisation (EMOF 2.0)<br />

Syntaxe abstraite<br />

La syntaxe abstraite (AS) d’un <strong>la</strong>ngage <strong>de</strong> modélisation exprime, <strong>de</strong> manière<br />

structurelle, l’ensemble <strong>de</strong> ses concepts <strong>et</strong> leurs re<strong>la</strong>tions. Les <strong>la</strong>ngages <strong>de</strong> métamodélisation<br />

tels que le standard MOF <strong>de</strong> l’OMG [OMG06b], offrent les concepts<br />

<strong>et</strong> les re<strong>la</strong>tions élémentaires qui perm<strong>et</strong>tent <strong>de</strong> décrire un métamodèle représentant<br />

<strong>la</strong> syntaxe abstraite d’un <strong>la</strong>ngage <strong>de</strong> modélisation. Pour définir c<strong>et</strong>te syntaxe,<br />

nous disposons à ce jour <strong>de</strong> nombreux environnements <strong>et</strong> <strong>la</strong>ngages <strong>de</strong> métamodélisation<br />

: Eclipse-EMF/Ecore [BSE03], GME/M<strong>et</strong>aGME [LMB + 01], AM-<br />

MA/KM3 [JB06, ATL05], XMF-Mosaic/Xcore [CESW04] ou Kerm<strong>et</strong>a [MFJ05].<br />

Tous ces <strong>la</strong>ngages reposent toutefois sur les mêmes constructions élémentaires (cf.<br />

figure 2.5). S’inspirant <strong>de</strong> l’approche orientée obj<strong>et</strong>, les <strong>la</strong>ngages <strong>de</strong> métamodélisation<br />

obj<strong>et</strong> offre le concept <strong>de</strong> c<strong>la</strong>sse (C<strong>la</strong>ss) <strong>pour</strong> définir les concepts d’un DSML.<br />

Une c<strong>la</strong>sse est composée <strong>de</strong> propriétés (Property) qui <strong>la</strong> caractérisent. Une propriété<br />

est appelée référence lorsqu’elle est typée (TypedElement) par une autre<br />

c<strong>la</strong>sse, <strong>et</strong> attribut lorsqu’elle est typée par un type <strong>de</strong> donnée (p. ex. booléen, chaîne<br />

<strong>de</strong> caractère <strong>et</strong> entier).<br />

Nous illustrons ces concepts par <strong>la</strong> définition <strong>de</strong> SIMPLEPDL, un <strong>la</strong>ngage<br />

simple <strong>de</strong> <strong>de</strong>scription <strong>de</strong> procédé, que nous utiliserons dans <strong>la</strong> suite <strong>de</strong> c<strong>et</strong>te thèse<br />

<strong>pour</strong> illustrer les différentes techniques abordées. Il s’inspire du standard SPEM<br />

(Software & Systems Process Engineering M<strong>et</strong>amo<strong>de</strong>l) [OMG05a] proposé par<br />

l’OMG mais aussi du métamodèle UMA (Unified M<strong>et</strong>hod Architecture) utilisé par<br />

le plug-in Eclipse EPF 7 (Eclipse Process Framework), dédié à <strong>la</strong> modélisation <strong>de</strong><br />

procédé. Il est volontairement simplifié <strong>pour</strong> ne pas compliquer inutilement les<br />

expérimentations.<br />

Pour définir <strong>la</strong> syntaxe abstraite <strong>de</strong> SimplePDL, nous avons utilisé l’éditeur<br />

graphique du proj<strong>et</strong> TOPCASED perm<strong>et</strong>tant <strong>la</strong> <strong>de</strong>scription <strong>de</strong> métamodèles à l’ai<strong>de</strong><br />

7. http://www.eclipse.org/epf/

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!