MDA définit son formalisme de modélisation, c’est-à-dire qu’il décrit la façon dont un modèle doit
être structuré. Pour cela il utilise encore un modèle, qui sera le métamodèle du modèle à définir.
Cela pose inévitablement la question : peut-on remonter indéfiniment dans la hiérarchie des
modèles ? La réponse est non. Dans MDA, le métamétamodèle, modèle du niveau le plus élevé
s’appelle « Meta Object Facility » (MOF) et a la particularité de s’autodéfinir. En effet, si on devait
réaliser le diagramme de classe du métamodèle du MOF, on obtiendrait le diagramme de classe de
la Figure 36, qui n’est autre que le diagramme de classe du MOF lui-même. MDA limite ainsi son
architecture à quatre niveaux (cf. Figure 37). Dans sa version 2.0, le MOF est constitué de deux
parties : EMOF (Essential MOF), pour l’élaboration des métamodèles sans association, et CMOF
(Complete MOF) pour l’élaboration des métamodèles avec associations (Diaw et al. s. d.).
Il faut bien comprendre que cette architecture ne sert pas à indiquer à quel niveau appartiennent les
PIM et autres PSM, mais à garantir une cohérence entre les modèles utilisés. Le MOF, de niveau
M3, défini la structure que chaque métamodèle de niveau M2 devra respecter. Ensuite chaque
métamodèle défini à son tour la structure des modèles de niveau M1.
Figure 38 : Les transformations des modèles MDA (Villemin 2011, p.12)
Figure 39 : transformations de modèles (Blanc 2005, p.11)
Page suivante : 7.1.4 Les transformations
Retour au menu : Stratégie de test au sein du processus d’évolution d’architecture de Sodifrance