SlideShare ist ein Scribd-Unternehmen logo
1 von 57
Ingénierie des Modèles
Atlas Transformation Language
Amira Hakim
Dept de Mathématique & Informatique
Université de Souk-Ahras
1
UNIVERSITE MOHAMED CHERIF MESAADIA
SOUK-AHRAS
Introduction (Motivation)
2
Importance des modèles
On utilise des modèles pour mieux comprendre un système.
Pour un observateur A, M est un modèle de l’objet O, si M aide A
a répondre aux questions qu’il se pose sur O. (Minsky).
Un modèle est une simplification, une abstraction du système.
L’Ingénierie Dirigée par les Modèles
3
L’Ingénierie Dirigée par les Modèles (ou IDM) est une démarche de
développement qui conçoit l’intégralité du cycle de développement du
logiciel comme un processus de production, de raffinement itératif et
d’intégration de modèles.
L’ingénierie dirigée par les modèles place le modèle au centre du
processus de développement ,ainsi les différentes étapes du
développement se traduisent par une succession de transformations de
modèles.
Notions fondamentaux
4
Modèle
 Méta-modèle
 Méta-Méta-modèle
 Transformation de modèle
Modéle Systéme
Méta-Modéle
Méta-Méta-
Modéle
représente
Est conforme à
Est conforme à
Modèle
5
Définition d’un modèle:
Un modèle est une description, une spécification partielle d'un système:
C’est une abstraction de ce qui est intéressant pour un contexte et dans
un but donné. Le modéle fournit une vue subjective et simplifiée d'un
système.
But d'un modèle:
Faciliter la compréhension d'un système.
Simuler le fonctionnement d'un système.
Exemple :
une carte routière , un diagramme UML
Méta Modèle
6
Définition d’un Méta-Modèle:
Le terme méta modèle est un stéréotype attaché à un modèle qui indique que
le modèle est une abstraction d'un autre modèle ,autrement dit, un modèle
d'un modèle.
L'UML lui-même sert de méta modèle pour les modèles qui représentent des
systèmes réels construits.
Méta-Méta- Modèle
7
Méta Méta Modèle:
c’est un modèle qui décrit un langage de méta modélisation , c.à.d.,
les éléments de modélisation nécessaires à la définition
des langages de modélisation.
Transformation de modèles
8
La transformation prend en entrée un modèle m1 et doit produire en sortie un
autre modèle m2
Une transformation de modèles est la génération d’un ou de plusieurs modèles
cibles à partir d’un ou de plusieurs modèles sources.
Transformation = ensemble de règles (Correspondances entre éléments du
modèle source et éléments du modèle cible)
Buts d’une transformation
9
 Raffinement:
– Un modèle A1 devient un modèle A2
– Même métamodèle pour les deux
 Projection:
– Un modèle A1 devient un modèle B1
– Métamodèles distincts
– [Composants > Java]
Représente la base:
– Production de systèmes dirigées par les modèles.
– Support de l’interopérabilité entre les systèmes.
ATL : ATLAS Transformation Language
10
Développé par l’équipe de recherche ATLAS INRIA ET LINA (Jean Bézivin).
Fait partie du projet Eclipse M2M (Model-to-Model)
Langage de transformation hybride
Propose des structures déclarative et imperative.
Une transformation ATL est composée de regles (rules) declaratives.
Une regle definit une transformation d’un element du modele source vers
un element du modele cible
Possibilite d’appeler des Helpers (eq. methodes) pour faciliter le traitement
dans les regles.
Transformations endogènes et exogènes
11
Transformation endogène Transformation exogène
12
Transformation de modèle de carrés
en modèle de cercles
Structure d’une transformation ATL
13
Un module ATL correspond a une transformation modèle à modèle.
Eléments:
Une section entête : definit les attributs qui sont relatives au module
de transformation.
Une section « import » optionnelle: sert a importer quelques
bibliothéques ATL éxistantes.
Un ensemble de « helpers »:ATL équivalents aux méthodes java.
Un ensemble de régles: définissent la façon dont les modéles cibles
sont générés a partir de modéles sources.
ATL modules
14
Ce sont les fichiers qui contiennent les transformations.
Ces fichiers ont l’éxtension .ATL.
Consistent en:
 Header
 Import
 Helpers
 Rules
Etape 1:Installation d’Eclipse
15
2.Création d’un nouveau ATL projet
16
Donner un nom au projet
17
Création d’un dossier « metamodels »
18
Sous le projet Square2Circle; on crée un
nouveau dossier pour les métas modéles
Modèle Square.ecore
19
Initialiser le fichier de diagramme Ecore
20
Square.ecore_diagram(a réaliser manuellement)
21
Détails et propriétés de Square.ecore
22
Modèle Circle.ecore
23
Initialiser le fichier de diagramme Ecore
24
Circle.ecore_diagram(a réaliser manuellement)
25
Détails et propriétés de Circle.ecore
26
Création d’un dossier de modéles
27
Création d’une interface dynamique(SquareM.xmi) sous
le dossier Model
28
Instanciation
29
On crée deux squares s1
et s2 et une relation r1
Modification des propriétés
30
Création du dossier des transformations
31
Création du fichier Square2Circle.atl
32
Code des transformation
33
module Square2Circle;
create OUT:Circle from IN:Square;
rule Arch2Base {
from S:Square!Architecture
to C:Circle!Architecture (
Name<-S.Name,
circles<-S.squares,
relations<-S.relations
)}
rule Transf {
from S:Square!Square
to C:Circle!Circle(
Name<-S.Name,
Color<-S.Color,
Rayon<-S.Length
)}
rule Relation2Relation {
from S:Square!Relation
to C:Circle!Relation(
Name<-S.Name,
source<-S.source,
target<-S.target
Run Configuration Run
34
CircleM.xmi(Le modèle cible)
35
Modélisation avec Graphical Modeling Framework
36
La Création d’un modèle conforme à un méta-modèle se fait par deux
façons soit :
Instancier le Meta model et avoir un modèle sous forme XMI.
Générer un éditeur graphique à partir du Meta model par
l’utilisation du GMF.
Graphical Modeling Framework
37
 GMF est un Framework de l'environnement de travail Eclipse.
 Il fournit une infrastructure permettant l'exécution d'éditeurs
graphiques basés sur les Framework EMF et GEF.
 Avec GMF, il est possible de créer une application de modélisation
simplifiée (formes de base : rectangle, ellipse) sans écrire une seule
ligne de code.
Le WorkFlux de GMF
38
Génération d’un éditeur
graphique à partir d’un
modèle EMF
Domain Model(fichier.ecore)
Dériver « Domain Gen Model »
(Fichier : *.genmodel)
Générer « Graphical Def Model »
(Fichier : *.gmfgraph)
Générer « Mapping Model » (Fichier
: *.gmfmap)
« Diagram Editor Gen Model »
(Fichier : *.gmfgen)
Générer l'éditeur de diagramme
Création du projet GMF(Square)
39
Sans oublier de cocher la case: Show DashboardViews
Le GMF Dashboard s’affiche
40
Copier et coller le square.ecore dans le projet
Square.GMF
41
Sélectionnez « Domain Model »
42
Choisissez Derive
43
Puis Appuiyer sur Load et Next
La fenêtre suivante s’affiche:
44
Click sur Derive pour aller au Graphical
Def Model
45
SuivantSuivant
Click sur Derive pour aller au Tooling Def
Model
46
SuivantSuivant
Click sur Combine pour aller au Mapping Model
47
SuivantSuivant
48
Relation As link
Target Remove
Source Remove
Relation Change:Source Feature :Ereference Source
Target Feature :Ereference Target
Diagram Link:Connection Relation
On obtient:
49
Click sur Transform
50
Generate Diagram Code
51
Click droit sur Square.gmfgen sous le projet Square puis Generate
Diagram Code
52
Sous la 2éme fenetre d’eclipse
53
New Java Project Puis new others Examples Square Diagram:
Diagram
54
55
Supprimer les modèles Square.xmi et Circle.xmi dans le repertoire
Model du projet Square2Circle .
Copier SquareM.square et le coller dans ce répertoire.
Aller a run configuration pour modifier le IN model
Click sur Apply puis Run
Création du projet GMF(Circle)
56
On dois refaire les étapes du DashBoard du projet Square(GMF)
Fin
57
Merci Pour votre Attention!

Weitere ähnliche Inhalte

Was ist angesagt?

Initiation à UML: Partie 1
Initiation à UML: Partie 1Initiation à UML: Partie 1
Initiation à UML: Partie 1DIALLO Boubacar
 
Projet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des donnéesProjet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des donnéesJean-Marc Dupont
 
UML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriUML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriMansouri Khalifa
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objetAmir Souissi
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisationAmir Souissi
 
Conception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data WarehouseConception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data WarehouseAbderrahmane Filali
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correctionLilia Sfaxi
 
Analyse merise Prof. Khalifa MANSOURI
Analyse merise Prof. Khalifa MANSOURIAnalyse merise Prof. Khalifa MANSOURI
Analyse merise Prof. Khalifa MANSOURIMansouri Khalifa
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UMLAmir Souissi
 
Présentation projet de fin d'étude
Présentation projet de fin d'étudePrésentation projet de fin d'étude
Présentation projet de fin d'étudeDonia Hammami
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-CorrectionLilia Sfaxi
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriMansouri Khalifa
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-CorrectionLilia Sfaxi
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionLilia Sfaxi
 

Was ist angesagt? (20)

Bi
BiBi
Bi
 
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
 
Initiation à UML: Partie 1
Initiation à UML: Partie 1Initiation à UML: Partie 1
Initiation à UML: Partie 1
 
Projet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des donnéesProjet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des données
 
Modelisation conception SI
Modelisation conception SIModelisation conception SI
Modelisation conception SI
 
UML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriUML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouri
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
 
Cours BDD.pptx
Cours BDD.pptxCours BDD.pptx
Cours BDD.pptx
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 
Conception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data WarehouseConception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data Warehouse
 
présentation PFE (2)
présentation PFE (2)présentation PFE (2)
présentation PFE (2)
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Analyse merise Prof. Khalifa MANSOURI
Analyse merise Prof. Khalifa MANSOURIAnalyse merise Prof. Khalifa MANSOURI
Analyse merise Prof. Khalifa MANSOURI
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 
Présentation projet de fin d'étude
Présentation projet de fin d'étudePrésentation projet de fin d'étude
Présentation projet de fin d'étude
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
 

Ähnlich wie Transformation de carrés en cercles avec Atlas Transformation Language(ATL)

Devlog2013: SysML et Simulation (French)
Devlog2013: SysML et Simulation (French)Devlog2013: SysML et Simulation (French)
Devlog2013: SysML et Simulation (French)Jean-Michel Bruel
 
L'outil MDA acceleo.pptx
L'outil MDA acceleo.pptxL'outil MDA acceleo.pptx
L'outil MDA acceleo.pptxSamirAwad14
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipseISIG
 
Splpv2 annexes-c
Splpv2 annexes-cSplpv2 annexes-c
Splpv2 annexes-cxerty
 
cours logiciels de simulation.docx
cours logiciels de simulation.docxcours logiciels de simulation.docx
cours logiciels de simulation.docxssuser0dbd4e
 
Entity_framework_db first
Entity_framework_db firstEntity_framework_db first
Entity_framework_db firstZineb ELGARRAI
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la rechercheJohan Moreau
 
Patrons de creation
Patrons de creationPatrons de creation
Patrons de creationomri med
 
Introduction au Génie Logiciel
Introduction au Génie LogicielIntroduction au Génie Logiciel
Introduction au Génie Logicielguest0032c8
 
Présentation cours UML.pptx
Présentation  cours UML.pptxPrésentation  cours UML.pptx
Présentation cours UML.pptxPrinceLankoand
 
U M L Analyse Et Conception Objet
U M L Analyse Et Conception ObjetU M L Analyse Et Conception Objet
U M L Analyse Et Conception ObjetAmine Chkr
 
MAD Model Aggregator eDitor (EMF)
MAD Model Aggregator eDitor (EMF)MAD Model Aggregator eDitor (EMF)
MAD Model Aggregator eDitor (EMF)Sysord
 
Programmation linéniaire
Programmation linéniaire Programmation linéniaire
Programmation linéniaire Mohammed Zaoui
 
CoursUML-SlimMesfar-Total
CoursUML-SlimMesfar-TotalCoursUML-SlimMesfar-Total
CoursUML-SlimMesfar-TotalAhmed Mekkaoui
 
srep_cours_06.pdf
srep_cours_06.pdfsrep_cours_06.pdf
srep_cours_06.pdfSamirAwad14
 

Ähnlich wie Transformation de carrés en cercles avec Atlas Transformation Language(ATL) (20)

Methodo support
Methodo supportMethodo support
Methodo support
 
Objecteering
ObjecteeringObjecteering
Objecteering
 
Devlog2013: SysML et Simulation (French)
Devlog2013: SysML et Simulation (French)Devlog2013: SysML et Simulation (French)
Devlog2013: SysML et Simulation (French)
 
L'outil MDA acceleo.pptx
L'outil MDA acceleo.pptxL'outil MDA acceleo.pptx
L'outil MDA acceleo.pptx
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipse
 
Splpv2 annexes-c
Splpv2 annexes-cSplpv2 annexes-c
Splpv2 annexes-c
 
cours logiciels de simulation.docx
cours logiciels de simulation.docxcours logiciels de simulation.docx
cours logiciels de simulation.docx
 
Entity_framework_db first
Entity_framework_db firstEntity_framework_db first
Entity_framework_db first
 
Idm et ihm
Idm et ihmIdm et ihm
Idm et ihm
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la recherche
 
Patrons de creation
Patrons de creationPatrons de creation
Patrons de creation
 
Plasticitérecherche2017
Plasticitérecherche2017Plasticitérecherche2017
Plasticitérecherche2017
 
Introduction au Génie Logiciel
Introduction au Génie LogicielIntroduction au Génie Logiciel
Introduction au Génie Logiciel
 
Présentation cours UML.pptx
Présentation  cours UML.pptxPrésentation  cours UML.pptx
Présentation cours UML.pptx
 
U M L Analyse Et Conception Objet
U M L Analyse Et Conception ObjetU M L Analyse Et Conception Objet
U M L Analyse Et Conception Objet
 
Uml
UmlUml
Uml
 
MAD Model Aggregator eDitor (EMF)
MAD Model Aggregator eDitor (EMF)MAD Model Aggregator eDitor (EMF)
MAD Model Aggregator eDitor (EMF)
 
Programmation linéniaire
Programmation linéniaire Programmation linéniaire
Programmation linéniaire
 
CoursUML-SlimMesfar-Total
CoursUML-SlimMesfar-TotalCoursUML-SlimMesfar-Total
CoursUML-SlimMesfar-Total
 
srep_cours_06.pdf
srep_cours_06.pdfsrep_cours_06.pdf
srep_cours_06.pdf
 

Kürzlich hochgeladen

BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...idelewebmestre
 
Cadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en FranceCadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en Franceidelewebmestre
 
Accompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la NièvreAccompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la Nièvreidelewebmestre
 
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminantsBow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminantsidelewebmestre
 
La logistique a L'ère de l'industrie 4.0
La logistique a L'ère de l'industrie 4.0La logistique a L'ère de l'industrie 4.0
La logistique a L'ère de l'industrie 4.0ourssoula
 
BOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chairBOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chairidelewebmestre
 
BOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinBOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinidelewebmestre
 
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleurBOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleuridelewebmestre
 
BOW 2024 - Dedans/Dehors quand voir ne suffit pas
BOW 2024 - Dedans/Dehors quand voir ne suffit pasBOW 2024 - Dedans/Dehors quand voir ne suffit pas
BOW 2024 - Dedans/Dehors quand voir ne suffit pasidelewebmestre
 
BOW 2024-3-10 - Batcool Petits ruminants
BOW 2024-3-10 - Batcool Petits ruminantsBOW 2024-3-10 - Batcool Petits ruminants
BOW 2024-3-10 - Batcool Petits ruminantsidelewebmestre
 
Compersseur d'air a vis atlas copco avec huile
Compersseur d'air a vis atlas copco avec huileCompersseur d'air a vis atlas copco avec huile
Compersseur d'air a vis atlas copco avec huileMBouderbala
 
BOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresBOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresidelewebmestre
 
BOW 2024 - 3-6 - Adaptation climat chaud Porcs
BOW 2024 - 3-6 - Adaptation climat chaud PorcsBOW 2024 - 3-6 - Adaptation climat chaud Porcs
BOW 2024 - 3-6 - Adaptation climat chaud Porcsidelewebmestre
 
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.pptCHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.pptbentaha1011
 
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VLBOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VLidelewebmestre
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSKennel
 
Support de cours La technologie WDM.pptx
Support de cours La technologie WDM.pptxSupport de cours La technologie WDM.pptx
Support de cours La technologie WDM.pptxdocteurgyneco1
 
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...idelewebmestre
 
Agrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en DordogneAgrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en Dordogneidelewebmestre
 

Kürzlich hochgeladen (20)

BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
 
Cadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en FranceCadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en France
 
Accompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la NièvreAccompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la Nièvre
 
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminantsBow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
 
La logistique a L'ère de l'industrie 4.0
La logistique a L'ère de l'industrie 4.0La logistique a L'ère de l'industrie 4.0
La logistique a L'ère de l'industrie 4.0
 
BOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chairBOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chair
 
BOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinBOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcin
 
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleurBOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
 
BOW 2024 - Dedans/Dehors quand voir ne suffit pas
BOW 2024 - Dedans/Dehors quand voir ne suffit pasBOW 2024 - Dedans/Dehors quand voir ne suffit pas
BOW 2024 - Dedans/Dehors quand voir ne suffit pas
 
Note agro-climatique n°2 - 17 Avril 2024
Note agro-climatique n°2 - 17 Avril 2024Note agro-climatique n°2 - 17 Avril 2024
Note agro-climatique n°2 - 17 Avril 2024
 
BOW 2024-3-10 - Batcool Petits ruminants
BOW 2024-3-10 - Batcool Petits ruminantsBOW 2024-3-10 - Batcool Petits ruminants
BOW 2024-3-10 - Batcool Petits ruminants
 
Compersseur d'air a vis atlas copco avec huile
Compersseur d'air a vis atlas copco avec huileCompersseur d'air a vis atlas copco avec huile
Compersseur d'air a vis atlas copco avec huile
 
BOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresBOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitières
 
BOW 2024 - 3-6 - Adaptation climat chaud Porcs
BOW 2024 - 3-6 - Adaptation climat chaud PorcsBOW 2024 - 3-6 - Adaptation climat chaud Porcs
BOW 2024 - 3-6 - Adaptation climat chaud Porcs
 
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.pptCHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
 
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VLBOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
 
Support de cours La technologie WDM.pptx
Support de cours La technologie WDM.pptxSupport de cours La technologie WDM.pptx
Support de cours La technologie WDM.pptx
 
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...
 
Agrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en DordogneAgrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en Dordogne
 

Transformation de carrés en cercles avec Atlas Transformation Language(ATL)

  • 1. Ingénierie des Modèles Atlas Transformation Language Amira Hakim Dept de Mathématique & Informatique Université de Souk-Ahras 1 UNIVERSITE MOHAMED CHERIF MESAADIA SOUK-AHRAS
  • 2. Introduction (Motivation) 2 Importance des modèles On utilise des modèles pour mieux comprendre un système. Pour un observateur A, M est un modèle de l’objet O, si M aide A a répondre aux questions qu’il se pose sur O. (Minsky). Un modèle est une simplification, une abstraction du système.
  • 3. L’Ingénierie Dirigée par les Modèles 3 L’Ingénierie Dirigée par les Modèles (ou IDM) est une démarche de développement qui conçoit l’intégralité du cycle de développement du logiciel comme un processus de production, de raffinement itératif et d’intégration de modèles. L’ingénierie dirigée par les modèles place le modèle au centre du processus de développement ,ainsi les différentes étapes du développement se traduisent par une succession de transformations de modèles.
  • 4. Notions fondamentaux 4 Modèle  Méta-modèle  Méta-Méta-modèle  Transformation de modèle Modéle Systéme Méta-Modéle Méta-Méta- Modéle représente Est conforme à Est conforme à
  • 5. Modèle 5 Définition d’un modèle: Un modèle est une description, une spécification partielle d'un système: C’est une abstraction de ce qui est intéressant pour un contexte et dans un but donné. Le modéle fournit une vue subjective et simplifiée d'un système. But d'un modèle: Faciliter la compréhension d'un système. Simuler le fonctionnement d'un système. Exemple : une carte routière , un diagramme UML
  • 6. Méta Modèle 6 Définition d’un Méta-Modèle: Le terme méta modèle est un stéréotype attaché à un modèle qui indique que le modèle est une abstraction d'un autre modèle ,autrement dit, un modèle d'un modèle. L'UML lui-même sert de méta modèle pour les modèles qui représentent des systèmes réels construits.
  • 7. Méta-Méta- Modèle 7 Méta Méta Modèle: c’est un modèle qui décrit un langage de méta modélisation , c.à.d., les éléments de modélisation nécessaires à la définition des langages de modélisation.
  • 8. Transformation de modèles 8 La transformation prend en entrée un modèle m1 et doit produire en sortie un autre modèle m2 Une transformation de modèles est la génération d’un ou de plusieurs modèles cibles à partir d’un ou de plusieurs modèles sources. Transformation = ensemble de règles (Correspondances entre éléments du modèle source et éléments du modèle cible)
  • 9. Buts d’une transformation 9  Raffinement: – Un modèle A1 devient un modèle A2 – Même métamodèle pour les deux  Projection: – Un modèle A1 devient un modèle B1 – Métamodèles distincts – [Composants > Java] Représente la base: – Production de systèmes dirigées par les modèles. – Support de l’interopérabilité entre les systèmes.
  • 10. ATL : ATLAS Transformation Language 10 Développé par l’équipe de recherche ATLAS INRIA ET LINA (Jean Bézivin). Fait partie du projet Eclipse M2M (Model-to-Model) Langage de transformation hybride Propose des structures déclarative et imperative. Une transformation ATL est composée de regles (rules) declaratives. Une regle definit une transformation d’un element du modele source vers un element du modele cible Possibilite d’appeler des Helpers (eq. methodes) pour faciliter le traitement dans les regles.
  • 11. Transformations endogènes et exogènes 11 Transformation endogène Transformation exogène
  • 12. 12 Transformation de modèle de carrés en modèle de cercles
  • 13. Structure d’une transformation ATL 13 Un module ATL correspond a une transformation modèle à modèle. Eléments: Une section entête : definit les attributs qui sont relatives au module de transformation. Une section « import » optionnelle: sert a importer quelques bibliothéques ATL éxistantes. Un ensemble de « helpers »:ATL équivalents aux méthodes java. Un ensemble de régles: définissent la façon dont les modéles cibles sont générés a partir de modéles sources.
  • 14. ATL modules 14 Ce sont les fichiers qui contiennent les transformations. Ces fichiers ont l’éxtension .ATL. Consistent en:  Header  Import  Helpers  Rules
  • 16. 2.Création d’un nouveau ATL projet 16
  • 17. Donner un nom au projet 17
  • 18. Création d’un dossier « metamodels » 18 Sous le projet Square2Circle; on crée un nouveau dossier pour les métas modéles
  • 20. Initialiser le fichier de diagramme Ecore 20
  • 22. Détails et propriétés de Square.ecore 22
  • 24. Initialiser le fichier de diagramme Ecore 24
  • 26. Détails et propriétés de Circle.ecore 26
  • 27. Création d’un dossier de modéles 27
  • 28. Création d’une interface dynamique(SquareM.xmi) sous le dossier Model 28
  • 29. Instanciation 29 On crée deux squares s1 et s2 et une relation r1
  • 31. Création du dossier des transformations 31
  • 32. Création du fichier Square2Circle.atl 32
  • 33. Code des transformation 33 module Square2Circle; create OUT:Circle from IN:Square; rule Arch2Base { from S:Square!Architecture to C:Circle!Architecture ( Name<-S.Name, circles<-S.squares, relations<-S.relations )} rule Transf { from S:Square!Square to C:Circle!Circle( Name<-S.Name, Color<-S.Color, Rayon<-S.Length )} rule Relation2Relation { from S:Square!Relation to C:Circle!Relation( Name<-S.Name, source<-S.source, target<-S.target
  • 36. Modélisation avec Graphical Modeling Framework 36 La Création d’un modèle conforme à un méta-modèle se fait par deux façons soit : Instancier le Meta model et avoir un modèle sous forme XMI. Générer un éditeur graphique à partir du Meta model par l’utilisation du GMF.
  • 37. Graphical Modeling Framework 37  GMF est un Framework de l'environnement de travail Eclipse.  Il fournit une infrastructure permettant l'exécution d'éditeurs graphiques basés sur les Framework EMF et GEF.  Avec GMF, il est possible de créer une application de modélisation simplifiée (formes de base : rectangle, ellipse) sans écrire une seule ligne de code.
  • 38. Le WorkFlux de GMF 38 Génération d’un éditeur graphique à partir d’un modèle EMF Domain Model(fichier.ecore) Dériver « Domain Gen Model » (Fichier : *.genmodel) Générer « Graphical Def Model » (Fichier : *.gmfgraph) Générer « Mapping Model » (Fichier : *.gmfmap) « Diagram Editor Gen Model » (Fichier : *.gmfgen) Générer l'éditeur de diagramme
  • 39. Création du projet GMF(Square) 39 Sans oublier de cocher la case: Show DashboardViews
  • 40. Le GMF Dashboard s’affiche 40
  • 41. Copier et coller le square.ecore dans le projet Square.GMF 41
  • 42. Sélectionnez « Domain Model » 42
  • 44. La fenêtre suivante s’affiche: 44
  • 45. Click sur Derive pour aller au Graphical Def Model 45 SuivantSuivant
  • 46. Click sur Derive pour aller au Tooling Def Model 46 SuivantSuivant
  • 47. Click sur Combine pour aller au Mapping Model 47 SuivantSuivant
  • 48. 48 Relation As link Target Remove Source Remove Relation Change:Source Feature :Ereference Source Target Feature :Ereference Target Diagram Link:Connection Relation
  • 51. Generate Diagram Code 51 Click droit sur Square.gmfgen sous le projet Square puis Generate Diagram Code
  • 52. 52
  • 53. Sous la 2éme fenetre d’eclipse 53 New Java Project Puis new others Examples Square Diagram:
  • 55. 55 Supprimer les modèles Square.xmi et Circle.xmi dans le repertoire Model du projet Square2Circle . Copier SquareM.square et le coller dans ce répertoire. Aller a run configuration pour modifier le IN model Click sur Apply puis Run
  • 56. Création du projet GMF(Circle) 56 On dois refaire les étapes du DashBoard du projet Square(GMF)