Eclipse Modeling to create your DSL



   Etienne Juliot   etienne.juliot@obeo.fr
OK, you go to ESE or Eclipse Day Paris.
                            And now?
How to industrialise
JavaEE development?
My goals for today:
                        Use a DSL to find the intention
                        Generate JavaEE
                        Create my own designers
                        Integrate the result in an Enterprise Architecture
© Copyright 2010 Obeo
Lets t ry this story:
We are a tra     vel agency,
and we wan     t to create an
 enterprise blog
© Copyright 2010 Obeo




                        L et s d o it by hand
Simplify
Lets take a JavaEE file exemple and search the "Intention"?
© Copyright 2010 Obeo
Hum, I find something
© Copyright 2010 Obeo
How to describe it?




                                          or
© Copyright 2010 Obeo
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
© Copyright 2010 Obeo
© Copyright 2010 Obeo
A little bit of syntax
© Copyright 2010 Obeo




                        13
A long history
                             From Acceleo.org in 2006...


                                            ...to Eclipse.org in 2009

                                    Version 3.0 is part
© Copyright 2010 Obeo




                                                        of the
                                    Eclipse Helios rele
                                                       ase train
                        14
And now, my travelAgency Blog is based on 3 parts
© Copyright 2010 Obeo
© Copyright 2010 Obeo




                        So, I need 3 DSLs
My DSL doesn't need JavaEE skills
© Copyright 2010 Obeo




                         17
Traceabilit  y: the solution
                    to look at the right place
© Copyright 2010 Obeo




                        18
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."
© Copyright 2010 Obeo




                        19
© Copyright 2010 Obeo




20
Which one is the easiest to understand?
© Copyright 2010 Obeo




                        21
Yet another fu....ing meta-blabla?


                                                         Keep it simple




                        Yes: MD and Agile a
                                            re friends
© Copyright 2010 Obeo
Where do I find data ?



How do I managed data ?
Enterprise Architecture


                                                  Togaf
© Copyright 2010 Obeo
Du DSM au point de vue !

                                                        Le système à modéliser




                        Le point de vue
                         ●   Analyse de performance
                         ●   Analyse d'exigences
                             Fonction / Sous Fonction
                                                                                 Les vues du Système
                         ●
© Copyright 2010 Obeo




                         ●   Hardware / Software
                                                                                   ●   Diagramme de blocs
                         ●
                             DBA
                                                                                   ●   Diagramme de composants
                         ●   Urbaniste des services
                                                                                   ●   Diagramme de séquences
                                                                                   ●
                                                                                       Tableur, Matrice

                                                                             Les vues du système
                                                                               (les diagrammes)
With EA, applications are like people
                           that speak the same language



                          Accountants                  Managers
                          Application                 Application
                             Island                     Suburb
                                                                    Each application uses models
                                                                    that are easily readable and
                                          Models                    transformable by other
                                                                    applications

                            CEO                        IS Team
                          Application                 Application
© Copyright 2010 Obeo




                           Suburb                      Suburb
How create bridges for my legacy?
And now: 3 DSLs for WTP
© Copyright 2010 Obeo




                        28
Import from an UML model




                             UML
© Copyright 2010 Obeo




                                         DSL
Your system is now used throw differents Viewpoints
© Copyright 2010 Obeo
© Copyright 2010 Obeo




31
Conclusion: Modeling help to create
                             YOUR workbench adapted to
                             YOUR architecture designed with
                             YOUR vocabulary
© Copyright 2010 Obeo




                        32
Obeo Designer 4.6.1
                                                  iagram
                                     - Sequ ence D
                                               - UML, IS, To
                                                            g
                                                           af, Ecore
                                        - Layout, performance
                                             - Filters
© Copyright 2010 Obeo




                        33
© Copyright 2010 Obeo




                  Questions?

Eclipse Modeling pour fabriquer ses DSL par Etienne Juliot

  • 1.
    Eclipse Modeling tocreate your DSL Etienne Juliot etienne.juliot@obeo.fr
  • 2.
    OK, you goto ESE or Eclipse Day Paris. And now?
  • 3.
  • 4.
    My goals fortoday: Use a DSL to find the intention Generate JavaEE Create my own designers Integrate the result in an Enterprise Architecture © Copyright 2010 Obeo
  • 5.
    Lets t rythis story: We are a tra vel agency, and we wan t to create an enterprise blog
  • 6.
    © Copyright 2010Obeo L et s d o it by hand
  • 7.
  • 8.
    Lets take aJavaEE file exemple and search the "Intention"? © Copyright 2010 Obeo
  • 9.
    Hum, I findsomething © Copyright 2010 Obeo
  • 10.
    How to describeit? or © Copyright 2010 Obeo
  • 11.
    We can createour 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 © Copyright 2010 Obeo
  • 12.
  • 13.
    A little bitof syntax © Copyright 2010 Obeo 13
  • 14.
    A long history From Acceleo.org in 2006... ...to Eclipse.org in 2009 Version 3.0 is part © Copyright 2010 Obeo of the Eclipse Helios rele ase train 14
  • 15.
    And now, mytravelAgency Blog is based on 3 parts © Copyright 2010 Obeo
  • 16.
    © Copyright 2010Obeo So, I need 3 DSLs
  • 17.
    My DSL doesn'tneed JavaEE skills © Copyright 2010 Obeo 17
  • 18.
    Traceabilit y:the solution to look at the right place © Copyright 2010 Obeo 18
  • 19.
    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." © Copyright 2010 Obeo 19
  • 20.
  • 21.
    Which one isthe easiest to understand? © Copyright 2010 Obeo 21
  • 22.
    Yet another fu....ingmeta-blabla? Keep it simple Yes: MD and Agile a re friends © Copyright 2010 Obeo
  • 23.
    Where do Ifind data ? How do I managed data ?
  • 24.
    Enterprise Architecture Togaf © Copyright 2010 Obeo
  • 25.
    Du DSM aupoint de vue ! Le système à modéliser Le point de vue ● Analyse de performance ● Analyse d'exigences Fonction / Sous Fonction Les vues du Système ● © Copyright 2010 Obeo ● Hardware / Software ● Diagramme de blocs ● DBA ● Diagramme de composants ● Urbaniste des services ● Diagramme de séquences ● Tableur, Matrice Les vues du système (les diagrammes)
  • 26.
    With EA, applicationsare like people that speak the same language Accountants Managers Application Application Island Suburb Each application uses models that are easily readable and Models transformable by other applications CEO IS Team Application Application © Copyright 2010 Obeo Suburb Suburb
  • 27.
    How create bridgesfor my legacy?
  • 28.
    And now: 3DSLs for WTP © Copyright 2010 Obeo 28
  • 29.
    Import from anUML model UML © Copyright 2010 Obeo DSL
  • 30.
    Your system isnow used throw differents Viewpoints © Copyright 2010 Obeo
  • 31.
  • 32.
    Conclusion: Modeling helpto create YOUR workbench adapted to YOUR architecture designed with YOUR vocabulary © Copyright 2010 Obeo 32
  • 33.
    Obeo Designer 4.6.1 iagram - Sequ ence D - UML, IS, To g af, Ecore - Layout, performance - Filters © Copyright 2010 Obeo 33
  • 34.
    © Copyright 2010Obeo Questions?