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?

Chp3 - Diagramme de Classes
Chp3 - Diagramme de ClassesChp3 - Diagramme de Classes
Chp3 - Diagramme de ClassesLilia Sfaxi
 
BPM - Business Process Management
BPM - Business Process ManagementBPM - Business Process Management
BPM - Business Process ManagementMourad HASSINI
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieMohammed Amine Mostefai
 
Cours1_Architecture_Logicielle.ppt
Cours1_Architecture_Logicielle.pptCours1_Architecture_Logicielle.ppt
Cours1_Architecture_Logicielle.pptSylia3
 
Slides de présentation de la thèse du doctorat
Slides de présentation de la thèse du doctoratSlides de présentation de la thèse du doctorat
Slides de présentation de la thèse du doctoratZyad Elkhadir
 
Compte rendu de tp de commande numerique
Compte rendu de tp de commande numeriqueCompte rendu de tp de commande numerique
Compte rendu de tp de commande numeriqueELMEHDYELWARDY
 
Programmation linéniaire
Programmation linéniaire Programmation linéniaire
Programmation linéniaire Mohammed Zaoui
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Ramzi Noumairi
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence Yassine Badri
 
Comparaison de outils mda
Comparaison de outils mdaComparaison de outils mda
Comparaison de outils mdaShili Mohamed
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Faycel Chaoua
 
Examen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correctionExamen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correctionInes Ouaz
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UMLAmir Souissi
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-CorrectionLilia Sfaxi
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correctionLilia Sfaxi
 
Prototype rapport
Prototype rapportPrototype rapport
Prototype rapportInes Ouaz
 

Was ist angesagt? (20)

Chp3 - Diagramme de Classes
Chp3 - Diagramme de ClassesChp3 - Diagramme de Classes
Chp3 - Diagramme de Classes
 
BPM - Business Process Management
BPM - Business Process ManagementBPM - Business Process Management
BPM - Business Process Management
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vie
 
Cours1_Architecture_Logicielle.ppt
Cours1_Architecture_Logicielle.pptCours1_Architecture_Logicielle.ppt
Cours1_Architecture_Logicielle.ppt
 
Slides de présentation de la thèse du doctorat
Slides de présentation de la thèse du doctoratSlides de présentation de la thèse du doctorat
Slides de présentation de la thèse du doctorat
 
Compte rendu de tp de commande numerique
Compte rendu de tp de commande numeriqueCompte rendu de tp de commande numerique
Compte rendu de tp de commande numerique
 
Programmation linéniaire
Programmation linéniaire Programmation linéniaire
Programmation linéniaire
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence
 
Comparaison de outils mda
Comparaison de outils mdaComparaison de outils mda
Comparaison de outils mda
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2Manuel des TP : Atelier Web 2
Manuel des TP : Atelier Web 2
 
Examen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correctionExamen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correction
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 
Méthodes Agiles - La Méthode XP
Méthodes Agiles - La Méthode XPMéthodes Agiles - La Méthode XP
Méthodes Agiles - La Méthode XP
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
Modelisation conception SI
Modelisation conception SIModelisation conception SI
Modelisation conception SI
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Prototype rapport
Prototype rapportPrototype rapport
Prototype rapport
 
Support POO Java première partie
Support POO Java première partieSupport POO Java première partie
Support POO Java première partie
 

Ä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
 
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
 
Support de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdfSupport de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdfYasushiTsubakik
 
Modelisation agile 03122011
Modelisation agile  03122011Modelisation agile  03122011
Modelisation agile 03122011agnes_crepet
 

Ä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
 
MAD Model Aggregator eDitor (EMF)
MAD Model Aggregator eDitor (EMF)MAD Model Aggregator eDitor (EMF)
MAD Model Aggregator eDitor (EMF)
 
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
 
Support de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdfSupport de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdf
 
Modelisation agile 03122011
Modelisation agile  03122011Modelisation agile  03122011
Modelisation agile 03122011
 

Kürzlich hochgeladen

GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...Institut de l'Elevage - Idele
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusInstitut de l'Elevage - Idele
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...Institut de l'Elevage - Idele
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéInstitut de l'Elevage - Idele
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfInstitut de l'Elevage - Idele
 
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Ville de Châteauguay
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...Institut de l'Elevage - Idele
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesInstitut de l'Elevage - Idele
 
WBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdfWBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdfSophie569778
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageInstitut de l'Elevage - Idele
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfInstitut de l'Elevage - Idele
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfInstitut de l'Elevage - Idele
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...Institut de l'Elevage - Idele
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...Institut de l'Elevage - Idele
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...Institut de l'Elevage - Idele
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestionyakinekaidouchi1
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de planchermansouriahlam
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirstjob4
 

Kürzlich hochgeladen (20)

GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
 
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdfJTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversité
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdf
 
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentes
 
WBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdfWBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdf
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
 
JTC 2024 Bâtiment et Photovoltaïque.pdf
JTC 2024  Bâtiment et Photovoltaïque.pdfJTC 2024  Bâtiment et Photovoltaïque.pdf
JTC 2024 Bâtiment et Photovoltaïque.pdf
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdf
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestion
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de plancher
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdf
 

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)