La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Réalisé avec le soutien de OpenEmbeDD: Les technologies d’ingénierie des modèles Christian Brunette

Présentations similaires


Présentation au sujet: "Réalisé avec le soutien de OpenEmbeDD: Les technologies d’ingénierie des modèles Christian Brunette"— Transcription de la présentation:

1 Réalisé avec le soutien de OpenEmbeDD: Les technologies d’ingénierie des modèles Christian Brunette Christian.Brunette@irisa.fr

2 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 2 L’ingénierie Dirigée par les Modèles Domaine de l'informatique mettant à disposition des outils, concepts et langages pour créer et transformer des modèles. Modèle ?  Niveau M0: les Objets Réels (systèmes électronique, pompes hydrauliques, …)  Niveau M1: les Modèles (diagramme UML, automate, …) un modèle est une abstraction d’un objet réel  Niveau M2: les Méta-Modèles (méta-modèle d’UML, grammaire, …) un méta-modèle est une description d’un langage permettant de spécifier des modèles du niveau M1  Niveau M3: les Méta-Méta-Modèles (Ecore, EMOF, …) un méta-méta-modèle est une description d’un langage permettant de spécifier des méta-modèles du niveau M2 et dispose de tous les éléments pour s’auto-décrire lui-même

3 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 3 Plan 1.Langage de méta-modélisation  Kermeta 2.Transformations de modèles  ATL 3.Génération automatisée d’éditeurs graphiques  TopCased Breathe life into your metamodels Qu'est-ce que Kermeta ? Un aperçu du fonctionnement Exemple d’utilisation

4 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 4 Qu'est-ce que Kermeta ? Un langage pour construire et spécifier des méta-modèles Un environnement pour toutes les étapes de développement basées sur l'utilisation de méta-modèles  De la production des méta-modèles jusqu'à leur exploitation  Intégration et/ou interopérabilité avec les autres outils du domaine  Adapté pour construire des DSL (Domain Specific Language) (Ingénierie des langages) Approche OO permettant de simplifier les tâches des développeurs de DSL grâce à des mécanismes dédiés:  Manipulation intuitive des éléments de modèle  Tissage, patron de conception,  Clôtures lexicales,  Type modèle, généricité, … A nimer/simuler des modèles  Prototypage de méta-modèle et simulation des modèles qu'ils définissent

5 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 5 Le workbench

6 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 6 Aperçu du fonctionnement: donner vie aux Méta-Modèles // MyKermetaProgram.kmt // Un méta-modèle E-MOF est un programme OO qui ne fait rien require "StateMachine.ecore" //pour l’importer dans Kermeta // Kermeta permet de tisser différents aspects // Contrats (OCL WFR) require “StaticSemantics.ocl” // Corps des Méthodes (sémantique dynamique) require “DynamicSemantics.kmt” // Transformations Context FSM inv: ownedState->forAll(s1,s2| s1.name=s2.name implies s1=s2) aspect class FSM { operation reset() : Void { currentState := initialState }} class Minimizer { operation minimize (source: FSM):FSM {…} }

7 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 7 Exemple de développement (Robot tortue logo) Contraintes statiques OCL Simulateur en Kermeta Résultat d’une simulation interprétée avec Kermeta Scenario d’entrée Code source embarqué dans le robot Résultat de l’exécution réelle Transformation écrite avec Kermeta Interaction entre la simulation courante (Kermeta) et l’interface graphique (Java) Sémantique de Logo en Kermeta AS VM Semantic mapping Venez voir la démo en live sur le stand OpenEmbeDD !

8 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 8 Plan 1.Langage de méta-modélisation  Kermeta 2.Transformations de modèles  ATL 3.Génération automatisée d’éditeurs graphiques  TopCased http://www.eclipse.org/m2m/atl/ Qu’est-ce qu’ATL ? Exemple de transformation Utilisation dans OpenEmbeDD

9 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 9 Qu’est-ce qu’ATL ? Langage de transformation de modèle à modèle  Déclaratif, avec des règles définissant : Des motifs sources à reconnaître dans les modèles sources. Des motifs cibles à créer dans les modèles cibles.  Avec une partie impérative : Pour gérer les cas difficiles à définir en déclaratif. S’intégrant au code déclaratif pour le seconder. Open source (Eclipse Public Licence) :  Sur Eclipse.org  Une communauté active : Forum de discussion Contributions aux exemples et au code

10 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 10 Outils ATL Éditeur :  Coloration syntaxique  Vue arborescente (outline)  Complétion de code Outil de mise au point :  Points d’arrêt  Exploration du contexte courant Couche d’abstraction EMFUML2MDR… Machine Virtuelle ATL ATL Compilateur ATL QVT Compilateur QVT Machine virtuelle :  S’adapte aux couches basses (ex: EMF, UML2, MDR)  Supporte d’autres langages (ex:QVT)

11 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 11 Exemple : Personne à Contact

12 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 12 Transformation de FIACRE vers LOTOS Définitions en Ingénierie des Modèles des langages FIACRE et LOTOS :  Méta-modèles en KM3 (compatible Ecore), syntaxes en TCS.  Transformation de FIACRE vers LOTOS en ATL.

13 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 13 Autres applications Vérification en ATL de contraintes sur les modèles : – ATL à Problem, KM3 à Problem, etc. Traçabilité persistante des transformations ATL : – ATL à Tracer, ATL à WTracer, etc. Ponts entre outils de l’IdM : – KM3 à Ecore, Ecore à KM3, KM3 à MOF, MOF à KM3, MS DSL à KM3, KM3 à MS DSL, GME à KM3, KM3 à GME, etc. Calculs de métriques : – Models Measurement, etc. Visualisation de modèles : – Table à HTML, UMLDI à SVG, KM3 à DOT, etc. Etc. 21 cas d’utilisation détaillés. Plus de 90 scénarios disponibles.

14 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 14 1.Langage de méta-modélisation  Kermeta 2.Transformations de modèles  ATL 3.Génération automatisée d’éditeurs graphiques  TopCased Plan http://www.topcased.org Qu’est-ce que TopCased ? La génération automatisée d’éditeur Exemple d’utilisation dans OpenEmbeDD

15 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 15 Qu’est-ce que TopCased ? Projet pôle de compétitivité Midi-Pyrénées (Aerospace valley) Projet ANR depuis mars 2007 But: fournir un ensemble d’outils dédiés au développement de systèmes critiques:  Aérospatiale  Avionique  Automobile… Pérenniser les méthodes & outils pour le développement logiciel  Minimiser les coûts (outils propriétaires)  Intégrer des outils académiques  Être capable d’adapter les outils au processus de développement et non l’inverse

16 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 16 Outils fournis dans TopCased Editeur graphique pour Ecore Génération automatisée d’éditeurs graphiques à partir de ces modèles D’autres éditeurs:  UML2.1  SysML  AADL…

17 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 17 Editeur UML2.1 10 diagrammes disponibles dont séquence, activité, automate implantés pour les besoins d’OpenEmbeDD

18 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 18 Processus de génération d’éditeurs graphiques Besoin  Réaliser plusieurs éditeurs graphiques pour différents méta-modèles Approche  Model Driven Development pragmatique  Communalisation progressive des comportements  Amélioration progressive du générateur Intérêt  Versions fonctionnelles très fréquentes Difficulté  Gérer la compatibilité ascendante Amélioration du générateur pour les besoins d’OpenEmbeDD Contribution à EMP (Eclipse Modeling Project)

19 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 19 Principe de génération Méta-modèle (ex: UML, AADL…) Méta-modèle Ecore Méta-modèle de configuration Configurateur Editeur de diagramme Complète les informations du méta-modèle, paramètre la génération génère instancie

20 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 20 Structure de l’éditeur généré

21 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 21 Utilisation pour OpenEmbeDD Utilisation pour les outils spécifiques temps- réel et systèmes embarqués (Fiacre, Polychrony, SynDEx…)

22 Réalisé avec le soutien de 5, 6 et 7 novembre 2007 Grand Colloque STIC - 2007 22 Conclusions OpenEmbeDD 0.3.0 (stable)  Kermeta 0.5.1  ATL 2.0.0  TopCased 1.0.0 Nouvelles versions de TopCased toutes les 6 semaines Appliqué dans OpenEmbeDD pour le temps réel Applicable pour d’autres domaines


Télécharger ppt "Réalisé avec le soutien de OpenEmbeDD: Les technologies d’ingénierie des modèles Christian Brunette"

Présentations similaires


Annonces Google