IDM. Ingénierie Dirigée par les Modèles

Documents pareils
Extensions à la formation. Laurent Pérochon, avril 2008, RMT Modelia, modélisation conceptuelle, formation UML, INRA Castanet Tolosan

La démarche MDA. Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti)*

openarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de

Générer du code à partir d une description de haut niveau

Ingénierie des Modèles. Méta-modélisation

MDA (Model Driven Architecture) principes et états de l art.

MEMOIRE. Présenté à L École Nationale d Ingénieurs de Sfax. en vue de l obtention du MASTÈRE INFORMATIQUE NTSID. Par.

CC30 Certificat de compétence Conception, développement et animation de sites Web

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Démarches d urbanisation : réorganiser le Système d Information en structurant ses fonctions dans des blocs fonctionnels communicants.

IFT2255 : Génie logiciel

Environnement logiciel basé sur les modèles pour la conception collaborative de produit

RTDS G3. Emmanuel Gaudin

Méthodes d évolution de modèle produit dans les systèmes du type PLM

Etat de l art sur le développement logiciel dirigé par les modèles.

Génie logiciel (Un aperçu)

Analyse,, Conception des Systèmes Informatiques

En vue de l obtention du. Discipline : Informatique. Présentée et soutenue par Mohamed HADJ KACEM. Le Jeudi 13 Novembre 2008

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur Le 23 novembre 2012

Projet de développement

L approche Model-Driven Architecture, crédible pour développer un progiciel de

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Université Mohamed Khider Biskra. Faculté des sciences exactes et des sciences de la nature et de la vie. Département d Informatique.

Information utiles. webpage : Google+ : digiusto/

Méthodologies de développement de logiciels de gestion

THESE. DOCTORAT EN SCIENCES APPLIQUEES Spécialité : Informatique

UML (Paquetage) Unified Modeling Language

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

Systèmes d information et bases de données (niveau 1)

UML est-il soluble dans les méthodes agiles?

Chapitre I : le langage UML et le processus unifié

Projet de développement. Introduction à Eclipse. Application à votre projet. Philippe Collet. Organisation. Cours 1 : principes généraux - svn

Elaboration de processus de développements logiciels spécifiques et orientés modèles : application aux systèmes à évenements discrets

Conception fonctionnelle de services d entreprise fondée sur l alignement entre cœur de métier et système d information

Maîtrisez la modernisation de votre patrimoine applicatif

Conception, architecture et urbanisation des systèmes d information

Cours en ligne Développement Java pour le web

Modélisation des processus métiers et standardisation

Vérifier la qualité de vos applications logicielle de manière continue

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ DU QUÉBEC THÈSE PRÉSENTÉE À L ÉCOLE DE TECHNOLOGIE SUPÉRIEURE

Un environnement de déploiement automatique pour les applications à base de composants

Introduction à la modélisation

UML (Diagramme de classes) Unified Modeling Language

Spécification et transformation de langages de points de vue des systèmes répartis ouverts

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

Mercredi 15 Janvier 2014

Catalogue de Pattern pour le CSCW

IAFACTORY. sommaire MATERIALIZE YOUR NEXT SUCCESS. étude marketing, expérience utilisateur, ergonomie audit statistique des performances.

Eclipse et ses plugins de modélisation (EMF GEF GMF). Entrée en matière. par. Jacques Barzic. Avertissement

Diagrammes de Package, de déploiement et de composants UML

Vérifica(on et Valida(on de Business Process. Ang Chen et Levi Lúcio

Objecteering. La convergence SOA, UML2, BPMN, EA, pour le développement guidé par le modèle.

Les nouvelles architectures des SI : Etat de l Art

Démarche dirigée par les modèles pour la conception d entrepôts de données multidimensionnelles. F.Atigui, F.Ravat, O.Teste, G.

Cours Gestion de projet

Développement d un interpréteur OCL pour une machine virtuelle UML.

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D

THÈSE. Présentée à. L Université Paris VIII. Pour obtenir le grade de DOCTEUR DE L UNIVERSITE DE PARIS VIII. Spécialité INFORMATIQUE

Valorisez vos actifs logiciels avec Rational Asset Manager. Jean-Michel Athané, Certified IT Specialist IBM Rational Software

Christian Soutou UML 2. pour les. bases de données. Avec 20 exercices corrigés. Groupe Eyrolles, 2007, ISBN :

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

Université de Bangui. Modélisons en UML

Visual Paradigm Contraintes inter-associations

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

IAFACTORY. sommaire MATERIALIZE YOUR NEXT SUCCESS. étude marketing, expérience utilisateur, ergonomie étude concurrentielle. principes.

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

DUT. Informatique, orientation Imagerie Numérique. Domaine : Sciences, Technologies, Santé. Mention : Informatique

Architecture d'entreprise : Guide Pratique de l'architecture Logique

Rational Unified Process

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

Conception des bases de données : Modèle Entité-Association

Projet Active Object

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Logiciel Libre Cours 3 Fondements: Génie Logiciel

OASIS Date de publication

L A B U S I N E S S. d a t a g i n f o r m a t i o n g a c t i o n

Patrons de Conception (Design Patterns)

DES SYSTÈMES D INFORMATION

Approche dirigée par les modèles pour la génération d une chorégraphie distribuée à partir d un processus d orchestration BPMN

Ecole des Mines. > Option. GÉNIE des SYSTÈMES INFORMATIQUES PROJETS INDUSTRIELS DE FIN D ÉTUDES. de Nantes. 28 juin juin 2006 septembre 2006

Utilisation de l ingénierie des modèles pour la conception collaborative de produits mécaniques

Université de Lausanne

Cours STIM P8 TD 1 Génie Logiciel

Architecture Reconfigurable Hétérogène à Gestion Hiérarchique Distribuée pour la Reconfiguration et la Prise de Décision

ARIS : Des Processus de gestion au Système Intégré d Applications

Nom de l application

INTRODUCTION AUX METHODES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES

Ingénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau

Business Process Design Max Pauron

Réussir la modélisation UML des phases amont Techniques de «pré-modélisation» : un pont vers le modèle

INTRODUCTION AUX TECHNOLOGIES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES

EXPERTS EN DÉVELOPPEMENT ET MODERNISATION DE LOGICIELS WEB ET MOBILES

GOL502 Industries de services

Gouvernance IT : par où commencer? Hubert Lalanne DE, Chief Architect for Industries IBM Software France

Rappel sur les bases de données

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

UE 8 Systèmes d information de gestion Le programme

Transcription:

IDM Ingénierie Dirigée par les Modèles Plan du dossier p1. Titre ; Plan p2. Sources, références p3. Approches orientées modèles en ingénierie du logiciel, des systèmes et des données (Approches dirigées par les modèles pour le développement et la maintenance des systèmes à prépondérance logicielle) p4. Aperçu de l approche OMG de l IDM : MDA p5. Illustration OMG du MDA p6. Aperçu de l approche Microsoft de l IDM : Software Factories p7. Aperçu de l approche IBM de l IDM p8. Des considérations générales sur l IDM p9. Métamodèle, langage de modélisation p10. Système modélisé, modèle, langage, métamodèle p11. Exemple de : Système modélisé, modèle, langage, métamodèle p12. Des relations et concepts de l IDM p13. Séparation des préoccupations p14. Espaces techniques, l IDM et l approche orientée objet p15. Architecture multi-niveaux pour les modèles p16. Architecture multi-niveaux (hiérarchie de métamodèles) dans divers domaines de l informatique p17. Espaces techniques p18. Rôle/utilisation des modèles p19. Cadre plus global de l IDM p20. Le génie logiciel et l IDM : une approche unificatrice par les modèles p21. Liens ; Abréviations, sigles p22. Quelques éléments sur les notations UML 1

Ce dossier repose sur l ouvrage suivant : Sources, références L ingénierie dirigée par les modèles au-delà du MDA sous la direction de Jean-Marie Favre, Jacky Estublier, Mireille Blay-Fornarino Hermes Science publications Lavoisier Sources, références Ce dossier repose sur l ouvrage suivant : «L ingénierie dirigée par les modèles, au-delà du MDA» sous la direction de Jean-Marie Favre, Jacky Estublier, Mireille Blay-Fornarino Hermes Science publications Lavoisier Dans la suite de ce dossier, les citations de cet ouvrage sont marquées ainsi : CitationIDMauDelaDuMDA_pXX : «texte de la citation», _pxx indiquant la page de la citation dans l ouvrage. 2

Approches orientées modèles en ingénierie du logiciel, des systèmes et des données (Approches dirigées par les modèles pour le développement et la maintenance des systèmes à prépondérance logicielle) IDM L IDM est approche intégrative générale L IDM peut être vue comme une famille d approches Approche OMG ie MDA Approche Microsoft (Software Factories) Approche IBM Se base sur MOF Utilisation contemplative, documentaire Se base essentiellement sur Se base sur Ecore QVT UML Recommandations et Standards de l OMG XML DSL Les variantes de l IDM par l OMG (MDA), Microsoft et IBM partagent les concepts mais pas forcément les standards. CitationIDMauDelaDuMDA_p19 : «L IDM peut être vue comme une famille d approches qui se développent à la fois dans les laboratoires de recherche et chez les industriels impliqués dans les grands projets de développement logiciels.» CitationIDMauDelaDuMDA_p18 concernant l IDM : «Cette approche vise non seulement à favoriser un «génie» logiciel plus proche des métiers en autorisant une appréhension des applications selon différents points de vues (modèles) exprimés séparément. Mais elle intègre également comme fondamentales la composition et mise en cohérence de ces perspectives. De plus elle se veut productive en automatisant la prise en charge des outils relatifs à la validation des modèles, les transformations et les générations de code. Malgré ses balbutiements initiaux, l IDM cible une production logicielle bien fondée.» 3

Aperçu de l approche OMG de l IDM : MDA Est basée sur MDA Recomman dation Est fondé sur une architecture basée sur Recomman dations et Standards de l OMG UML MOF Langage de définition de métamodèles Langage pour exprimer des modèles S appuie sur QVT Langage pour exprimer des transformations de modèles à modèles Le MDA est une collection de standards industriels promue par l OMG QVT-Operational QVT-Relation QVT-Core 4

Illustration OMG du MDA Source http://www.omg.org/mda 5

Aperçu de l approche Microsoft de l IDM : Software Factories Software Factories Est fondée essentiellement sur Est mise en œuvre dans Langage de domaine Outillage Visual Studio DSL Technologies XML Les langages de domaines ou langages métiers, langages spécialisés - sont de petite taille, facilement manipulables, transformables, combinables Ils sont à la base de l automatisation de l IDM chez Microsoft. 6

Aperçu de l approche IBM de l IDM Approche IBM Est présentée dans Manifeste IBM MDA Manifesto Est mise en œuvre par exemple dans DSL UML XML Références Outillage EMF Se base sur Langage de définition de métamodèles Ecore «An MDA Manifesto» MDA Journal, May 2004 http://www.bptrends.com Selon le manifeste d IBM, les 3 axes de l IDM sont : Les standards ouverts : UML, XML, et autres standards. L automatisation : possibilité de traitement automatique des modèles (tissage, vérification, transformation, etc). La représentation directe : DSL, langages précis et outillés (éditeurs, générateurs, vérificateurs, etc). 7

Des considérations générales sur l IDM IDM Préconise d utiliser Gère séparation par Métamodèle Aspect Intègre Repose sur Architecture multi-niveaux 8

Métamodèle, langage de modélisation IDM Préconise d utiliser Métamodèle 1 Il existe une grande variété de métamodèles spécialisés pour les DSL A pour métamodèle UML : Métamodèle définit Langage d expression de modèle Métamodèle de DSL 1 A pour métamodèle UML : Langage d expression de modèle Langage spécialisé 1 Langage spécialisé dérivé d UML profil UML DSL 1 Langage de domaine Les profils UML permettent de définir des variantes d UML 9

Système modélisé, modèle, langage, métamodèle Métamodèle Modèle RepresentationDe EstConformeA Définit Exprime Langage d expression de modèle Système modélisé Modèle RepresentationDe «Un métamodèle est un modèle qui définit le langage d expression d un modèle» ; dans cette définition, le métamodèle joue le rôle de modèle du langage, le langage joue le rôle de système modélisé. Système modélisé Système étudié, monde réel (objet de la modélisation) CitationIDMauDelaDuMDA_p24 définition d un modèle : «Un modèle est une simplification d un système construit dans une intention particulière. Le modèle doit pouvoir répondre à des questions en lieux et place du système modélisé.» Définition dans le cas des modèles qui ont été formalisés afin de les rendre productifs : CitationIDMauDelaDuMDA_p25 : «Un modèle est une description (d une partie) d un système écrite dans un langage bien défini.» CitationIDMauDelaDuMDA_p26 définition d un métamodèle : «Un métamodèle est un modèle qui définit le langage d expression d un modèle.» CitationIDMauDelaDuMDA_p24 : «La relation RepresentationDe est liée à la notion de modèle, alors que la relation EstConformeA permet de définir la notion de modèle par rapport à celle de métamodèle.» CitationIDMauDelaDuMDA_p26 : «En fait, l originalité de l IDM n est pas de mettre l accent sur la relation RepresentationDe liant un modèle au système modélisé mais sur la relation EstConformeA liant un modèle au métamodèle auquel il est conforme. Ceci permet d assurer d un point de vue théorique mais surtout opérationnel qu un modèle est correctement construit et donc qu il est envisageable de lui appliquer des transformations automatisées.» CitationIDMauDelaDuMDA_p27 : «Un métamodèle est un moyen concret de définir un langage, ce n est pas un langage.» CitationIDMauDelaDuMDA_p25 : «Contrairement à une idée parfois véhiculée, un métamodèle n est pas un modèle d un modèle.» CitationIDMauDelaDuMDA_p26 : «Un métamodèle est un modèle d un langage de modélisation.» 10

Exemple de : Système modélisé, modèle, langage, métamodèle La légende de carte géographique, explicitant les conventions de représentation des départements et régions La carte géographique de la France représentant les départements et régions LegendeCarte : Métamodèle EstConformeA CarteGeogrFrance : Modèle RepresentationDe ensembledescartesign : Langage Le «langage des cartes IGN» : l ensemble des cartes décrites selon les conventions IGN, en tant que mode d expression/communication d information. La légende, description de modes d expression employés dans les cartes est une représentation du «langage des cartes IGN». RepresentationDe Le système administratif français dans lequel le découpage en départements et régions correspond à une décision politique SystAdminFrance : Système modélisé 11

Des relations et concepts de l IDM IDM intègre Relation Relation fondamentale EstConformeA : Relation RepresentationDe : Relation HeriteDe : Relation InstanceDe : Relation Relation essentielle des technologies orientées objet Concept Modèle Langage Métamodèle Transformation Artéfact de 1 er ordre 12

Séparation des préoccupations IDM Gère la séparation par Aspect ou point de vue Pris en compte par EstConformeA Modèle 1 1 1 1 Métamodèle Aspects fonctionnels : Aspect Qualité de service : Aspect Sécurité : Aspect Pour l IDM, les aspects à prendre en compte couvrent toutes les préoccupations relatives aux développement, maintenance et évolution des systèmes à prépondérance logicielle Etc MDA Aspect prioritaire Aspects indépendants de la plate-forme : Aspect Aspects liés à la plate-forme : Aspect PIM : Modèle PSM : Modèle CitationIDMauDelaDuMDA_p23 : «L IDM gère la séparation des préoccupations à tous les niveaux d abstraction via l utilisation de (méta) modèles multiples.» 13

Espaces techniques, l IDM et l approche orientée objet IDM intègre Repose sur 1 1 Architecture multi-niveaux L IDM a pour but d intégrer de multiples espaces techniques. des documents structurés XML des grammaires des ontologies MDA est fondée sur des technologies orientées objet des bases de données relationnelles Les technologies orientées objet forment un espace technique particulier. L approche MDA est fondée sur une technologie orientée objet, ce qui n est pas imposé par l IDM. 14

Architecture multi-niveaux pour les modèles EstConformeA Illustration Niveau M3 Métamétamodèle Langage de description de métamodèles MOF : Métamétamodèle Le monde des modèles Niveau M2 EstConformeA Métamodèle EstConformeA Le métamodèle de UML : Métamodèle Niveau M1 Modèle Un modèle écrit en UML : Modèle RepresentationDe Le monde réel Niveau M0 Système modélisé Système étudié 15

Architecture multi-niveaux (hiérarchie de métamodèles) dans divers domaines de l informatique Illustration Domaine des grammaires Domaine des modèles Domaine des documents Domaine des BD Niveau M3 Langages de description de grammaires (ex : EBNF) Langages de description de métamodèles (ex : MOF) Langages de description de documents (ex : XML) Langages de description de schémas (ex : algèbre relationnelle) Niveau M2 La grammaire de Java Le métamodèle de UML Un schéma XML Un schéma relationnel Niveau M1 Un programme Java spécifique Un modèle UML spécifique Un document XML spécifique Une BD relationnelle spécifique des grammaires des modèles des documents des BD 16

Espaces techniques Un espace technique est l ensemble des outils et techniques issus d une pyramide de métamodèles dont le sommet est occupé par une famille de (méta)métamodèles similaires. des grammaires Grammarware : des modèles Modelware : des documents Docware : des BD BDware : Les langages de définition de grammaires BNF EBNF Etc Les métamétamodèles Ecore KM3 Au sommet de la pyramide : MOF Kermeta DSMDL Etc Les langages de marquage (markup languages) XML SGML HTML Etc Autour des techniques et théories de la compilation Connaissances, savoir faire et technologies développés : Autour du transport et des transformations Autour de la représentation et de la recherche 17

Rôle/utilisation des modèles Méthode de modélisation Prône utilisation systématique de Gère principalement Prône utilisation systématique de Métamodèle IDM Information Engineering : Méthode de modélisation (Etats-Unis) SSADM : Méthode de modélisation (Royaume-Uni) Merise : Méthode de modélisation (France) Modèle contemplatif Modèle EstConformeA Sert Modèle productif A pour préoccupation d obtenir Modèle exprimant formellement le contenu d un modèle Modèle exprimant formellement une transformation de modèle Se concentre sur Ne prend pas ou peu en compte Phases amont (analyse, conception) Cycle de vie du logiciel Implémentation et phases aval (codage, tests, déploiement, maintenance) Couvre tout CitationIDMauDelaDuMDA_p22 : «Pour qu un modèle soit «productif», il doit être interprétable et manipulable par une machine. Il est considéré comme essentiel dans le cadre de l IDM de pouvoir exprimer formellement le contenu d un modèle et «quoi faire» avec ce modèle et ceci quel que soit le niveau d abstraction. Ceci se traduit par le besoin d exprimer formellement les transformations entre modèles, les rendant ainsi productifs. Pour cela il est indispensable de formaliser non seulement les modèles, mais aussi les langages dans lesquels ceux-ci sont décrits, et finalement les métamodèles décrivant ces langages.» CitationIDMauDelaDuMDA_p23 : «L IDM est basée sur la notion de (méta) modèles productifs, de transformations explicites et outillées interprétables par une machine. L IDM couvre tout le cycle de vie du logiciel.» Le modèle contemplatif est utile pour la communication et la compréhension, il est interprété/transformé par des acteurs humains. Le modèle productif est utile en production, il est interprétable/manipulable par des machines. 18

Cadre plus global de l IDM Discours unificateur de l IDM : «tout est système». Systeme C est vis-à-vis d un autre système qu un système joue un rôle de modèle, ou de système étudié, ou de métamodèle Aucun système n est intrinsèquement un modèle. «Être un modèle» n est pas une propriété en soi, c est le rôle que peut jouer un système par rapport à un autre, dans une situation particulière. Par exemple, la carte topographique UneCarte joue ici d une part le rôle de modèle (par rapport au système physique LaTerre) et d autre part le rôle de système étudié (par rapport à son modèle numérique UnFichierXML) : unfichierxml : Systeme RepresentationDe Modèle Système étudié UneCarte : Systeme RepresentationDe Modèle Système étudié LaTerre : Systeme Exemples de classifications des systèmes : SystemePhysique SystemeNumerique SystemeAbstrait Systeme SystemeStatique SystemeDynamique CitationIDMauDelaDuMDA_p38 : «Un modèle est une abstraction d un système modélisé construite dans une intention particulière. Un modèle doit pouvoir être utilisé pour répondre à des questions sur le système modélisé.» CitationIDMauDelaDuMDA_p40 La relation RepresentationDe entre le modèle et le système étudié/modélisé «pourrait être raffinée en deux sous-types Décrit et Spécifie» : Sous-type Décrit : «Le modèle est utilisé pour «décrire» un système existant. C est le cas d une carte topographique.» Sous-type Spécifie : «Certains modèles, comme le plan d un architecte, servent à «spécifier» un système à construire.» CitationIDMauDelaDuMDA_p37 Systèmes physique, numérique, abstrait : «Système physique : système concret et observable appartenant au monde physique. On peut citer comme exemples un chien, le système solaire, une carte topographique, une mappemonde, la planète Terre, une pipe, un tableau, etc.» «Système numérique : système formé d une séquence de bits. Les systèmes de ce type résident et sont manipulés par un ordinateur. C est à ce genre de système que l on s intéresse en informatique. Il peut s agir par exemple d un fichier, d un diagramme UML, du contenu d une base de données, d un logiciel et de sa documentation, etc.» «Système abstrait : système immatériel typiquement manipulé par le cerveau humain. C est le cas des concepts abstraits comme par exemple un compte bancaire, un cercle, des entités mathématiques comme les entiers, les ensembles, les fonctions, etc.» CitationIDMauDelaDuMDA_p38 : «Un système est dynamique si son état évolue au cours du temps.» «Par exemple une carte topographique est un système physique statique, un fichier XML est un système digital statique, alors que le système solaire est un système physique dynamique : il évolue en fonction du temps.» 19

Le génie logiciel et l IDM : une approche unificatrice par les modèles L IDM offre un cadre méthodologique et technologique unificateur grâce à l utilisation intensive des modèles et des transformations entre les modèles. S appuie sur Espace technique 1 1 intègre Choisit le plus adapté Activité du développement logiciel 1 IDM produit Permet cohérence, traçabilité Point de vue du logiciel Artefact Donne Formalisme UML Graphe Fichier XML Expression des besoins Analyse Conception Implantation Validation Documentation Diagrammes Codes sources Fiches de tests Fichiers de configuration Rapports de qualification CitationIDMauDelaDuMDA_p53 : «rôle unificateur de l ingénierie des modèles (IDM) vis-à-vis des différentes activités du cycle de développement du logiciel, et de manière plus large, pour le génie logiciel.» CitationIDMauDelaDuMDA_p53 : Des questions auxquelles est confronté le génie logiciel : - «trouver un compromis entre un système parfaitement bien conçu (qui pourrait demander un temps infini pour être construit) et un système trop vite fait (qu il serait difficile de mettre au point et de maintenir), en conciliant trois forces largement antagonistes : les délais, les coûts, et la qualité». - «produire, en respectant un coût et des délais raisonnables, un système suffisamment bon, compte tenu de son contexte d utilisation». - «comment réaliser une implantation de qualité avec des spécifications continuellement mouvantes». - produire «simultanément toute une gamme (ou famille) de produits pour prendre en compte des variations de fonctionnalités ou d environnements». CitationIDMauDelaDuMDA_p54 : tout «processus de développement logiciel englobe un certain nombre d activités (comme l expression des besoins, l analyse, la conception, l implantation ou encore la validation) qui chacune produit un ou plusieurs artefacts tels que documentation, diagrammes, codes sources, fichiers de configuration, fiches de tests, rapports de qualification, etc. Ces artefacts donnent de multiples points de vue sur le logiciel en cours de développement». Un soucis est «d assurer une cohérence entre ces vues, ou au minimum une traçabilité entre les éléments des différents artefacts». L IDM offre un cadre méthodologique et technologique unificateur grâce à l utilisation intensive des modèles et des transformations entre les modèles. «Les transformations permettent de choisir l espace technique et le formalisme le plus adapté à chaque activité (par exemple conception en UML, génération de test sur des graphes, configuration lors du déploiement via des fichiers XML), tout en ayant un cadre méthodologique unique, l IDM.» CitationIDMauDelaDuMDA_p61 : «Le principe même de l IDM est de capitaliser le savoir faire au niveau des modèles et non plus au niveau du code source. On passe des approches centrées code vers les approches centrées modèles tout en ayant comme objectif de générer/synthétiser une application sous la forme d un code, binaire ou autre, afin de pouvoir l exécuter ou l interpréter sur une machine matérielle donnée» (des techniques de synthèse d applications logicielles à partir de modèles : «l interprétation de modèles ; la compilation de modèles ; et la génération de code»). 20

Liens Site international sur l IDM : http://planet-mde.org the «Portal of the Model Driven Engineering Community» Réseau IDM francophone : http://www.actionidm.org «L'action IDM vise à la diffusion des informations et à la concordance des travaux des équipes travaillant sur des thématiques relatives à l'ingénierie dirigée par les modèles (IDM).» Abréviations, sigles BD : Base de Données CIM : Computation Independent Models (dans la démarche MDA) DSL : Domain Specific Language EMF : Eclipse Modeling Framework IDM : Ingénierie Dirigée par les Modèles. Terme français pour MDE MDA : Model Driven Architecture MDE : Model Driven Engineering. Terme anglais pour IDM MOF : Meta-Object Facility OMG : Object Management Group PDM : Platform Description Models (dans la démarche MDA) PIM : Platform Independent Models (dans la démarche MDA) PSM : Platform Specific Models (dans la démarche MDA) UML : Unified Modeling Language QVT : Query/View/Transformation XML : exxtensible Markup Language (langage de balisage extensible) 21

Quelques éléments sur les notations UML : concept_1 concept_2 concept_3 concept_4 concept_5 concept_6 concept_4 est une spécialisation de concept_3. concept_5 comprend (est composé de) concept 6. Association Généralisation Composition Exemples : parent mouton 1 4 patte père mère Personne Paul : Adulte père fille Sophie : Enfant Adulte Enfant Diagramme de classes Diagramme d instances Un diagramme d instances (ou diagramme d objets) est un instantané des objets d un système à un moment donné. Quelques éléments sur les notations UML Comme la plupart des illustrations de ce dossier utilisent le formalisme UML (Unified Modeling language), il est donné sur cette dernière page quelques éléments sur les notations UML. 22