09-Jan-2020 An Overview of EMF/GMF Tool in Eclipse IDE Presented - - PowerPoint PPT Presentation

09 jan 2020 an overview of emf gmf tool in eclipse ide
SMART_READER_LITE
LIVE PREVIEW

09-Jan-2020 An Overview of EMF/GMF Tool in Eclipse IDE Presented - - PowerPoint PPT Presentation

09-Jan-2020 An Overview of EMF/GMF Tool in Eclipse IDE Presented by- Heerok Banerjee Graduate Student Dept. of Mathematics and Computer Science University of Antwerp http://www.heerokbanerjee.in/research The Next 15 Model


slide-1
SLIDE 1

09-Jan-2020

slide-2
SLIDE 2

An Overview of EMF/GMF Tool in Eclipse IDE

Presented by- Heerok Banerjee

Graduate Student

  • Dept. of Mathematics and Computer Science

University of Antwerp http://www.heerokbanerjee.in/research

slide-3
SLIDE 3

The Next 15’

3

2 mins 3 mins 2 mins 3 mins 2 mins Eclipse EMF; Ecore meta-models Modelling from Scratch Code Generation; Model Editors Model Transformation; Takeaways Eclipse GMF; EMF Forms

slide-4
SLIDE 4

Statistics show that a lot of effort is spent in designing UI. So, can we optimize the upfront time in building UI from scratch?

Too much work!

“Developing business web applications with form-based UIs”. Maximillian Koegel, Eclipsecon2017.

slide-5
SLIDE 5

What is Eclipse EMF/GMF in a nutshell

5

  • Ecore meta-models
  • Reflective APIs
  • Code Generation
  • Form-based UIs

A modelling and UI integration framework. Simple and pragmatic.

slide-6
SLIDE 6

The Ecore meta-modelling language

slide-7
SLIDE 7

Property-driven vs Visual Editors?

Different views, but format is persistent (XSD/XMI). Easily exportable.

The choice is yours!

slide-8
SLIDE 8

EMF/GMF Modelling Workflow

slide-9
SLIDE 9

Code Generation

Genmodel

3

Domain Model

2

Ecore meta-model

1

Model Code (/src) Editor Code (*.editor) Test Code (*.test) Edit Code (*.edit)

slide-10
SLIDE 10

Code generation is entirely automated. We only need one Domain model to generate the rest.

GMF Dashboard

slide-11
SLIDE 11

Model-based UIs → EMF Forms

“Getting started with EMF forms”. Eclipse Source.

slide-12
SLIDE 12

Examples

  • Basic CRUD

implementation for attributes.

  • Embedded forms

to support dynamic changes.

slide-13
SLIDE 13

Model Transformation

Tool/Framework Transformation Remarks

Eclipse EMF/ GMF ATL MMT

declarative-imperative language

Eclipse Graphiti

  • Diagram updates from

model changes

AToMPM MoTIF

Rule-based; visual

Sirius Acceleo/ATL

Uses underlying GMF impl.

MetaDepth ETL

Declarative language for MMT

Xtext ATL

by exporting to ecore models

slide-14
SLIDE 14

Model Transformation (contd.)

Endogeneous transformations are not supported. Source and Target models must be distinct.

“model-to-model Transformation with ATL”. Fredric Jouault et. all, Eclipsecon 2008.

Diagram Refactoring can be employed to make minor changes in existing models. ATL transformation for notation to

  • notation. However, semantics is lost!
slide-15
SLIDE 15

Key Takeaways

  • Eclipse EMF provides tools to build domain

models and DSL model editors.

  • Eclipse EMF/GMF reduces upfront effort for code

generation and UI implementation.

  • Model transformation is tricky in graphical

editors, but achievable.

  • With great power, comes greater inconvenience.
slide-16
SLIDE 16