Tools and Methodologies to leverage GMF power (EclipseDay Delft 2012)

  • 368 views
Uploaded on

Describing Tools and Methodologies used and that will be used to develop the GMF editors of Bonita Open Solution Studio. It is an eclipse RCP application awarded "Best Modeling Application" during …

Describing Tools and Methodologies used and that will be used to develop the GMF editors of Bonita Open Solution Studio. It is an eclipse RCP application awarded "Best Modeling Application" during Eclipse Community Awards 2011 and was finalists in "Best Application" category during Eclipse Community Awards 2012.

More 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
368
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
9
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. Tools and Methodologies for GMF Aurélien Pupier R&D Engineer, Studio Project Leader GMF-Runtime Committer @apupier EclipseDay Delft , September 27, 2012
  • 2. AgendaShow me a GMF editorGMF Big PictureMethodologiesTooling 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 2
  • 3. GMF BIG PICTURE 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 3
  • 4. GMF9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 4
  • 5. GMF Basic Workflow Semantic DiagramModel (ecore) Model Mapping GMF codegen Code generation Diagram code9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 5
  • 6. What happens after the first generation?Requirements updateIntroduce specific behaviorI’m not able to do a one shot! 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 6
  • 7. METHODOLOGIES 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 7
  • 8. Update the model!StraightforwardBest maintainabilityEasiest solution 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 8
  • 9. GMF Extension points24Classical Eclipse way 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 9
  • 10. Extension points – Typical patternGENERATED Diagram PLUG-IN XXXEditPartProvider Reference XXXEditPart extends extendsCustom Diagram PLUG-INCustomXXXEditPartProvider Reference CustomXXXEditPart 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 10
  • 11. Generation templatesWhen? Apply to a whole kind of elements UltimatelyUseful for: Regeneration New element introduced 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 11
  • 12. Generation aspect templatesReduce amount of code to maintainAvoid code duplicationDown grain from class to method 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 12
  • 13. Generation aspect templates .xpt 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 13
  • 14. Another tip to reduce size ofcustom generation templates? 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 14
  • 15. Utility plugin – why?9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 15
  • 16. Utility plugin – how?9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 16
  • 17. Modify Generated code @Generated NOT Sandbox9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 17
  • 18. Projects Structure (1/2)9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 18
  • 19. Projects Structure (2/2) Generation Templates Semantic Model Diagram Model9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 19
  • 20. GMF Workflow Semantic Diagram ModelModel (ecore) Model Model Mapping Utility plugin GMF codegen Code generation Aspect Template Diagram code Extension points 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 20
  • 21. TOOLING
  • 22. GMF-ToolingOfficial tooling of GMF● Several editors● Wizards● GMF Dashboard 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 22
  • 23. SWTBot4GEFAutomated UI testsSimple API: click drag select activateTool 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 23
  • 24. Code generation Ant TaskGenerate code at build timeAvoid reconcilier issuesAvoid modification of your sandbox commited 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 24
  • 25. OCL Editor and InterpreterWrite and Test constraints 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 25
  • 26. Simple Mapping Editor (1/2) 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 26
  • 27. Simple Mapping Editor (2/2)All-in-one editorKeep separation of concerns availableEating your own dog food 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 27
  • 28. EDaptBig underlying model modificationsPoC for BOS 6.0 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 28
  • 29. Keep in mindGreat tooling ecosystemProven methodologies for continuousimprovement 9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 29
  • 30. To go furtherEclipse GMF Forum:http://www.eclipse.org/forums/index.php/f/16/Eclipse GMF Wiki:http://wiki.eclipse.org/GMFTalk together  9/29/2012 www.bonitasoft.com | © BonitaSoft S.A. 30
  • 31. aurelien.pupier@bonitasoft.comTwitter: @apupierEclipse blog: www.bonitasoft.org/blog/category/eclipseTalk to me about Bonita, BPMN2, Eclipse Modeling and moreCompany: www.bonitasoft.comCommunity: www.bonitasoft.orgTwitter: @bonitasoft