Your SlideShare is downloading. ×
  • Like
Model2Roo - ACME
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply
Published

 

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
485
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
6
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Model2Roo: Web ApplicationDevelopment based on the EclipseModeling Framework and Spring RooJuan Castrejón, Genoveva Vargas-Solar, Rafael LozanoUniversity of Grenoble, CNRS, Tecnológico de MonterreyACME 2012
  • 2. 2Background•  First version of the project presented in early 2011 Google Code Project Conference Paper http://code.google.com/p/model2roo http://dx.doi.org/10.1109/CONIELECOMP.2011.5749344
  • 3. 3Objective•  Generate web applications, by transforming Class diagrams into Spring Roo commandsEcore, UML2 ATL Queries Spring Roo commandsSpring Roo details:Ecore Annotations, UML Profiles
  • 4. 4Related work•  Web application development based on MDE techniques is a widely studied topic •  Web Modeling Language (WebML), WebRatio •  UWE approach •  Acceleo generators•  However, Model2Roo provides an association to modern development tools, through the Spring Roo project •  Spring Roo is responsible for the actual code generation •  Access to a wide variety of SpringSource projects
  • 5. 5User-identified issues1.  Insufficient support for graphical environments •  Limited support for complex UML editors, such as Papyrus •  Limited support for numeric data types2.  Basic edition of Spring Roo properties •  Spring Roo properties could only be set as free text •  Users were required to know the domains for each property3.  Troublesome installation procedure •  Tool deployed as a single plugin file •  Manual installation of the required dependencies (ATL, Papyrus)
  • 6. 6Technical issues1.  Maintenance of ATL queries •  Not a standard Model-To-Text specification2.  Output Spring Roo commands into a file •  ATL was designed primarily for M2M not for M2T •  In order to generate files, we had to modify ATL loggers •  Not an elegant solution, prone to subtle errors3.  Invocation of ATL queries from Eclipse plugin •  Limited documentation
  • 7. 7Recent improvements1.  Transformations implemented as Acceleo templates •  Standard notation (MOFM2T) •  Powerful syntax editors •  Automatic generation of UI Launcher projects (Eclipse plugin)2.  Improved edition of Spring Roo properties •  Full support for Papyrus profiles (UML) •  Properties domains are specified in the UML profiles •  Fixed support for Ecore Annotations3.  Improved installation procedure •  Eclipse update site containing all required dependencies
  • 8. 8 UMLProfile
  • 9. 9 What do we use it for? 1.  Generate test scenarios Architecture recovery and verification Web2MexADLhttp://code.google.com/p/web2mexadl MexADL http://code.google.com/p/mexadl MVC Analyzerhttp://code.google.com/p/mvc-analyzer 2.  Research prototypes Data Storage Instance Model Bus Model-Driven Cloud Data Storage http://code.google.com/p/instance-model-bus http://code.google.com/p/modesto
  • 10. 10Model-Driven Cloud Data Storage 1 High-level abstractions Java web App Spring Data/CDMI/etc.UML class diagram Spring Roo 2 Low-level abstractions Graph database Relational database
  • 11. 11Demonstration / Questions Contact: Juan.Castrejon@imag.fr