Eclipse Modeling Framework (EMF) Paweł Żalejko

Similar documents
What is Wazaabi 2.0? Declarative UI framework. based on. live EMF model(s)

INTRODUCTION TO EMF. Creating Model using EMF. Our Domain model used to showcase this use case is as shown below in fig.1

(Meta)Models between MetaEdit+

Ákos Horváth Gábor Bergmann Dániel Varró István Ráth Model Driven Software Development Lecture 3

Model handling with EMF

CISC836: Models in Software Development: Methods, Techniques and Tools

Modif Documentation. Refactoring User Guide

EMF course - PACT. Etienne Borde

AbstractCommand, AbstractEnumerator, AbstractOverrideableCommand, AddCommand, AbstractTreeIterator, Adapter, EAnnotation.

The Galilean Moons of Eclipse

A Formal Approach to Modeling and Model Transformations in Software Engineering

EMFT 1.0 Release Review (OCL, Query, Transaction, and Validation)

Comparing graphical DSL editors

Teneo: Integrating EMF & EclipseLink

How we reached 0 technical debt in our Eclipse project

A Comparison of Ecore and GOPPRR through an Information System Meta Modeling Approach

CIMPHONY. Alan McMorran. OGO Open Grid Systems

Automatic Integration of Ecore Functionality into Java Code

EGF Tutorial. Benoît Langlois Thales/EPM. EGF Tutorial by Thales; made available under the EPL v1.0

Kermeta tutorial. How to create an EMF meta model? François Tanguy, Didier Vojtisek, Zoé Drey, Marie Gouyette. Abstract

Model Driven Development with EMF and EclipseLink (experiences in MDD and generating user interfaces)

EMF Model Refactoring based on Graph Transformation Concepts

Introduction to EGF. Benoît Langlois / Thales Global Services.

GMF Tooling 3.0 Vision, Architecture, Roadmap

Leveraging the Model-View- Presenter Pattern in Rich Client Applications

Institutionen för datavetenskap

How to generate new EMF model refactorings using Java code

Model-based Software Engineering (02341, Spring 2017) Ekkart Kindler

A light introduction to the Eclipse Modeling Framework

Supporting Modeling in the Large in Fujaba

Eclipse Automotive Working Group

EMF-IncQuery gets Sirius: faster and better diagrams

Comparison and merge use-cases from practice with EMF Compare

An Integrated Development Environment for Business Object Notation

Using Eclipse in MIS Research

INF5120 Model-Based System Development

Model-based Analysis of Source Code Repositories

EMF Code Generation with Fujaba

ECLIPSE MODELING PROJECT

Add some spice to your application! (using EMF Parsley in your UI)

Start Up Benoît Langlois / Thales Global Services Eclipse (EMFT) EGF 2011 by Thales; made available under the EPL v1.

Introduction to Model Driven Engineering using Eclipse. Frameworks

The etrice Eclipse Project Proposal

Eclipse technology in IFMS Interface Management System

Migration of Pogo7 Templates

Where Models Live. Eike Stepper. SAP Modeling Meeting Wednesday, January 27, 2010

with openarchitectureware

openarchitectureware 4.1 An introduction

project in an industrial context

Quick tour of the Test and Performance Tools Platform (TPTP) Valentina Popescu IBM Tivoli TPTP AG Lead

Dominique Blouin Etienne Borde

MODEL-DRIVEN ENGINEERING FOR IMPLEMENTING THE ISO SERIES OF INTERNATIONAL STANDARDS

Ecore to Genmodel case study solution using the Viatra2 framework

A Model-Driven Framework for Domain Specific Process Design and Governance

Model Driven Engineering (MDE) and Diagrammatic Predicate Logic (DPL)

Perfect for the Enterprise

JBPM Course Content. Module-1 JBPM overview, Drools overview

Building applications in less time. Eclipsecon France 2018

Static analysis and testing of executable DSL specification

Christian Doppler Laboratory

Introduction to OpenArchitectureWare

Eclipse 4. Brian de Alwis. Abstract

INF5120 Modelbased System development

Graphical Editors 2. GMF. Budapes( Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Modeling tools go up to the cloud... Mélanie Bats - Pierre-Charles David - Sirius Tech Lead

Kai Tödter Siemens Corporate Technology

INF5120 Modellbasert Systemutvikling Modelbased System development

AADL Graphical Editor Design

Scaling Xtext. Lieven Lemiengre

Goulwen Le Fur Obeo EclipseCon NA 2014

Eclipse-based Embedded Engineering Environments Inspired by AUTOSAR

eclipse rich ajax platform (rap)

Kermeta tutorial. How to create a metamodel. François Tanguy, Didier Vojtisek. Abstract

Lessons learned from building Eclipse-based add-ons for commercial modeling tools

Data generation framework for EMF models. Igor Palkoci

Framework for Constructing Context- Specific Migration Methods for Test Cases

Lesson learned from using EMF to build Desktop & Web Applications. Ludwigsburg, Oct

Composition and concurrent execution of heterogeneous domain-specific models

INF5120 Modellbasert Systemutvikling Modelbased System development

Xtext. Introduction and Real World Samples. Hendrik Bünder, itemis AG. itemis AG

EMFT Mint (Incubation) 0.7 Ganymede Simultaneous Release Review

Budapes( Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék. Code Genera*on

Planned Review Date: June 10, 2009 Communication Channel: eclipse.tools.emf Dave Steinberg and Ed Merks

Rich Client GUI's with RCP & RAP

BLU AGE 2009 Edition Agile Model Transformation

MDT OCL Goes Generic. Introduction to OCL and Study of the Generic Metamodel and API. Christian W. Damus IBM Rational Software OCL Committer

EMF Temporality. Jean-Claude Coté Éric Ladouceur

Towards Generating Domain-Specific Model Editors with Complex Editing Commands

Kermeta. in compiled mode

From a lot of Boxes to a lot of Words

Model transformations. Model transformations. Model transformations. Model transformations

Implementing the Interactive Television Applications Case Study using Epsilon

A Case Study in Combining Formal Verification and Model-Driven Engineering

Sequence Diagram Generation with Model Transformation Technology

Integrating TwoUse and OCL- DL

The Next Generation of Eclipse: e4. Mike Milinkovich Executive Director Eclipse Foundation

How to apply EMF model refactorings

Generation of Large Random Models for Benchmarking

Language engineering and Domain Specific Languages

Model-Driven Engineering (MDE) Lecture 1: Metamodels and Xtext Regina Hebig, Thorsten Berger

Transcription:

Eclipse Modeling Framework (EMF) Paweł Żalejko

Agenda Model-Driven Development What is EMF? EMF demo - hello world EMF demo - command stack & adapters EMF demo - data binding & validation EMF demo - generating UI editors 2 15-11-27

Agenda Model-Driven Development What is EMF? EMF demo - hello world EMF demo - command stack & adapters EMF demo - data binding & validation EMF demo - generating UI editors 3 15-11-27

Model-Driven Development 4 15-11-27

Model-Driven Development 5 15-11-27

Model-Driven Development Clear visibility Flexibility(models can be adjusted) Fast & cost-effective Leads to increased quality Enforces architecture Let s programmers focus on the hard stuff 6 15-11-27

Agenda Model-Driven Development What is EMF? EMF demo - hello world EMF demo - command stack & adapters EMF demo - data binding & validation EMF demo - generating UI editors 7 15-11-27

What is EMF? Modeling framework Code generator Framework for building tools and applications based on a structured data model 8 15-11-27

EMF - frameworks Persistence CDO, EMFStore, Teneo UI frameworks EMF Forms Graphical Modeling GMF, Sirius Textual Modeling Xtext And much more... https://eclipse.org/modeling/ 9 15-11-27

Agenda Model-Driven Development What is EMF? EMF demo - hello world EMF demo - command stack & adapters EMF demo - data binding & validation EMF demo - generating UI editors 10 15-11-27

EMF demo - hello world Create a model Eclipse Modeling IDE Create a new Ecore Modeling Project Generate the code Generate an EMF editor 11 15-11-27

EMF ecore & genmodel Two files: ecore - contains the information about the defined classes genmodel - contains information for the code generation 12 15-11-27

http://www.eclipse.org/emf/2002/genmodel documentation copyright body suppressedgetvisibility suppressedsetvisibility... 13 15-11-27

EMF containment vs non containment 14 15-11-27

Object vs EObject EObject is the root of all modeled objects It provides support for the behaviors and features common to all modeled objects: eclass eget eset... Reflection eresource econtainer econtents... Content 15 15-11-27

EMF Ecore Model (meta) model of models : EClass EStructuralFeature EAttribute EReference EOperation EDataType 16 15-11-27

Agenda Model-Driven Development What is EMF? EMF demo - hello world EMF demo - command stack & adapters EMF demo - data binding & validation EMF demo - generating UI editors 17 15-11-27

EMF demo - command stack & adapters Editing objects using commands Undo/redo Adapters as change listeners 18 15-11-27

Agenda Model-Driven Development What is EMF? EMF demo - hello world EMF demo - command stack & adapters EMF demo - data binding & validation EMF demo - generating UI editors 19 15-11-27

EMF demo - data binding & validation Binding a model to UI controls DataBindingContext IObservableValue UpdateValueStrategy Validating inputs Java Object Constraint Language (OCL) 20 15-11-27

Agenda Model-Driven Development What is EMF? EMF demo - hello world EMF demo - command stack & adapters EMF demo - data binding & validation EMF demo - generating UI editors 21 15-11-27

EMF demo - generating a UI editor A simple form-based editor created using EMF Forms framework UI: JavaFX SWT Eclipse RAP http://www.eclipse.org/ecp/emfforms/ 22 15-11-27

EMF demo - generating a Sirius-based editor Sirius: Sirius is an Eclipse project which allows you to easily create your own graphical modeling workbench by leveraging the Eclipse Modeling technologies, including EMF and GMF. https://eclipse.org/sirius/overview.html 23 15-11-27

Thanks! https://eclipse.org/modeling/ https://eclipse.org/modeling/emf/ http://www.eclipse.org/modeling/emf/docs/ http://www.eclipse.org/ecp/emfforms/ https://eclipse.org/sirius/overview.html 24 15-11-27