Ingénierie dirigée par les modèles IDM Charles André - UNSA 2 IDM/MDE/MDA … • M

Ingénierie dirigée par les modèles IDM Charles André - UNSA 2 IDM/MDE/MDA … • MDA=Model Driven Architecture® proposé par l’OMG (Object Management Group) en 2000. • IDM=Ingénierie dirigée par les modèles • MDE=Model Driven Engineering – Concerne toutes les disciplines d’ingénierie – En génie logiciel (Informatique): Utilisation des compétences et résultats obtenus dans les domaines tels que la compilation des langages, les méthodes formelles, la modélisation par objets, la programmation par composants distribués, les technologies du web, … Charles André - UNSA 3 MDA • MDA: décrire séparément – Parties des systèmes indépendantes des plates- formes spécifiques (PIM ou Platform Independent Models) – Parties liées aux plates-formes (PSM ou Platform Specific Models) • Initialement en s’appuyant sur UML; puis en considérant une architecture s’appuyant sur le MOF (Meta-Object Facilitiy). Collection de méta- modèles (incluant UML). • MDE étend le MDA: familles d’approches basées sur les modèles Charles André - UNSA 4 Objets et IDM • Il faut clairement séparer l’approche orientée objet de l’approche orientée modèle et de l’IDM. • Le MDA et UML étaient directement fondés sur une technologie orientée objet. Ceci n’était qu’un choix technologique. • Le nouvel UML fait une plus large place à des concepts non objet. • L’IDM n’a nullement besoin que les concepts (par exemple que les modèles et méta-modèles soient exprimés dans une technologie orientée objet). Charles André - UNSA 5 Méthodes de modélisation et l’IDM • Utilisation systématique de modèles. • En informatique, les pratiques industrielles restent largement centrées sur le code. L’IDM essaie de changer cette réalité. • Modèle contemplatif: modèle utile pour la compréhension et la communication; mais il reste éloigné de la notion de production. • Modèle productif:le modèle doit être interprétable et manipulable par une machine. Besoin d’exprimer formellement les transformations entre modèles. • La caractéristique de l’IDM est en fait dans l’utilisation systématique de méta-modèles. Son souci: rendre modèles et méta-modèles productifs. • Séparation et tissage des aspects. Charles André - UNSA 6 Concepts essentiels de l’IDM • Modèles/Méta-modèles • Relations ReprésentionDe / ConformeA • Cas particulier en technologie objet: – Relation InstanceDe -> ReprésentationDe – Relation HériteDe ? Charles André - UNSA 7 Modèle et ReprésentationDe (1) • Plusieurs définitions pour Modèle • UML: « A model is an abstraction of a physical system, with a certain purpose » – Abstraction:OK; a certain purpose:OK; physical system: why this restriction? • Seidwitz [2]: « A model is a set of statements about some system under study (SUS) » • Bézivin & Gerbé [3]: « A model is a simplification of a system built with an intented goal in mind. The model should be able to answer questions in place of the actual system » Charles André - UNSA 8 Modèle et ReprésentationDe (2) • Consensus sur Modèle et Système étudié: deux rôles complémentaires basés sur une relation qui les lient: Représente. • Notée µ dans [1] NB: le système modélisé n’est pas la France (en tant qu’espace physique) mais la France en tant qu’espace administratif. Charles André - UNSA 9 Modèle et ReprésentationDe (3) • Warmer [4]: « A model is a description of (part of) a system written in a well-defined language » • Well-defined language -> notion de méta- modèle • Modéliser un modèle ne le rend pas plus formel! Charles André - UNSA 10 Méta-modèle et ConformeA (1) • Modèle productif: manipulable par une machine => Le langage dans lequel ce modèle est exprimé doit être clairement défini. • « A meta-model is a model that defines the language for expressing a model » [Bézivin] • « A metamodel is a specification model for a class of SUS where each SUS in the class is itself a valid model expressed in a certain modeling language » [4] • Un méta-modèle n’est pas un modèle de modèle! Charles André - UNSA 11 Méta-modèle et ConformeA (2) • La relation ConformeA lie un modèle à son méta- modèle. • Dans [1] cette relation est notée χ. Le modèle devient plus administratif que géographique. Pour chaque vue (administrative, économique, ressources, hydrologique,…) il faut définir un langage spécialisé de domaine (DSL) et définir une légende appropriée. Charles André - UNSA 12 Langage des cartes IGN. Ce langage est l’ensemble de toutes les cartes décrites selon des conventions définies par l’IGN. Une légende n’est pas un langage mais un outil concret pour définir et appréhender un langage de cartes. Une légende est une représentation de ce langage. Elle joue le rôle de modèle par rapport au langage et de méta-modèle par rapport à une carte particulière qui doit être conformeA cette légende. La carte, quant à elle est un élément du langage. Légende Méta-modèles vs. Langages Charles André - UNSA 13 Megamodel • Défini par Jean-Marie FAVRE [5] Charles André - UNSA 14 Bibliographie • [1] AS MDA – Action Spécifique CNRS sur l’Ingénierie Dirigée par les Modèles (http://www.actionidm.org) • [2] E. Seidwitz. What models mean. IEEE Software Engineering, September 2003. • [3] J. Bézivin, O. Gerbé. Towards a precise definition of the OMG/MDA Framework. ASE’01, Nov 2001. • [4] A. Kleppe, S. Warmer, W. Bast. MDA explained. The model driven architecture practice and promise. Addison-Wesley, April 2003 • [5] J-M. Favre. Foundations of the Meta-Pyramids: Languages and Metamodels – Episod II. Dagsthul Seminar 04101 on Language Engineering for Model- Driven Software Development, Dagsthul, Gemany, 2004. uploads/Science et Technologie/ ingenierie-dirigee-par-les-modeles.pdf

  • 20
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager