eclipse modeling for wtp
DESCRIPTION
These slides have been presented at Eclipse Summit Europe 2010. This talk will show how Eclipse Modeling technologies could be used to design JavaEE applications. It will be illustrated by: * EMF to design a DSL for WebApp, * GMF to design screens, services, entities, enterprise architectures * Acceleo to generate to Spring, Struts, Hibernate and others * ATL to import UML/Togaf models The story of a travel agency is used as an exemple. It show how to create a simple DSL, how to create my own graphical workbench with Obeo Designer, and how to integrate this application inside a Togaf compatible architecture. It will show how WTP and EMP fit well together for developers, architects and designers. It will also prove with the same model how easy are the evolution management with the updating of a generator to target a new JavaEE framework.TRANSCRIPT
Eclipse Modeling for WTP
Etienne Juliot [email protected]
OK, you go to ESE. And now?
How to industrialiseJavaEE development?
© C
opyr
ight
201
0 O
beo
My goals for today:
Use a DSL to find the intention
Generate JavaEE
Create my own designers
Integrate the result in an Enterprise Architecture
Lets try this story:
We are a travel agency,
and we want to create an
enterprise blog
© C
opyr
ight
201
0 O
beo
Lets do it by hand
Simplify
© C
opyr
ight
201
0 O
beo
Lets take a JavaEE file exemple and search the "Intention"?
© C
opyr
ight
201
0 O
beo
Hum, I find something
© C
opyr
ight
201
0 O
beo
How to describe it?
or
© C
opyr
ight
201
0 O
beo
We can create our own "generator by convention"
Conventions exemples :
An Entity is identify by a technical ID associated to a Sequence
The name of the table is by default the name of the Entity
© C
opyr
ight
201
0 O
beo
13
© C
opyr
ight
201
0 O
beo
A little bit of syntax
14
© C
opyr
ight
201
0 O
beo
A long history
From Acceleo.org in 2006...
...to Eclipse.org in 2009
Version 3.0 is part of the Eclipse Helios release train
© C
opyr
ight
201
0 O
beo
And now, my travelAgency Blog is based on 3 parts
© C
opyr
ight
201
0 O
beo
So, I need 3 DSLs
17
© C
opyr
ight
201
0 O
beo
My DSL doesn't need JavaEE skills
18
© C
opyr
ight
201
0 O
beo
Traceability: the solution
to look at the right place
19
© C
opyr
ight
201
0 O
beo
Graphical modeling
"Domain-specific modeling (DSM) is a software engineering methodology for designing and developing systems, such as computer software. It involves systematic use of a graphical domain-specific language (DSL) to represent the various facets of a system."
20
© C
opyr
ight
201
0 O
beo
21
© C
opyr
ight
201
0 O
beo
Which one is the easiest to understand?
© C
opyr
ight
201
0 O
beo
Yet another fu....ing meta-blabla?
Keep it simple
Yes: MD and Agile are friends
Where do I find data ?
How do I managed data ?
© C
opyr
ight
201
0 O
beo
Enterprise Architecture
Togaf
© C
opyr
ight
201
0 O
beo
With EA, applications are like peoplethat speak the same language
AccountantsApplication
Island
ManagersApplication
Suburb
CEOApplication
Suburb
IS TeamApplication
Suburb
Models
Each application uses modelsthat are easily readable andtransformable by otherapplications
How create bridges for my legacy?
27
© C
opyr
ight
201
0 O
beo
And now: 3 DSLs for WTP
© C
opyr
ight
201
0 O
beo
Import from an UML model
UML
DSL
© C
opyr
ight
201
0 O
beo
Your system is now used throw differents Viewpoints
30
© C
opyr
ight
201
0 O
beo
31
© C
opyr
ight
201
0 O
beo
Conclusion: Modeling help to create
YOUR workbench adapted to
YOUR architecture designed with
YOUR vocabulary
32
© C
opyr
ight
201
0 O
beo
© C
opyr
ight
201
0 O
beo Questions?