1 / 45

Pr sentation MDA-MDE

Objectifs de la prsentation. Comprendre le rle de l'OMGComprendre l'approche MDA et MDEConnatre les principaux fournisseurs de cette approcheConnatre les forces et les faiblessesAvoir des exemples concrets d'implantations. Droulement de la prsentation. 1. Object Management Group (OMG). 2. Model-Driven Engineering (MDE).

lynne
Télécharger la présentation

Pr sentation MDA-MDE

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Présentation MDA-MDE Cours Modélisation des SI et de la connaissance Yves Perreault et Jerry Molin 18 mars 2008

    2. Objectifs de la présentation Comprendre le rôle de l’OMG Comprendre l’approche MDA et MDE Connaître les principaux fournisseurs de cette approche Connaître les forces et les faiblesses Avoir des exemples concrets d’implantations

    3. Déroulement de la présentation

    4. OMG Caractéristiques Organisme à but non lucratif Supporté financièrement par ± 100 entreprises Siège social à Needham, Massachussets Bureaux d’affaires dans plusieurs pays Objectifs de l’OMG ? Coûts ? Complexité ? La vitesse d’introduction des nouveaux produits logiciels Ces objectifs étant aidés par l’intégration de MDA

    5. OMG Le comité Technologique est représenté par les membres des entreprises Le comité de Direction et le comité Technologique travaillent à l’identification des besoins Processus d’approbation de standards Le mode de sélection / acquisition se fait par Appel de propositions Après évaluation des propositions les membres des entreprises doivent voter Il existe également, un processus “RFC (Request for public Comment)” Il faut miser sur l’interopérabilité et l’universalité des systèmes

    6. OMG OMG s’est engagé sur la voie du MDA afin de résoudre les problèmes d’interopérabilité et de portabilité dès le niveau de la modélisation. Le concept du Model Driving Architecture (MDA) a été lançé en 2001. ADTF (Analysis and Design Task Force) de l’OMG était responsable de ce développement. Initialement le concept devait s’appeler ADM pour « Architecture-Driven Modernization  »

    7. OMG Quelques standards importants de l’OMG: Model Driven Architecture (MDA) Unified Modeling Language (UML) Meta Object Facility (MOF) XML Metadata Interchange (XMI) Common Warehouse Metamodel (CWM) Common Object Request Broker Architecture (CORBA) Model Driven Development (MDD) Systems Modeling Language (SysML) Query / View / Transformation (QVT) Etc.

    8. OMG L'OMG adopte SysML Edition du 13/07/2006 - par Pierre Tran L'Object Management Group (OMG) a annoncé l'adoption du langage OMG SysML (Systems Modeling Language) en tant que standard. SysML est un langage de modélisation graphique généraliste pour spécifier, analyser, concevoir et vérifier des systèmes complexes qui peuvent inclure du matériel, du logiciel, des informations, des personnes, des procédures... En particulier, le langage fournit des représentations graphiques avec une fondation sémantique pour modéliser des exigences système, des comportements, des structures, et l'intégration avec un large éventail d'outils d'analyse et d'ingénierie. SysML est un sous-ensemble de UML 2.0 auquel on a rajouté des extensions pour satisfaire aux exigences de UML for Systems Engineering RFP. SysML utilise le standard XMI (XML Metadata Interchange) de l'OMG pour échanger les données de modélisation entre les outils, et a l'intention d'être compatible avec le standard ISO 10303-233 d'échange des données d'ingénierie de systèmes.

    9. Qu’est-ce que MDE ? L'Ingénierie Des Modèles (IDM) ou Model-Driven Engineering (MDE), est une approche générique qui reprend  et  améliore les concepts et usages communs aux références internationales telles que : Model Driven Architecture, Software Factories, Model Integrated Computing, Model Management, Model Driven Design, Generative Programming

    10. Historique Le prédécésseur de MDE était CASE (Computer-Aided Software Engineering) dans les années 80. Outils et méthodes de développement de logiciel Problèmes à suivre, l’évolution des langages et des systèmes d’exploitation. Parce que l'ingénierie des modèles est un moyen efficace d'amélioration continue des processus d'ingénierie. MDE a une portée plus large que MDA, il se combine avec des processus d'analyse et d'architecture

    11. Objectifs Son objectif est de révéler les apports positifs liés à des approches «métier» : Amélioration du processus de développement logiciel, Gestion des exigences, Conception logiciels, Conception des systèmes, Gestion des tests

    12. Exemples de questions Quelques exemples de questions a réaliser avec l’approche MDE : Combien de couches d’abstraction sont requises ? Quelles plateformes doivent être intégrées ? Quelles sont les notations de modélisation ? Combien « d’Abstracts syntax » à chacun des niveaux ? Est-ce que le « Refinement » est efficace ? Quelles plateformes et informations au plus bas niveau d’abstraction ? Comment le code est généré suite à la modélisation ? Comment déployer ce code ? Comment sera effectuée la validation du code ?

    13. Représentation graphique

    14. Exemple… Marqueurs générés avec l’approche MDE

    15. Exemple… Commande en Java développement dans le menu Eclipse

    16. Forces et faiblesses (+) Grande économie de temps et $ pour les entreprises dans le processus de développement des applications. (+) Les développeurs n’ont pas à connaître les syntaxes concrètes et abstraites de la modélisation du langage. (-) Approche complexe qui sera maîtrisée par des spécialistes seniors.

    17. Qu’est-ce que MDA ? MDA est une approche pour le développement de système qui procure une méthode pour l’utilisation de modèles dans la conception, la construction, le déploiement, la maintenance et les modifications de systèmes Permet, via des outils, de : Spécifier un système indépendamment de la plateforme sur laquelle il sera implanté Transformer les spécifications d’un système pour une plateforme particulière 3 objectifs principaux de MDA: Portabilité: être utilisé sur des systèmes informatiques de types différents Interopérabilité: fonctionner conjointement avec d’autres systèmes Réutilisabilité logicielle: être réutilisé dans un autre système ou par une autre application

    18. Concepts du MDA Modèles Méta-modèle Les spécifications de transformations Transformation record

    19. Meta-Object Facility (MOF) L’approche MDA nécessite que les méta-modèles et les modèles qui en découlent soient bâtis selon le langage MOF Cela garanti que les modèles pourront être stockés dans des BD et transformés par des outils conforment au MOF Langages conformes au MOF permettent de modéliser la structure, le comportement et les données d’un système Exemple de langage de modélisation basés sur le MOF: UML, CWM

    20. Common Warehouse MetaModel (CWM) CWM standardise un méta-modèle complet, compréhensible qui permet de faire du data mining à travers les différentes bases de données de l’entreprise CWM est semblable au méta-modèle UML sauf qu’il est destiné à la modélisation des données

    21. Common Object Request Broker Architecture (CORBA) Une des plateformes cibles, tel que Java et .NET Mais contrairement aux autres plateformes dites middleware, celle-ci est indépendante de tout langage de programmation, de tout système d’exploitation et de tout fournisseur; plateforme "open" Ces éléments, assemblés afin de construire des applications complètes, peuvent être écrits dans des langages de programmation distincts, exécutés dans des processus séparés, voire déployés sur des machines distinctes langages supportés: C, C++, Java, COBOL, etc.

    22. XMI / XML XMI est le standard d’OMG pour stocker et échanger des méta-modèles et modèles (basés sur MOF) via XML Définit également un mapping pour passer d’un méta-modèle UML à un modèle XML

    23. Transformation des modèles Dans l’approche MDA, on a 3 perspectives (viewpoint): Computation Independent Se concentrer sur l’environnement et les exigences du système Mais les détails de la structure et du traitement du système ne sont pas encore déterminés Platform Independent Se concentre sur l’exploitation du système Mais sans spécifier une plateforme particulière Platform Specific Combine la perspective “platform independent” mais en spécifiant l’utilisation d’une plateforme en particulier

    24. Transformation des modèles Processus de transformation: On modélise les exigences du systèmes dans un Computation Independent Model (CIM) On construit un Platform Independent Model (PIM) Choisir une ou plusieurs plateformes La transformation se fera à l’aide d’un ou plusieurs mappings et des marques Le résultat sera un Platform Specific Model (PSM) ainsi qu’un transformation record

    25. Computation Independent Model (CIM) Est un modèle issu de la perspective compution independent Aussi appelé un domain model (lié à une industrie), où on utilise un vocabulaire familier aux praticiens de l’industrie en question pour élaborer les spécifications CIM situe le système dans l’environnement où il va fonctionner L’utilisateur principal du modèle n’a généralement pas la connaissance pour comprendre les autres modèles menant à la réalisation du système. Ce modèle est un outil de communication entre les practiciens et des concepteurs du système

    26. Platform Independent Model (PIM) Est un modèle issu de la perspective platform independent Représente un modèle conceptuel des exigences fonctionnelles du système Présente un certain degré d’indépendance pour qu’il puisse convenir à plusieurs plateformes de type similaire

    27. Mapping Le mapping fourni les spécifications pour guider la transformation de chaque élément du PIM en un ou plusieurs éléments du PSM pour une plateforme en particulier De plus, le concepteur va fournir de l’information additionnelle pour permettre la transformation en marquant le PIM. Cela va permettre des caractéristiques du PSM qui ne peuvent pas être déterminées à partir du PIM Ces marques devront être structurées ou même modélisées Le mapping pourra aussi contenir des patterns qui sont des modèles paramétrisés qui spécifient des types de transformations particulières

    28. Platform Specific Model (PSM) Est un modèle issu de la perspective platform specific Combine les spécifications du PIM avec les détails spécifiant comment le système utilise un type de plateforme en particulier Sera utilisé directement pour l’implantation du système ou bien sera considéré comme une version plus précise du PIM si toutes les précisions de la transformation n’ont pas encore été déterminées.

    29. Record of Transformation Sera produit comme output avec le PSM Inclu une « carte » faisant le lien entre les éléments du PIM et ceux du PSM en indiquant quelles parties du mapping ont été utilisées pour la transformation Un outil de modélisation MDA qui garde cet enregistrement est en mesure de synchroniser tous les changements dans l’un ou l’autre des modèles Ex.: a record of transformation shows that a particular class in the PIM becomes three classes in the PSM.

    30. Transformation des modèles Il y a principalement 4 méthodes de transformation de modèle: Transformation manuelle Transformer à l’aide de profile UML qui peut contenir des marques, mappings, des spécifications Transformation à l’aide de patterns Transformation automatique

    31. Fournisseurs et leurs produits

    32. Pathfinder Solution Caractéristiques de la solution: Architectural control Customizable Transformation Maps Clean separation of model and code Configurable model execution and testing Low cost of ownership

    33. IBM Rational Software Architect Produit: IBM Rational Software Architect 7.0 Caractéristiques de la solution: Prolonge la portée de la plateforme Éclipse 3.2 (environnement de développement de logiciels ouvert et extensible) facilite la transition entre l'architecture et le code à l'aide de transformations modèle-à-modèle et modèle-à-code, y compris les transformations inverses permet d'appliquer les modèles de conception inclus ou d’en créer afin d'assurer le respect des conventions et des meilleures pratiques Supporte: UML, Java, EJB, C++, DDL, Web

    34. IBM Rational Software Architect

    35. Avantages du MDA Portabilité Augmente la réutilisation Réduit les coûts et la complexité du développement et la gestion de système Interopérabilité multiplateforme Garantie que les standards basés sur différentes technologies d’implantation représentent des règles d’affaires identiques Indépendant des plateformes Réduit le temps, le coût et la complexité associés à l’ajustement d’application pour d’autres plateformes Modèles spécifiques à l’industrie Permet l’implantation rapide de nouvelles applications spécifiques à une industrie et ce, sur différentes plateformes Productivité Permet aux développeurs, architectes, aux administrateurs de systèmes d’utiliser un langage et des concepts communs facilitant la communication et l’intégration à travers les équipes

    36. Avantages du MDA Bénéfices financiers Réduction des coûts à travers le cycle de vie des applications Réduction du temps de développement pour toutes nouvelles applications Augmentation de la qualité des applications Augmentation du ROI en TI Incorporer rapidement les bénéfices venant de technologies émergentes dans leurs systèmes actuels

    37. Limites du MDA MDA ne spécifie pas comment convertir tous les types de PIM en un ou plusieurs PSM. Ainsi plusieurs vendeurs utilisent des tags ou d’autres méta-données pour que les différents PSM soient générés Coût externe associé à la démarche d’une firme de consultation

    38. Banque Coop Caractéristiques Située en Suisse Domaine bancaire en Europe Architecture MDA / UML / ArcStyler / Interactive Objects Approche MDO (Model Driven Offshoring) avec l’Inde Solution Legacy Transformation Factory Bénéfices Économies = ? des coûts traditionnels de réécritures des codes

    39. Siemens Transportation Systems Caractéristiques Siège social en Allemagne Bureau d’affaires = Asie, Europe et Amérique du Nord Composantes électriques et électroniques pour l’industrie ferroviaire Architecture MDA / UML / ArcStyler / Interactive Objects Approche MDO (Model Driven Offshoring) avec un centre à Budapest, Hongrie Bénéfices ? Réutisabilité, ? Efficience et ? Flexibilité

    40. Daimler Chrysler Caractéristiques Siège social en Allemagne Bureau d’affaires à travers le monde Vente de véhicules automobiles et camions Architecture MDA / UML / ArcStyler / Interactive Objects Bénéfices Optimisation de la gestion des multisites 15 % d’amélioration de la productivité (An 1) RSI de 12 mois 30 % d’amélioration de la productivité (An 2 et +)

    41. CGI Caractéristiques Siège social à Montréal Bureau d’affaires à travers le monde 4e Entreprise en Services TI en Amérique du Nord Architecture MDA / Rational / White Box / Codagen Devenir plus compétitif dans le marché Bénéfices Encapsulation = les programmeurs n’auront qu’à connaitre Java et non J2EE “patterns” RSI de 700 % après la première “ Iteration “ 32 % de réduction des coûts de développement

    42. CGI

    43. Deutsche Bank Bauspar Caractéristiques Siège social en Allemagne Bureau d’affaires en Europe Environnement IBM Mainframe, CICS, Cobol, DB2 Architecture MDA / UML / ArcStyler / Interactive Objects Bénéfices 40 % d’économies en coûts de développement Accès Web aux comptes Clients améliorés “Short time to market ”

    44. Le marché en 2006 Selon Gartner: 1 à 5% de pénétration de marché Technologie en émergence

    45. Bibliographie Articles FONDEMENT, Frédéric et SILAGHI, Raul, Defining Model Driving Engineering Processes, Swiss Federal Institute of Technology in Lausanne SCHMIDT, Douglas C., Model Driven Engineering, Vanderbilt University, Février 2006 MDA Guide V.1.0.1, OMG, Juin 2003 Hype Cycle for Emerging Technologies, Gartner, 2006 Sites web www.interactive-objects.com/fileadmin/pdf/success_stories/bankcoop/SuccessStory_Bank_Coop.pdf www.omg.org www.ibm.com www.wikipedia.com

    46. QUESTIONS ?

More Related