Metamodel (driven) Reverse Engineering Stories of the Dagktis Stone and the Rosetta Stone - PowerPoint PPT Presentation

1 / 117
About This Presentation
Title:

Metamodel (driven) Reverse Engineering Stories of the Dagktis Stone and the Rosetta Stone

Description:

Metamodel (driven) Reverse Engineering Stories of the Dagktis Stone and the Rosetta Stone Jean-Marie Favre Software Explorer and Language Archeologist – PowerPoint PPT presentation

Number of Views:203
Avg rating:3.0/5.0
Slides: 118
Provided by: Jeanmar75
Learn more at: http://megaplanet.org
Category:

less

Transcript and Presenter's Notes

Title: Metamodel (driven) Reverse Engineering Stories of the Dagktis Stone and the Rosetta Stone


1
Metamodel (driven) Reverse EngineeringStories
of the Dagktis Stone and the Rosetta Stone
Jean-Marie Favre Software Explorerand Language
ArcheologistADELE Team University of GRENOBLE
Dagsthul Seminar on Model Driven Language
Engineering - March 2004 AC
2
Metamodel Driven Architecture Recovery
Jean-Marie Favre Software Explorerand Language
Archeologist ADELE Team University of GRENOBLE
Dagsthul Seminar on Software Architecture
Recovery and Modeling - March 2003 AC
3
The true story ofLanguage Archeology in
Grenobleand in some other citiesaround the world
4
OUTLINE
  • The Dagktis Stone and the Pyramids
  • From Babel to the Meta-Pyramid
  • Journey Inside the Meta-Pyramid
  • The Rosetta Stone
  • 7 Years of Exploration in a Large Software
    Country

5
Chapter IThe Dagktis Stoneand The Pyramids
6
In the ancient time, two priests Janis Bezivis
and Rikis Hickos decided to organize a seminar
in the temple of Dagktis. They wanted to think
about "language engineering". They invited very
influential people. Pharaohs were invited This
Dagktis Seminar was held in March 2004 BC
7
Nobody remembers this event. Fortunately Janis
Bezivis and Rikis Hickos built a model to record
what happened there.The model took the form of a
carved granit stone.
basalt
basalt
8
The Dagktis stone went across the ages .... It is
now kept in the basement of the Museum of
GRENOBLE.
basalt
basalt
museumOfGrenoble ModelRepository
9
The Dagktis stone went across the ages .... It is
now kept in the basement of the Museum of
GRENOBLE.
basalt
MuseumOfGrenoble ModelRepository
10
Very recently Archeologists from the Univ. of
GRENOBLEtried to recover the meaning of the
Dagktis stone using brand-newMDE concepts. They
drawn various schemas on a blackboard.
M2
Meta Model Hieroglyphs
Model Repository Museum of GRENOBLE
basalt
basalt
basalt
basalt
ConformsTo
M1
Model Dagktis stone
RepOf
System Dagktis seminar March 2004 BC
11
Archeologists wanted to best understand the
concept of model transformation. So they used
the Dagktis stone as a case study.
M2
Meta Model Hieroglyphs
Meta Model EnglishOCL
ConformsTo
ConformsTo
M1
Model Dagktis text.
Model Dagktis stone
T
Proceedings of the First Dagktisseminar on
"language engineering". Organized by Janis
Bezivin and Rikis Hickos. Held in the temple of
Dagtkits in March 2004 BC. The first session was
held in the room E101 of the temple.
12
The transformation was successfully applied
although nobody took care of providing a proof of
semantic preservation.
M2
Meta Model Hieroglyphs
Meta Model EnglishOCL
ConformsTo
ConformsTo
M1

Proceedings of the First Dagktisseminar on
"language engineering". Organized by Janis
Bezivin and Rikis Hickos. Held in the temple of
Dagtkits in March 2004 BC. The first session was
held in the room E101 of the temple.
T
RepOf
RepOf
?
13
An annotated model was produced
Proceedings of the 1st Dagktis Seminar on
Language Engineering
14
Janis Bezivis the priest
15
Rikis Hickos the priest
16
On the first day,everything was under control
17
Bezivis and Hickospresented the results of their
long meditations in the temple.
18
The day after, everything went wrong.
19
The pharaohs were not paying attention.
20
They were angry
21
We do not want to heard more aboutlanguage
engineering.
22
Language definitions would not be used outside
temples
23
Real-life languages are not engineered! There
are just used !!!
24
And real-life languagesjust evolve as they are
used!
25
We do not needlanguage engineering for real-life
languages.
26
So what ?
27
?
?
?
?
28
?
29
If nobody cares about language engineering, what
about, let's say, pyramid engineering ?
30
Priests, from now on you must concentrate on
pyramid engineering!
31
(No Transcript)
32
90
Breed
Collie
Fido
33
(No Transcript)
34
  • The 1st Dagktis seminar on "language engineering"
    was a failure.
  • The pharaohs didn't want to pay for language
    engineering
  • There were just interested in pyramids
    engineering.
  • But the pyramids revealed of absolutly no use.
  • Pyramids didn't prevent pharaohs from dying
  • Everybody died.
  • Their own language died
  • Nobody would ever know what pharaohs had to say.
  • Nobody?

35
Chapter IIFrom the Babel Tower to the Meta
Pyramid
36
  • 4004 years later, at the OMG.

Corba, the OO Esperanto language were dying
slowly
37
4004 years later, at the OMG.
Corba, the OO Esperanto language were dying
slowly
Sorry, the Museum of GRENOBLE doesn't have a
single model of OMG meetings
38
4004 years later, at the OMG.
Corba, the OO Esperanto language were dying
slowly
So what ?
39
?
?
?
?
40
?
41
If the Babel Tower is not the solution we can
try, let's say, a Meta Pyramid ?
42
And what about "Model Driven Architecture" ?
M3
M2
M1
M0
Real world
43
M3
M2
M1
M0
And a new logo!
Real world
44
From now on, everybody in industry must use the
MOF meta-language
M3
M2
M1
M0
Real world
45
Provisionary conclusion
Whatever the subject of the conversation is
about,all discussions seem to end up with a
pyramid. If you have a problem at hand, add a new
layer of abstraction
M3
M2
M1
M0
Real world
46
Chapter IIIA Journey Inside the Meta Pyramid
47
Prescriptive or Descriptive ?
Who was there before? The chicken or the egg?
Meta Model Hieroglyphs
isCorrect?
Specifies
ConformsTo
isValid?
Describes
Model Dagktis stone
ltSpecifies
RepOf
System Dagktis seminar March 2004 BC
ltDescribes
isValid?
isCorrect?
48
Research question
The MDA provides is a prescriptive vision of the
pyramid.
  • Can we consider that thesoftware world has
    beenorganized in a linguistic pyramid
  • from the begining ?

Software pyramid
M3
M2
M1
M0
Real world
The meta-pyramid could help in describing
existing phenomena
49
Actual pyramidal structures in software industry
Software/organisation pyramid
100
M3
101
M2
103
M1
M0
105
Real world
50
Software Metaware Appliware
Software Pyramid
M3
M2
METAWARE
SOFTWARE
M1
APPLIWARE
M0
Real world
Metaware all the software at the M2 level
whatever the language it conforms to at the
M3 level
51
Metaware M2-level software
Software pyramid
M3
M2
METAWARE
M1
M0
Real world
52
Metaware M2-level software
Software pyramid
M3
M2
METAWARE
M1
M0
Real world
53
Metaware M2-level software
Software pyramid
M3
M2
METAWARE
M1
M0
Real world
54
Metaware M2-level software
Software pyramid
M3
M2
METAWARE
M1
M0
Real world
55
Metaware M2-level software
Software pyramid
M3
M2
METAWARE
M1
M0
Real world
56
Metaware M2-level software
Software pyramid
M3
M2
METAWARE
M1
M0
Real world
57
Metaware M2-level software
Software pyramid
M3
M2
METAWARE
M1
M0
Real world
58
Provisionary conclusion
Modeling software as a linguistic pyramid seems
to be correct. Almost all of the existing
metaware on the planet is legacy !
M3
M2
M1
M1
M0
M0
Real world
59
Chapter IVThe Rosetta StoneSuccesses in
metaware-reverse engineering
60
basalt
MuseumOfGrenoble ModelRepository
61
The 1st Dagktis seminar on "language engineering"
was a failure. The pharaohs didn't want to pay
for language engineering There were just
interested in pyramids engineering. But the
pyramids revealed of absolutely no use. Pyramids
didn't prevent pharaohs from dying Everybody
died. Their own language died Nobody would
ever have known what pharaohs had to say.
Nobody?
62
Nobody? Nobody except in a Small Village in
France
RepOf
RepOf
Model RepositoryBritish Museum
  • Rosetta Stone

63
Champollion was a precursor in MDE
64
Champollion was a precursor in MDE
Infrastructure Refactoring
90
65
Champollion was a precursor in MDE
Model decomposition
66
Champollion was a precursor in MDE
Model correspondance
M1
RepOf
System
RepOf
RepOf
67
Champollion was a precursor in MDE
M2
Hieroglyphs
L2
L3
ConformsTo
ConformsTo
ConformsTo
M1
RepOf
System
RepOf
RepOf
68
Language Reverse Engineering, M1-gtM2
M2
M1
Egyptian-Grammar
Rosetta Stone
69
(No Transcript)
70
(No Transcript)
71
Language Reverse Engineering, M1-gtM2
M2
M1
Egyptian-Grammar
Rosetta Stone
72
Language Reverse Engineering, M2-gtM2
M2
M2
Cobol Grammar
M2
M2
Cobol Documentation
73
Language Reverse Engineering, M2-gtM2
M2
OM Virtual Meta-model
M2M1
Software artefacts
74
Chapter IV7 years of Exploration in a large
Software Country
75
7 years Of Exploration in Dassault Systèmes
Software Country
76
DASSAULT SYSTEMES
7 years Of Exploration in Dassault Systèmes
Software Country
77
ADELE TEAM
7 years Of Exploration in Dassault Systèmes
Software Country
  • Estubis
  • the
  • priest

78
7 years Of Exploration in Dassault Systèmes
Software Country
  • Dassault Système (DS)
  • World leader in CAD/CAM
  • One of the largest software company in Europe
  • CATIA software
  • 1200 software engineers
  • 70 000 classes
  • 3 000 DLLs
  • 8 000 "components"
  • 5 000 "interfaces"
  • 800 "frameworks"
  • xxx "solutions"
  • zzz "médias"
  • ttt "products"
  • uuu statements

79
Observations
  • In 7 years we never saw a single line of code
  • We only saw Metaware
  • We never saw meta-models expressed in UML or MOF
  • So we had to recover them

CATIA Software pyramid
M3
M2
METAWARE
M1
M0
Real world
80
Observations
  • In 7 years we never saw a single line of code
  • We only saw Metaware
  • We never saw meta-models expressed in UML or MOF
  • So we had to recover them
  • CATIA software
  • 1200 "software engineers"
  • 70 000 "classes"
  • 3 000 "DLLs"
  • 8 000 "components"
  • 5 000 "interfaces"
  • 800 "frameworks"
  • xxx "solutions"
  • zzz "medias"
  • ttt "products"
  • uuu statements

CATIA Software pyramid
M3
M2
METAWARE
M1
APPLIWARE
M0
Real world
81
The architecture of all software built in our
kingdom is expressed using our own component
technology.
82
This proprietary technology provides our country
with a great power.
83
This technology really defines what software
architecture is about in our country.
84
Nice! Did you define a new language for
that?Where is the definition of this
architectural language?
85
What??? Do you believe that we had time to define
new languages??? This country has to produce
software! People in our country use C,available
compilers and tools! Working tools!
86
Everybody in the country know how to implement
architectural concepts and components using C
and other mechanisms. People know much.
87
Yes, but where is the definition of the
architectural concepts and their exact meaning ?
88
What do you mean by exact meaning?People know
what they have to do and they just do it! Our
kingdom is the most powerful in the world!
89
What can we do?
Priest Ledris
90
?
ADL
Priest Ledris
91
What about defining an brand-new Architectural
Definition Language for your country ?
92
WE DON'T WANT AN NEW ADL !!!
93
People already know how to express running
software architecture in C
94
So what ?
95
?
?
?
?
96
?
?
?
?
?
97
?
98
What about architecture recovery ?
99
I mean, the architecture is there, so why not
extracting it from appliware?
100
And what about language reverse engineering ?
101
I mean, though implicit the architectural
language is already there, so why not
extracting it from existing metaware ?
102
What is needed is Meta-model Recovery
andMeta-model Driven Architecture Recovery !
103
A Meta-model Driven Reverse Engineering Process
104
A Meta-model Driven Reverse Engineering Process
An Meta-ltModel Driven Implementation of the "View
Set" Process Pattern for Architecture
Recovery (SEI) Based on the concepts of the IEEE
1471 Std
105
(1.a) Metaware items Inventory
106
(1.b) Meta-model Recovery
107
(1.c) Meta-model (Conceptual) Integration
108
(1.c) Meta-model Integration
(1.d) Meta-model Clustering and Packaging
109
Examples of Recovered Meta-models from DS
Sanlaville' PhD
110
(2.a) M2-level Actor Identification
111
(2.a) Meta-model-level Actor Identification
(2.b) M2-level Use Cases Analysis
112
(2.d) M2-level Use Cases Analysis
113
(3.ab) Metaware implementation
GSEE A Meta-Model Driven
Exploration Tool
114
(3.ab) Metaware implementation
115
Chapter VConclusion
116
Conclusion
  • MDE is just about Egyptology
  • Egyptology is just about MDE
  • The Meta-pyramid seems to be a good descriptive
    model of actual organisations
  • More research needed in language engineering /
    reverse engineering

117
Migrating to Model Driven Engineering
Write a Comment
User Comments (0)
About PowerShow.com