Les modèles pourquoi faire?



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

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

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

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

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

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

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

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

IFT2255 : Génie logiciel

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

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

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

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

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

Cours en ligne Développement Java pour le web

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

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

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

Analyse,, Conception des Systèmes Informatiques

Objectif du cours. Outline. Complexité des systèmes modernes. La modélisation et UML dans les activités du Génie Logiciel...

Modelio by Modeliosoft

Description de la formation

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

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

OCL - Object Constraint Language

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

Patrons de Conception (Design Patterns)

Modèles système, modèles logiciel et modèles de code dans les applications spatiales

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

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

RTDS G3. Emmanuel Gaudin

Synergies entre Artisan Studio et outils PLM

Master Data Management en Open Source C est le Bon Moment

Projet de développement

Méthodologies de développement de logiciels de gestion

Refonte front-office / back-office - Architecture & Conception -

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

répondre aux défis de l ingénierie logicielle déploiement et mise en œuvre opérationnelle : l'industrialisation au service de la compétitivité

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

Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P

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

Présentation des formations courtes en Architecture d Entreprise

Génie logiciel (Un aperçu)

Formation : Modélisation avec UML 2.0 et Mise en pratique

Chapitre I : le langage UML et le processus unifié

1. Plan. 1. Plan Information essentielles...2

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

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

CATALOGUE FORMATION. Product Lifecycle Management. Juin 2013

Ineum Consulting. Pourquoi le PLM. Soirée Innovation industrielle «Usage des TIC en mode collaboratif & Industrie» Frédéric Morizot.

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

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

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

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

Projet Active Object

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

Introduction au génie logiciel

Plan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml

Classeur de suivi de l auditeur. Architecture et Ingénierie des Systèmes et des Logiciels

Évaluation et implémentation des langages

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

Industrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational

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

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

Sujet de thèse CIFRE RESULIS / LGI2P

Une architecture pour les transformations de modèles et la restructuration de modèles uml

UML (Paquetage) Unified Modeling Language

Maîtrisez la modernisation de votre patrimoine applicatif

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

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.

Université de Bangui. Modélisons en UML

Burckel Thomas. Formation. Compétences

Les nouvelles architectures des SI : Etat de l Art

Conception. Génie Logiciel. Renaud Marlet. LaBRI / INRIA (d'après A.-M. Hugues) màj 17/04/2007

Mise en œuvre des serveurs d application

Travaux soutenus par l ANR. Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting)

analyse et pérennise votre patrimoine informationnel

1.2 Genèse. 1.3 Version de Designer utilisée

Introduction à la conception de systèmes d information

JOnAS 5. Serveur d application d

DEVELOPPEMENT MOBILE - ETAT DE L ART DES SOLUTIONS

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

Dématérialiser les échanges avec les entreprises et les collectivités

NFP111 Systèmes et Applications Réparties

Introduction du test dans la modélisation par aspects

ÉdIteur officiel et fournisseur de ServIceS professionnels du LogIcIeL open Source ScILab

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Le génie logiciel. maintenance de logiciels.

Retour d expériences avec UML

Stratégie Open Source et Présentation du Centre de recherche et d innovation sur le logiciel libre

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/

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

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

Modélisation des processus métiers et standardisation

Analyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.

Conception des systèmes répartis

Transcription:

Les modèles pourquoi faire? Equipe MACAO 1

L IDM : qu est-ce que c est? Principes fondateurs Motivations MDA 2

Approche Ingénierie Dirigée par les modèles (IDM/MDE) Evolution Programmation orientée objets Programmation orientée composants Programmation orientée modèles Modèle = "Citoyen de première classe" 3

Qu est-ce que l approche IDM? La description du modèle Abstrait Le modèle Abstrait Le monde réel 4

IDM : Une architecture à 4 niveaux M3 méta-méta Le MOF (Meta Object Facility) modèle M2 Les méta-modèles méta-modèle Les modèles M1 M0 modèle Différentes utilisations de ces modèles "le monde réel" 5

IDM : Motivation Nous ne voulons plus financer le portage de notre système informatique vers une nouvelle plate-forme (Java, CORBA, HTML, XML,.Net, J2EE, etc) alors que notre modèle métier reste stable. Tout ce que nous pouvons accepter c'est de payer une dernière fois pour la construction de modèles abstraits de notre métier et des services associés, modèles qui nous garantiront contre l'obsolescence technologique des plateformes. Tout nouveau fournisseur de plateforme sera prié de nous livrer en même temps que sa plateforme les outils de transformation permettant de générer, vers cette plateforme, à partir des modèles neutres de métier et de service. 6

IDM : Motivation Evolution des technologies EJB, Dot Net, Androïd, Eclipse, Séparation métier/architecture Séparer ce qui est pérenne de ce qui évolue vite Stabilité des algorithmes Capitalisation du savoir faire métier Patrons de conception Objet métier Il faut s abstraire du code architecture 7

MDA : Fondements Séparation des préoccupations Modèles indépendants de calculs (CIM) Modèles indépendants des plates-formes (PIM) Modèles de description des plates-formes (PDM) Modèles spécifiques aux plates-formes (PSM) Transformations de modèles Des modèles PIM vers les modèles PSM Des modèles PSM vers le code Vers des modèles productifs 8

MDA : Transformation CIM PIM PDM PIM Raffinement PSM tn em eni ff a R Ra ffin em en t PDM M2M Tissage Transformation PSM M2T Code 9

QVT Standard de l OMG Constituants Requête Filtrer et sélectionner des éléments d un modèle Vues Vue = modèle déduit d un autre pour en révéler des aspects spécifiques. Transformation QVT-Relation : langage déclaratif (Prolog) QVT-Core : la sémantique des concepts déclaratifs (Pascal, C) QVT-Operational : langage hybride Structure déclarative à base de règles Utilisation d'expressions impératives 10

Les standards de l IDM UML DSL XMI MOF/Ecore OCL 11

Référence à des standards Modéliser UML (Unified Modeling Language) DSL (Domain Specific Language) Méta-modéliser MOF (Meta Object Facility de l OMG) Ecore (Eclipse) Echanger les modèles et des méta-modèles XMI (XML MetaData Interchange) Naviguer et interroger les modèles et méta-modèles OCL (Object Constraint Language) 12

UML A1 Evénement [Garde] Paquetage A2 A Paquetage 1 sd nom :A B :B Paquetage 2 Service 1 loop [condition] Service 2 A Service 3 Cas 1 Cas 2 Cas 3 13

UML : Plusieurs vues Diagrammes UML 2.0 Diagrammes structurels Diagramme Diagramme d'objets d objets Diagramme de classes Diagrammes comportementaux Diagramme de composants Diagramme de cas d utilisation Diagramme de déploiement Diagramme d activités Diagramme de paquetages Diagramme des interactions Diagramme Diagram de structures composites de Structure Composite me Diagramme de collaboration Diagramme d états-transitions Diagramme de structure interne Diagramme Diagrammede Communication de séquence Diagramme de Diagramme Timing de timing Diagramme de communication Diagramme Diagramme de de vue d ensemble vue d'ensemble des des interactions interactions 14

DSL Utilisation de tournures idiomatiques au niveau d'abstraction du domaine traité Proche des experts car logique métier Documentation du code simplifiée Amélioration de la qualité, la productivité, la fiabilité, la maintenabilité, la portabilité et les possibilités de réutilisation Validation au niveau du domaine Un domaine = un langage beaucoup de langages 15

MOF - Ecore Méta-méta-modèle Modèle des concepts d un méta-modèle (d un langage) Définition d une syntaxe et d une sémantique Concepts pour définir tout méta-modèle Diagramme de classes pour la syntaxe abstraite Règles OCL pour la sémantique Vision OMG : noyau d UML Méta-modèle UML (première expérience) conforme au MOF Description d un méta-modèle par conformité au MOF 16

Un fragment du méta-modèle molécule Molecular Entity contains MolecularGroup Atom 17 17

XMI Personne - nom - prenom 18

OCL Langage déclaratif typé Valeurs, expressions Sans effet de bord Spécification formelle d un modèle UML Pré-conditions et post-conditions de méthode Invariants de classe Sémantique d UML Règles de bonne formation des modèles UML (WFR) Vérification statique de modèles UML 19

OCL : Exemples Pile context Pile inv : self.sommet >= 0 - sommet : entier + empiler (e : E) + dépiler () context Pile::dépiler() pre : self.sommet > 0 post : self.sommet = self.sommet@pre - 1 20

Les outils de l IDM Outils commerciaux Outils opensources Topcased Critères de choix 21

Quelques Outils Commerciaux Offre Editeur MM-Modele M2T M2M Intégration IDE Modeleur Blu Age Netfective Technology MOF Ecore JET QVT Eclipse Ouvert MDWorkbench Sodius Ecore Propre QVT ATL Eclipse Ouvert Mia-Studio Mia Software MOF Ecore Propre Propre ATL Eclipse Ouvert RSM RSA IBM Ecore JET Propre Eclipse/ RSA Ouvert DSL Tools Microsoft Microsoft DSL Propre Visual Studio Visual Studio Objecteering Objecteering? Propre Eclipse Visual S. Objecteering Propre 22

Quelques Outils Opensource Intégration IDE Modeleur Propre Eclipse Ouvert MOF Velocity Ouvert MagicDraw Poseidon Offre Editeur MM-Modele M2T Acceleo Obeo Ecore AndroMDA 3.x M2M Eclipse M2T & M2M Eclipse Ecore JET ATL QVT Eclipse Ouvert Topcased Topcased Ecore Ouvert Ouvert Eclipse Ouvert ATL Univ. De Nantes Ecore Propre Propre Eclipse Ouvert Kermeta IRISA Ecore Propre Propre Eclipse Ouvert SmarQVT France Telecom Ecore Propre Propre Eclipse Ouvert Acceleo Pro est la version commerciale de Acceleo incluant le M2M 23

Topcased Plate-forme pour le développement de systèmes Spécifier des équipements aux niveaux logiciels et de matériels Détailler les spécifications logicielles pour des systèmes à dominante logicielle Processus homogène outillé Mettre en oeuvre un processus de la spécification à l outil final en ayant les bon outils Editeur de modèles et de méta-modèles Editeur de transformations et les exécuter Prouveur et simulateurs Editeur de code 24

Cinq questions préalables Quelles transformations? Quel langage de transformation? Quelle approche de génération? Quelle intégration dans l environnement de génération? Solution clef en main ou à façon? 25

Critères de choix Quel type d outil et quelles contraintes Outils commerciaux : Arrêt du support de l outil Rachat de l entreprise Outils opensources : Dynamisme de la communauté Coût induit Service offerts autour de l outil 26

L IDM mais pour quelles thématiques? En vogue Emergeantes Décroissantes A explorer 27

Thématiques en vogue IDM et les méthodes formelles (model checking) Transformation de modèles semi-formels vers des modèles formels : SPaCIFY, VerifME Processus de développement orientés modèles DOMINO, Topcased Génération de code à partir des modèles Scade, Gene-auto, SPaCIFY 28

Thématiques en vogue Traçabilité Topcased, VerifME Outillage IDM MDT::Papyrus, TOPCASED, ATL, Kermeta MDWorkbench, Aceleo 29

Thématiques émergeantes IDM et les systèmes d information Etl 30

Thématiques en décroissance L idée originale du MDA Conception d application par transformations successives en partant d un PIM et d un PDM et fournissant un PSM Rien dans le GDR GPL Rien dans les projets étudiés Une allusion dans les présentations des journées NEPTUNE (Approche ifest) 31

Thématiques à explorer IDM et les applications médicales Projet allemand : Freeband AWARENESS project Projet américain : The Open Health Tools Platform Project A Model Driven Engineering System Et en France? 32

IDM : Ce qu en pensent les industriels et les autres Sondage lors des journées NEPTUNE 2011 CEA, Airbus, Astrium, ANR, Thales, ESA, Sodius, SNCF, Jaxio, Trialog Synthèse de A. Rossignol (Astrium) et E. Najm (Telecom ParisTech) 33

Points forts / points acquis Améliore sensiblement la qualité des développements Documentation intégration Aide à guider les développements Partage et pérennisation du savoir métier Formalisation de la connaissance Détection des erreurs au plus tôt dans le cycle de développement Améliorer la fiabilité et la robustesse des applications produites IDM commence à bien fonctionner sur des processus simples 34

Points forts / points acquis Maturité Produits SCADE, Rhapsody, Simulink, Existence de success stories Dynamique de plus en plus forte Informatique de gestion Grands intégrateurs Premiers retours d expériences préliminaires positifs Ariane 5 ME, Démonstrateur pour Astrium Space Transportation 35

Points forts / points acquis Retour sur investissement Plus de temps passé sur des activités à hautes valeurs ajoutées Automatisation des transformations et des vérifications Réduction des coûts de développement par une Analyse des erreurs Meilleure communication entre équipes Réutilisation d existant Approche reconnue et formation des ingénieurs en cours Couverture de nombreux domaines Système Système à prédominante logiciel Logiciel Génération de code Système numérique 36

Points faibles ou d améliorations Formalisme Faiblesse de la prise en compte des propriétés nonfonctionnelles dans l IDM Debug de modèle Trop de formalismes développés Réduire les représentations possible et standardiser d avantage pour établir des passerelles entre ces notations Approche souvent peu formelle Certains domaines non encore couverts, ou de manière non satisfaisante système temps réel critique 37

Points faibles ou d améliorations Outillage Utilisation des outils d analyse en milieu industriel Génération de code Manque de maturité de certains outils Réfléchir à des outils gommant le caractères abscond de l IDM Visualisation 3D Simulateur de modèles Pérennité des outils sur le très long terme Interopérabilité des outils Bus de modèles? 38

Points faibles ou d améliorations Humain et formation Formation écoles et universités à améliorer Frein psychologique : Modification des habitudes de développement Intégration et transformation de modèles non encore satisfaisants Passage à l échelle IDM reste difficile pour des développements complexes Gros volume de données Partage de modèles => travail sur des parties de modèles 39

Verrous majeurs pour une plus large adoption Formalisme et supports Pérennité des outils sur le très long terme Coûts des licences Prédominance d IBM dans les outils de génie logiciel Importance des outils open-source Outils graphiques utilisables avec des ponts/passerelles entre les notation les plus utilisées Besoin d outils métier Définir un sous ensemble de et fournir des outils adéquates Expertises autour des technologies Eclipse/EMF, langages et méta-modèles 40

Verrous majeurs pour une plus large adoption Passage à l échelle et à une meilleure industrialisation Manipulation de gros modèles Réservé aux gros projets de type Défense, Automobile ou Télécom (ROI) Complexité de mise en œuvre sur de grosses équipes Simplification de l utilisation, de la mise en place et de l utilisation des solutions IDM Travail collaboratif gestion de différentes versions de modèles Cas d étude industriel qui utilise l IDM de bout en bout du développement Utilisation dès les phases préliminaires jusqu à la création de l implémentation PME/PMI semble peu utilisatrice de l IDM? Disposer d outils orientés métier (simples!!!) notamment pour les phases d ingénierie système 41

Verrous majeurs pour une plus large adoption Humain Niveau trop faible des informaticiens dans l industrie En informatique théorique et en particulier du fait que l informatique est adossé aux mathématiques Demande des profils de haut niveau Manipulation de graphes Abstractions multi-domaines Méthodes formelles Barrage culturel, psychologique, programmation = acquis social, confort, Oblige à faire trop d investissement intellectuel 42

Facteur de croissance et décroissance Industrie Soutien constant et appuyé Informatique de gestion Conservation de «souveraineté technologique» Académique INRIA CNRS France et Allemagne L IDM à l étranger USA Chine, Brésil, Inde 43

Merci de votre attention Questions 44

Sources IDM Cours de C. Percebois : «Ingénierie du logiciel dirigée par les modèles» (Licence SIL qualité IUT «A» UPS) Cours de J.-M. Bruel : «IDM concepts de base» (Master NTIE - l UTM) Cours F.-Y. Villemin : «L'architecture dirigée par les modèles (MDA)» (CNAM Paris) http://deptinfo.cnam.fr/enseignement/cyclespecialisation/mai/doc/m Cours B. Combemale, X. Crégut, M. Pantel : «Transformation de Modèles :Principes, Standards et Exemples» http://combemale.perso.enseeiht.fr/teaching/metamodeling0708/idm 45

Sources Méta-modèle des molécules http://www.avt.rwth-aachen.de/avt/fileadmin/files/ Service_software/Software_Simulation/Material.pdf Outils http://neptune.irit.fr/images/files/neptune2009/transparents/p10_ Topcased http://gforge.enseeiht.fr/docman/view.php/52/3627/topcased-pres Journées GDR-GPL Présentation des résultats des journées NEPTUNE http://neptune.irit.fr/images/files/gdr-gpl2011/neptune-2011-gdr.p 46