Ces modèles et métamodèles qui nous entourent! Cédric Dumoulin - DaRT

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

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

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

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

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

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

Génie logiciel (Un aperçu)

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

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

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

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

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

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

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

PloneLabs un gestionnaire de contenu pour les laboratoires

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

Projet de développement

Mercredi 15 Janvier 2014

RTDS G3. Emmanuel Gaudin

Cours en ligne Développement Java pour le web

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

Visual Paradigm Contraintes inter-associations

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

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

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

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

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

DotNet. Plan. Les outils de développement

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

Conception, architecture et urbanisation des systèmes d information

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

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

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

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

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

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

Maîtrisez la modernisation de votre patrimoine applicatif

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION

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

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

Migration et import de données

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

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

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

UML (Paquetage) Unified Modeling Language

L'année méthodologique internationale

Rappel sur les bases de données

Information utiles. webpage : Google+ : digiusto/

Je découvre Lina Maintenance

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.

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

Formations 2015 JASPER, REDMINE, TABLEAU, TALEND, SPAGO BI SYNALTIC 24 RUE DE L EGLISE VINCENNES

L'impact du langage UsiXML sur le e-commercee

Intégration d un ERP guidée par les modèles

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

Principaux savoir faire

Projet Active Object

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

Méthodologies de développement de logiciels de gestion

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

Stage Ingénieur en développement logiciel/modélisation 3D

DES SYSTÈMES D INFORMATION

Modélisation des processus métiers et standardisation

Workshop Processing - 18 et 25 novembre Utilisation de bibliothèques externes -

Analyse,, Conception des Systèmes Informatiques

en SCÈNE RATIONAL Rational Démonstration SDP : automatisation de la chaîne de développement Samira BATAOUCHE sbataouche@fr.ibm.com

Catalogue de Pattern pour le CSCW

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

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

CAHIER DES CHARGES DE REALISATION DE SITE INTERNET

Logiciel Orgabat V.Net. Maîtrisez et valorisez vos infrastructures VDI et datacenter

INGÉNIERIE DIRIGÉE PAR LES MODÈLES ET COMPOSANTS SENSIBLES AU CONTEXTE

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

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

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

Patrons de Conception (Design Patterns)

IFT2255 : Génie logiciel

Business Process Modeling (BPM)

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

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

En date du 11 décembre 2008

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

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

- Couches - Éléments - Domaines - ArchiMate et les techniques du BABOK

Introduction du test dans la modélisation par aspects

ANALYSTE PROGRAMMEUR DIPLÔME D ÉTABLISSEMENT

Wix : mettre en place un site d e commerce

La contextualisation de modèles, une étape indispensable à un développement dirigé par les modèles?

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

Bases Java - Eclipse / Netbeans

EXTENSION de Microsoft Dynamics CRM Réf FR 80452

Introduction aux concepts d ez Publish

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

ASAP : Approche orientée Services pour un support Agile et flexible des Processus de conception de produit dans les systèmes PLM

Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P

Les nouvelles architectures des SI : Etat de l Art

Synergies entre Artisan Studio et outils PLM

INDUSTRIALISATION ET RATIONALISATION

Transcription:

Ces modèles et métamodèles qui nous entourent! Cédric Dumoulin - DaRT

Qu est ce qu un modèle Définitions (Wikipedia by Google) «Un modèle mathématique est une traduction de la réalité pour pouvoir lui appliquer les outils, les techniques et les théories mathématiques» «[En économie] Un modèle est une représentation de la réalité.» «En informatique, un modèle a pour objectif de structurer les données, les traitements, et les flux d'informations entre entités.» C est une abstraction de la réalité

Qu est-ce qu un modèle One and Three Chairs" by Joseph Kosuth «This artwork is about different ways to show ideas. It presents one chair and three different ways of picturing this same chair.»

Qu est-ce qu un modèle Une carte routière

Qu est-ce qu un modèle autre plan plan d évacuation

Qu est-ce qu un modèle One and Three Chairs" by Joseph Kosuth «This artwork is about different ways to show ideas. It presents one chair and three different ways of picturing this same chair.»

Qu est-ce qu un modèle Un plan d architecte

Pourquoi modéliser? Que font les ingénieurs? Avant de construire de vraies choses ils construisent d abord des modèles les étudient, et tirent des conclusions

Pourquoi modéliser? Modèle de l ingénieur Représentation réduite d un système Système modélisé Modèle Objectifs Aider à comprendre un problème complexe ou une solution Communiquer à propos d un problème complexe ou d une solution

Avantages d un modèle Abstrait Il fait ressortir les points importants tout en enlevant les détails non nécessaires Compréhensible Il permet d exprimer une chose complexe dans une forme plus facilement compréhensible par l observateur Précis Il représente fidèlement le système modélisé Prédictif Il permet de faire des prévisions correcte sur le système modélisé Peu coûteux Il est bien moins coûteux à construire et étudier que le système lui même

Les modèles et l informatique pour faire un programme complexe, on a besoin de le modéliser. Article * -prix -reference -stock 0..1 Catalogue 1 pour explorer les solutions, pour les valider, pour montrer au client ce que sera l application. Video Titre 1 Album Description * Support -descriptionsupport UML : Unified Modeling Langage

Pourquoi comprend t-on un modèle? Parce qu il est simple? Parce qu il représente la réalité? Parce qu il existe une légende!

Pourquoi comprend t-on un modèle? La légende c est l explication des concepts /dessins du modèle la grammaire du modèle Mettre image legende carte La légende est elle même un modèle! On l appelle un métamodèle Existe-t-il un métamodèle décrivant le modèle-légende? nom, nom, = dessin, dessin, c est le méta-métamodèle Existe-t-il un métamodèle décrivant le modèle décrivant le modèle-légende? Et si oui, Existe-t-il

Récapitulons! Modèle et Métamodèle Standardisé par l OMG méta-métamodèle langage pour décrire des langages ce décrit lui-même! métamodèle langage pour décrire des modèles modèle abstraction de la réalité Le monde réel

Qu est ce que l IDM Ingénierie Dirigée par les Modèles Met le modèle au cœur des processus Part d un ou plusieurs modèles rme vers un autre modèle jusqu à avoir du code Ce n est pas nouveau : une compilation est aussi une rmation! Tr Tr Compilation/Tr

A quoi sert l IDM?? avantages abstraction, réutilisation, pérennité, automatisation, contrôles et tests à différents niveaux unification des processus compiler = rmer des modèles on peut réutiliser les travaux fait sur la compilation Conception puis développement == changement de niveau d abstraction (de modèle)

IDM vs MDA Model Driven Architecture Architecture Dirigé par les Modèles Modèle proposé par l OMG (le nom est déposé!) Part d un CIM (Computation Independent Model) Transforme en PIM (Platform Independent Model) Puis en PSM (Platform Specific Model) Et génère le code Variante particulière de l IDM Plus restrictive

Quelques outils actuels Papyrus UML modeleur UML 2 open source Éclipse - EMF framework pour manipuler modèle et métamodèle QVT (QVTO) standard pour rmer des modèles M2T (Acceleo) standard pour la génération de texte (code)

D autres Modèles et Métamodèles méta-métamodèle métamodèle modèle monde réel Texte, Livre ebnf syntaxe ebnf Langage Informatique XML schema schema

PARTIE 2

IDM en pratique Comment structurer un projet IDM? Comment utiliser le projet? Comment modéliser un métamodèle, un modèle? J ai fait un métamodèle, que puis-je faire avec? Comment fonctionnent les rmations, la génération de texte/code?

IDM en pratique Structure typique d un projet MM1.1 MM1.2 haut niveau d abstraction MM2 MM2 MM C++ MM Java MM.net code C++ code Java code.net code

IDM en pratique Structure typique d un projet MM1.1 MM1.2 vérification simulations, MM C++ MM2 MM2 MM Java MM.net Métamodèles rmations génération de code/texte optionnel : vérifications, simulations, tests, génération code C++ génération code Java génération code.net

Utilisation du projet Point de vue utilisateur Modèle 1.1 Modèle 1.2 vérification simulations, Modèle C++ Modèle 2 Modèle 2 exécuter Modèle Java Modèle.net L utilisateur appuie sur le bouton L application produit le texte/code génération code C++ génération code Java génération code.net

Utilisation du projet Derrière la scène Modèle 1.1 Modèle 1.2 vérification simulations, Modèle C++ Modèle 2 Modèle 2 Modèle Java Modèle.net L application produit les modèles intermédiaire Effectue les testes, les vérifications, les simulations, génération code C++ génération code Java génération code.net

Construire un métamodèle 1 concept 1 (méta)classe 1 relation entre concepts 1 association entre classes Peut se faire en UML Exemple : bibliothèque de livres

Du métamodèle aux outils pour manipuler les modèles manipulation édition arborescente sauvegarde édition graphique Le tout en quelques minutes!!!

D un modèle à l autre La rmation de modèles métamodèle d entrée typé par règles typé par métamodèle de de sortie sortie conforme à lit conforme à modèle d entrée lit produit modele modèle de de sortie sortie

Du modèle au code La génération de code métamodèle d entrée conforme à typé par templates lit modèle d entrée lit produit code code code

Saisir un modèle, Quel éditeur utiliser? Editeur arborescent Editeur graphique GMF Editeur graphique home made Modeleur UML + profil directement avec le code java pas toujours intuitif demande une bonne compréhension du modèle plus près du domaine adapté au prototypage rapide modèle graphique complexe à faire problème d ergonomie, customisation limité très bien adapté au domaine - temps de réalisation Ergonomie du modeleur Le même éditeur pour différent modéles Adaptation au domaine grâce au profil associé Profile à définir - une rmation à prévoir (UML MM domaine)

Demo! Modéliser une ville les rues les bâtiments les habitants Générer les programmes Java pour manipuler des modèles de villes Construire des modèles!! Mieux que les syms!!

Métamodèle d une ville

En savoir plus Wikipedia http://fr.wikipedia.org/wiki/ingénierie_dirigée_par_les_modèles OMG www.omg.org UML, QVT, M2T, Eclipse Modeling http://www.eclipse.org/downloads/ Eclipse EMF http://www.eclipse.org/modeling/emf/ Tutorial : Help > Help Contents > EMF Developer Guide > Tutorials > Generating an EMF Model Papyrus modeleur UML Open Source Papyrus I www.papyrusuml.org CEA - LIFL Papyrus II (Juin 2010) projet Eclipse CEA LIFL Airbus Atos QVTo http://www.eclipse.org/m2m/ Acceleo http://www.eclipse.org/modeling/m2t/?project=acceleo