Test d Ingénierie Dirigée par les Modèles

Documents pareils
Application Form/ Formulaire de demande

How to Login to Career Page

Contents Windows

Instructions Mozilla Thunderbird Page 1

WEB page builder and server for SCADA applications usable from a WEB navigator

Lesson Plan Physical Descriptions. belle vieille grande petite grosse laide mignonne jolie. beau vieux grand petit gros laid mignon

RISK-BASED TRANSPORTATION PLANNING PRACTICE: OVERALL METIIODOLOGY AND A CASE EXAMPLE"' RESUME

Folio Case User s Guide

English Q&A #1 Braille Services Requirement PPTC Q1. Would you like our proposal to be shipped or do you prefer an electronic submission?

Tutoriel de formation SurveyMonkey

IPSAS 32 «Service concession arrangements» (SCA) Marie-Pierre Cordier Baudouin Griton, IPSAS Board

Principe de TrueCrypt. Créer un volume pour TrueCrypt

DOCUMENTATION - FRANCAIS... 2

Paxton. ins Net2 desktop reader USB

Editing and managing Systems engineering processes at Snecma

Programming Server-Side Web Applications with Object-Oriented PHP NC Group Syllabus. Duration: 75 hours 1-2-2

Once the installation is complete, you can delete the temporary Zip files..

Guide d'installation rapide TFM-560X YO.13

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

DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0

Embases pour raccordement G1/8 - G1/4

Exercices sur SQL server 2000

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

APPENDIX 6 BONUS RING FORMAT

3615 SELFIE. HOW-TO / GUIDE D'UTILISATION

Algorithmes de recommandation, Cours Master 2, février 2011

Natixis Asset Management Response to the European Commission Green Paper on shadow banking

Contrôle d'accès Access control. Notice technique / Technical Manual

lundi 3 août 2009 Choose your language What is Document Connection for Mac? Communautés Numériques L informatique à la portée du Grand Public

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.

Le passé composé. C'est le passé! Tout ça c'est du passé! That's the past! All that's in the past!

GAME CONTENTS CONTENU DU JEU OBJECT OF THE GAME BUT DU JEU

Utiliser une WebCam. Micro-ordinateurs, informations, idées, trucs et astuces

SCHOLARSHIP ANSTO FRENCH EMBASSY (SAFE) PROGRAM APPLICATION FORM

THE LAW SOCIETY OF UPPER CANADA BY-LAW 19 [HANDLING OF MONEY AND OTHER PROPERTY] MOTION TO BE MOVED AT THE MEETING OF CONVOCATION ON JANUARY 24, 2002

Exemple PLS avec SAS

ONTARIO Court File Number. Form 17E: Trial Management Conference Brief. Date of trial management conference. Name of party filing this brief

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

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

SERVEUR DÉDIÉ DOCUMENTATION

Comprendre l impact de l utilisation des réseaux sociaux en entreprise SYNTHESE DES RESULTATS : EUROPE ET FRANCE

Bigdata et Web sémantique. les données + l intelligence= la solution

calls.paris-neuroscience.fr Tutoriel pour Candidatures en ligne *** Online Applications Tutorial

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

physicien diplômé EPFZ originaire de France présentée acceptée sur proposition Thèse no. 7178

UML : Unified Modeling Language

TABLE DES MATIERES A OBJET PROCEDURE DE CONNEXION

Gestion des prestations Volontaire

Notice Technique / Technical Manual

CEPF FINAL PROJECT COMPLETION REPORT

RAPID Prenez le contrôle sur vos données

Cheque Holding Policy Disclosure (Banks) Regulations. Règlement sur la communication de la politique de retenue de chèques (banques) CONSOLIDATION

Improving the breakdown of the Central Credit Register data by category of enterprises

Lavatory Faucet. Instruction Manual. Questions?

Règlement sur le télémarketing et les centres d'appel. Call Centres Telemarketing Sales Regulation

DOCUMENTATION - FRANCAIS... 2

Institut français des sciences et technologies des transports, de l aménagement

If you understand the roles nouns (and their accompanying baggage) play in a sentence...

Le No.1 de l économie d énergie pour patinoires.

Lamia Oukid, Ounas Asfari, Fadila Bentayeb, Nadjia Benblidia, Omar Boussaid. 14 Juin 2013

Titulaires de marques

Vanilla : Virtual Box

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

Archived Content. Contenu archivé

Action concrète 14 Répertoire des compétences Féminines Africaines en Diaspora : Coopérer pour transcender en réalité

PARIS ROISSY CHARLES DE GAULLE

MELTING POTES, LA SECTION INTERNATIONALE DU BELLASSO (Association étudiante de lʼensaparis-belleville) PRESENTE :

Forthcoming Database

COUNCIL OF THE EUROPEAN UNION. Brussels, 18 September 2008 (19.09) (OR. fr) 13156/08 LIMITE PI 53

Tammy: Something exceptional happened today. I met somebody legendary. Tex: Qui as-tu rencontré? Tex: Who did you meet?

Le Cloud Computing est-il l ennemi de la Sécurité?

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

FOURTH SESSION : "MRP & CRP"

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

WiFi Security Camera Quick Start Guide. Guide de départ rapide Caméra de surveillance Wi-Fi (P5)

22/09/2014 sur la base de 55,03 euros par action

Ingénierie et gestion des connaissances

Cours de didactique du français langue étrangère (*) French as a foreign language (*)

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

SNMP for cloud Jean Parpaillon. SNMP4cloud - 1

Discours du Ministre Tassarajen Pillay Chedumbrum. Ministre des Technologies de l'information et de la Communication (TIC) Worshop on Dot.

I. COORDONNÉES PERSONNELLES / PERSONAL DATA

L ABC de l acquisition de petites entreprises

INSTRUCTIONS. Comment compléter le formulaire. How to complete this form. Instructions

Telecharger gratuitement convertisseur de fichier word en pdf

Ships Elevator Regulations. Règlement sur les ascenseurs de navires CODIFICATION CONSOLIDATION. C.R.C., c C.R.C., ch. 1482

SA-32 / SA-62 INSTRUCTION MANUAL - MANUEL D INSTRUCTIONS

POLICY: FREE MILK PROGRAM CODE: CS-4

An Ontology-Based Approach for Closed-Loop Product Lifecycle Management

Compléter le formulaire «Demande de participation» et l envoyer aux bureaux de SGC* à l adresse suivante :

Consultants en coûts - Cost Consultants

Règlement relatif à l examen fait conformément à la Déclaration canadienne des droits. Canadian Bill of Rights Examination Regulations CODIFICATION

COPYRIGHT Danish Standards. NOT FOR COMMERCIAL USE OR REPRODUCTION. DS/EN 61303:1997

Syllabus Dossiers d études

Eléments de statistique

Compte-rendu technique complet et détaillé des cookies

GIGABIT PCI DESKTOP ADAPTER DGE-530T. Quick Installation Guide+ Guide d installation+

Thank you for choosing the Mobile Broadband USB Stick. With your USB Stick, you can access a wireless network at high speed.

Préconisations pour une gouvernance efficace de la Manche. Pathways for effective governance of the English Channel

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

Transcription:

Voisin de Droite: Voisin de Gauche: Voisin de Derrière: Voisin de Devant: Test d Ingénierie Dirigée par les Modèles Test en 1:45. Les réponses sont à donner sur ce document exclusivement. Les documents de cours sont autorisés. Votre nom est à indiquer sur chaque page. Partie Théorique (1/3 de la note). 1. Quelles métaclasses peut-on typiquement trouver dans le métamodèle d'un langage de transformation de modèles déclaratif? Give examples of metaclasses that might appear in the metamodel of a declarative transformation language. 2. Peut-on placer EBNF au niveau M3? Pourquoi? Peut-on placer UML au niveau M3? Pourquoi? Is it possible to use EBNF at the M3 level? Why? Is it possible to use UML at the M3 level? Why? Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 1

3. Peut-on exprimer une sémantique à l'aide d'un générateur de code? Justifiez. Is it possible to state semantics for a language by mean of a code generator? Why? 4. Quel est l'intérêt de décrire plusieurs syntaxes concrètes pour un même langage? Donnez des exemples. What s the purpose of describing different concrete syntaxes for the same language? Give examples. 5. Donnez les avantages et les inconvénients d'un analyseur de texte réversible comme Sintaks par rapport à un couple générateur de code / compilateur de compilateur (comme le couple AndroMDA/ANTLR) dans le cadre de la définition de la syntaxe textuelle d un langage. Give advantages and drawbacks of using a reversible text processor (like Sintaks) over using a code generator (like AndroMDA) together with a compiler compiler (like ANTLR) to supply a textual concrete syntax for a language. Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 2

6. Une transformation de modèle est un modèle. Donnez un cas où il est intéressant de transformer une transformation de modèles. A model transformation is a model. Give an example where it is interesting to transform of a model transformation. 7. Afin de tester le bon fonctionnement d'une transformation de modèles, donnez une méthode tirant parti d'un générateur aléatoire de modèles (prenant en entrée un métamodèle et fournissant un modèle qui y est conforme) et d'un comparateur de modèles (indiquant si deux modèles donnés son similaires). In order to test behavior of a model transformation, propose a method to model transformation testing based on a random model generator (inputting a metamodel and outputting a model that conforms to the inputted metamodel), and on a model comparison tool (stating whether two models are similar). Préliminaire aux questions 8 à 10: Vous avez conçu et supporté un langage de modélisation en le décrivant par un métamodèle en ECore, et en lui donnant une syntaxe concrète avec XText et une sémantique à l'aide d'une transformation de modèle ATL vers le langage C. Ce langage a eu beaucoup de succès, il est en effet utilisé par un nombre important de personnes. Il est donc particulièrement important que les nombreux modèles décrits à l'aide de ce langage restent valides. Your are the author of a modeling language that you have described by an ECore metamodel, with an XText-supported textual concrete syntax, and semantics provided by an ATL model transformation towards the C language. Your modeling language is quite successful in that it is used by many people. As such, it is of paramount importance that models described by mean of your modeling language keep valid. Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 3

8. Est-il possible, sans altérer les modèles existants, de changer la syntaxe concrète de ce langage? Si oui, sous quelles conditions? Si non, pourquoi? Is it possible to change the concrete syntax of this modeling language such that existing models are not broken? Explain why and give possible limitations in case it is possible. 9. Est-il possible, sans altérer les modèles existants, de changer la syntaxe abstraite de ce langage? Si oui, sous quelles conditions? Si non, pourquoi? Is it possible to change the abstract syntax of this modeling language such that existing models are not broken? Explain why and give possible limitations in case it is possible. 10. Est-il possible, sans altérer les modèles existants, de changer la sémantique de ce langage? Si oui, sous quelles conditions? Si non, pourquoi? Is it possible to change semantics for this modeling language such that existing models are not broken? Explain why and give possible limitations in case it is possible. Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 4

Partie Pratique (2/3 de la note). On souhaite contrôler une mélangeuse médicale destinée à la réalisation de produits obtenus par mélange d échantillons sous forme liquide. Les aspects matériels de cette machine sont modélisés par la Figure 1. Les échantillons à mélanger sont placés dans les récipients 1 à 3. Le mélange se fait dans des récipients vibrants entre les positions 6 et 10. Le mélange, une fois finalisé, est déposé dans le récipient 11. Pour déplacer les échantillons, une seringue mobile est capable de se déplacer entre les différents récipients où elle peut retirer et déposer une certaine quantité d échantillon. Cette seringue peut être nettoyée en retirant du liquide nettoyant du récipient 4 ensuite déposé dans le récipient 5. Deux volets obturateurs, situés entre les récipients 3 et 4, ainsi que 10 et 11, sécurisent l utilisation du système en empêchant de possibles projections. Ces volets peuvent s ouvrir et se fermer. Bien sûr, la seringue ne peut se déplacer à travers un volet obturateur en position fermée. needle transport belt safety shutters filters dangerous needle closed open input samples cleaning fluid 1 2 3 O vibrating internal cups drain FIGURE 1. Le mélangeur. output sample The purpose is to control a medical mixing machine that intended to make products from samples. Schema for the mixing machine is given by Figure 1. The samples are solutions inputted into the system from cups 1, 2, and 3. The actual mixing is performed in vibrating cups 6 to 10. Once finished, the sample melange is outputted into cup 11. In order to move samples from cup to cup, a syringe can be placed over cups, where a given amount of solution can be sucked or blown. The syringe can be cleaned by sucking some cleaning solution from cup 4; the cleaning solution is thereafter blown into cup 5. Two safety shutters, placed between cups 3 and 4, and between cups 10 and 11, can be opened and closed in order to protect from possible sample projections. Of course, the syringe cannot move across a closed shutter. Cette machine est pilotée par un programme devant d écrire en Java. Des API sont fournies pour: déplacer la seringue de N récipients vers la gauche ou vers la droite, retirer ou déposer une quantité donnée de produit du récipient sur lequel est arrêtée la seringue, ouvrir et fermer les volets. The machine is controlled by a program made in Java. APIs are defined for: moving the syringe by an offset of N cups to the left or to the right, Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 5

sucking or blowing a given amount of sample from / to the cup above which the syringe is stopped, opening and shutting the shutters. Bien que cette API soit simple, il s est avéré que les programmes décrivant des processus de production utilisant cette machine peuvent devenir rapidement complexes, et donc hors de portée des compétences en programmation des laborantins. On souhaite donc développer un langage simplifiant la programmation de cette machine. Un exemple de phrase de ce langage sous une forme graphique est données en Figure 2. La même phrase sous forme textuelle est donné en Figure 3. Even though this API looks simple, software for producing mixed samples with such machine can rapidly become complex in practice. As such, laboratory technicians lack programming skills to produce such control software. Hence the idea to create a new language so that programming the mixing machine is made easier. An example sentence of such new language is given in Figure 2 using a graphical notation. The same sentence is represented textually in Figure 3. cup 2 cup 6 cup 7 left FIGURE 2. Une phrase exprimée suivant une syntaxe graphique. Take 5 units from cup 2 Put 2 units to cup 6 once left shutter closed Put 3 units to cup 7 Clean the needle FIGURE 3. Phrase de la Figure 2 exprimée suivant une syntaxe textuelle. Il vous est demandé de produire le métamodèle d un tel langage complété par les contraintes nécessaire en OCL. Vous produirez ensuite un modèle conforme à ce métamodèle représentant les phrases des figures 2 et 3 sous la forme d un diagramme d objets. You are asked to produce the metamodel for the language together with constraints written in OCL. You will then write down the model conforming to the metamodel represented in figures 2 and 3 as an object diagram. Il est toutefois possible de calculer automatiquement les moments où les volets obturateurs doivent se fermer et s ouvrir. En effet, un volet doit être fermé sauf quand la seringue mobile se déplace d un récipient d un côté du volet vers un récipient de l autre côté du volet. Vous produirez une transformation de modèle en ATL permettant d insérer automatiquement les directives d ouverture et de fermeture des volets. Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 6

It is possible to compute the exact moment where shutters should be opened or closed. Indeed, a shutter must be closed unless the syringe moves from a cup at one side of the shutter to a cup at the other side of the shutter. You are asked to write a model transformation in ATL that automatically inserts shutters opening and closing requests. Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 7

Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 8

Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 9

Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 10

Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 11

Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 12

Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 13

Test d Ingénierie Dirigée par les Modèles - Session 2010-2011 14