Using Eclipse in MIS Research

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

Acceleo Galileo Simultaneous Release

ECLIPSE MODELING PROJECT

Eclipse Modeling Framework (EMF) Paweł Żalejko

Papyrus: Advent of an Open Source IME at Eclipse (Redux)

Model Driven Engineering : Basic Concepts

GMF 2.0 Europa Simultaneous Release

The Galilean Moons of Eclipse

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

Introduction to MDE and Model Transformation

Comparing graphical DSL editors

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

INF5120 and INF9120 Modelbased System development

ERIC UMUHOZA. Curriculum Vitae et Studiorum November 5, 2017

EGF Creation Review. Benoît Langlois - Thales/TCS/EPM. April 22, 2009

Model-Driven Development of Simulation-Based System Design Tools

ADT: Eclipse development tools for ATL

Eclipse Automotive Working Group

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

GMF Tooling 3.0 Vision, Architecture, Roadmap

MAENAD Modeling Workbench

Orccad, a Model Driven Architecture and Environment for Real-Time Control. Soraya Arias Florine Boudin Roger Pissard-Gibollet Daniel Simon

MAEANAD Modeling Workbench

Object Constraint Language (MDT OCL) 1.3 Galileo Simultaneous Release Review

On the link between Architectural Description Models and Modelica Analyses Models

Introduction to OpenArchitectureWare

The Eclipse Modeling Framework and MDA Status and Opportunities

Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010)

BLU AGE 2009 Edition Agile Model Transformation

EAXML Demonstration Platform on Artop/Sphinx.

Dominique Blouin Etienne Borde

A Formal Approach to Modeling and Model Transformations in Software Engineering

Modellierung operationaler Aspekte von Systemarchitekturen. Master Thesis presentation. October 2005 March Mirko Bleyh - Medieninformatik

Static analysis and testing of executable DSL specification

EATOP: An EAST-ADL Tool Platform for Eclipse

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

Sequence Diagram Generation with Model Transformation Technology

ATHABASCA UNIVERSITY RULE ENHANCED BUSINESS PROCESS MODELING OF SERVICE ORIENTED ARCHITECTURES LUIS ROCHA. A project submitted in partial fulfillment

Extensible Graphical Editors for Palladio

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

Wikileaking Eclipse Modeling - Spilling the beans on how industry uses EMF based tooling successfully! Ronan Barrett, Ericsson

Introduction to Dependable Systems: Meta-modeling and modeldriven

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

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

KNIME Extension Points. Tobias Kötter University of Konstanz

Supporting Modeling in the Large in Fujaba

ATESST2 D4.2.1 Grant Agreement

Christian Doppler Laboratory

Model-Driven Iterative Development of 3D Web-Applications Using SSIML, X3D and JavaScript

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

Dominique Blouin Etienne Borde

with openarchitectureware

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

DRESDEN OCL MANUAL FOR INSTALLATION, USE AND DEVELOPMENT. Claas Wilke, Michael Thiele, Björn Freitag, and Lars Schütze

Moving From Studio to Atelier. Wouter Dupré Sales Engineer

Implementing the Unifying Meta-Model for Enterprise Modeling and Model-Driven Development: An Experience Report

TOPCASED. Current status

Deliverable D5.1.1 MAENAD Modeling Workbench

A Metamodel independent approach for Conflict Detection to support distributed development in MDE. Mostafa Pordel A THESIS

Model-based Analysis of Source Code Repositories

Model Driven Engineering (MDE)

Metamodeling and Metaprogramming Seminar

Towards Automatic Generation of Web-based Modeling Editors

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

Eclipse 4.0. Jochen Krause EclipseSource

SCA Tools project Creation Review. July


INTRODUCTION. Chapter #1

Bachelor of Engineering, IT Thesis

Two Basic Correctness Properties for ATL Transformations: Executability and Coverage

AADL Graphical Editor Design

Coral: A Metamodel Kernel for Transformation Engines

Outline. Tutorial III. Eclipse. Basics. Eclipse Plug-in Feature

University of Mannheim

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management

Model Driven Ontology: A New Methodology for Ontology Development

IP Log for modeling.mdt.modisco

MDSE USE CASES. Chapter #3

Modeling with UML, with semantics

Introduction To Model-to-Model Transformation

EMF Europa Simultaneous Release

How to generate new EMF model refactorings using Java code

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

Language engineering and Domain Specific Languages

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

EMFT Mint (Incubation) 0.7 Ganymede Simultaneous Release Review

Migration to E4. Eclipse Con France 2016

Modeling and Assessment of Safety Critical Systems

New and Noteworthy. Peter Friese Bernd Kolb

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language

TOPCASED. Toolkit In OPen source for Critical Applications & SystEms Development

A MOF based Meta-Model and a Concrete DSL Syntax of IIS*Case PIM Concepts

First Steps in RCP. Jan Blankenhorn, WeigleWilczek GmbH, Stuttgart, Germany. February 19th, 2009

Runtime Model Based Approach to Smart Home System Development

BPS79- Sample Reports View

Comparison and merge use-cases from practice with EMF Compare

Generation of Web-based Prototypes for Business Applications

Small is Beautiful Building a flexible software factory using small DSLs and Small Models

Index. Symbols. /**, symbol, 73 >> symbol, 21

INF5120 Modelbased System development

Transcription:

Using Eclipse in MIS Research

GENERAL REMARK ECLIPSE and ECLIPSE PLUG- INS are very useful and powerful in the context of RESEARCH and EDUCATION but are probably not suited for developing commercial tools.

Contents Eclipse EMF plug- in GMF plug- in GraphiL plug- in Acceleo Plug- in Sirius plug- in Eclipse OCL plug- in M2M and M2T Ugent Modelling Experiments Ugent GitHub

Eclipse Integrated development environment (IDE) Highly modular applicalon consislng of hundreds of plug- ins Standard IDE for java programs but plug- ins exist for C, C++, You can also define your own plug- ins which extend your own eclipse environment Be careful with version

Eclipse Plug- in Project: Key files META- INF/MANIFEST.MF: describes plug- in dependencies, version and name Plugin.xml: declares what extensions this plug- in provides to the eclipse runlme build.properles contains informalon about the resources (images, properles files, ) that need to be made available to the plug- in.

Eclipse DemonstraLon Plug- in Hello Word Eclipse Plug- in Used extension points org.eclipse.ui.handlers è adds aclon when clicking on menu org.eclipse.ui.menus è adds 2 menu items Ontology suggeslon Plug- in Extends BPMN modeler with different views Ontology view SuggesLon view Ontology property view

Eclipse Run ConfiguraLons Script for launching program Determine Environment variables System properles Command line arguments Are not connected to specific projects Very important, but source of frustralon Select which run configuralon needs to executed while running a project

Eclipse RCP Rich Client Pla]orm(RCP) applicalons Eclipse plugins become standalone applicalons Introduced by Eclipse 3.0 is the minimal set of plug- ins needed to build a pla]orm applicalon with a UI Cheetah Experiments are Eclipse RCP applicalons

Eclipse 4.0 Must make it easier to control user interface of eclipse RCP applicalons a model- based user interface and a new CSS- based declaralve mechanism for applicalon styling. Interface is determined at design and run Lme by means of separate files: ApplicaLon.e4xmi and some css files.

References Eclipse 4 plug- in development by example beginner's guide / Alex Blewib è EBIB & Phd dropbox PracLcal Eclipse Rich Client Pla]orm Projects è Springerlink Eclipse modeling project : a domain- specific language toolkit / Richard C. Gronback. è EBIB

Contents Eclipse EMF plug- in GMF plug- in GraphiL plug- in Acceleo Plug- in Sirius plug- in Eclipse OCL plug- in M2M and M2T Ugent Modelling Experiments Ugent GitHub

Eclipse Modelling Framework (EMF) plug- in Plug- in for implemenlng meta- models Almost every OMG standard is linked to an Eclipse project which implements the proposed metamodel using EMF Models Ecore Language for specifying metamodels Subset of UML MOF Genmodel EMF generator model Model that is based on ecore model and allows crealng an editor for the ecore model

DemonstraLon EMF plug- in Ecore metamodel REA- EML Pla]orm Independent version è papers Pla]orm specific version è tool Genmodel REA- EML Editor REA- EML

References EMF : Eclipse Modeling Framework / Dave Steinberg è FEB library Eclipse Modeling Framework / Budinsky et al. è MIS Library hbp://www.eclipse.org/modeling/emf/docs/ Eclipse Modeling Project (EMP): hbp://www.eclipse.org/modeling/ Eclipse Model Development Tools (MDT) hbp://www.eclipse.org/modeling/mdt/

Experience EMF Stable framework Be careful with names of projects, packages, ecore elements Re- generalon of code is not always performed correctly if code is not deleted first Very useful to quickly test metamodel that you propose in your paper

Contents Eclipse EMF plug- in GMF plug- in GraphiL plug- in Acceleo Plug- in Siri plug- in Eclipse OCL plug- in M2M and M2T Ugent Modelling Experiments Ugent GitHub

Graphical Modelling Framework (GMF) Eclipse plugin for developing graphical modelling tools Code is generated based on Ecore model Genmodel Toolmodel Mappingmodel UML Tools for Eclipse is created with GMF

GMF DemonstraLon JOOLS EnLty RelaLonship Modeler is created with GMF

Useful GMF pointers Eclipse Modeling Project: A domain- specific Language Toolkit / Gronback è MIS Library hbp://wiki.eclipse.org/ Graphical_Modeling_Framework/ DocumentaLon

Experience GMF AutomaLc generalon of tool is impressive for standard modelling elements Tweaking things in the code is a nightmare because understanding the generated code is very difficult Mixing generated code with own code is possible but hard to control Requires knowledge programming design paberns

Contents Eclipse EMF plug- in GMF plug- in Graphi3 plug- in Acceleo Plug- in Siri plug- in Eclipse OCL plug- in M2M and M2T Ugent Modelling Experiments Ugent GitHub

Eclipse GraphiL Plug- in Eclipse plug- in build on top of GMF and EMF Focuses more on using extension points instead of crealng models that generate code Eclipse BPMN modeler is created with GraphiL

DemonstraLon GraphiL

References hbp://help.eclipse.org/kepler/index.jsp > GraphiL Developer Guide hbp://www.eclipse.org/graphil/ documentalon/

Experience GraphiL Easy to create graphical tools Less focus on model- driven development Requires knowledge Eclipse Extension Mechanism Less complex than GMF Future doub]ul because of Eclipse Siri

Contents Eclipse EMF plug- in GMF plug- in GraphiL plug- in Acceleo Plug- in Siri plug- in Eclipse OCL plug- in M2M and M2T Ugent Modelling Experiments Ugent GitHub

Eclipse Acceleo Plug- in code generator implemenlng the OMG's Model- to- text specificalon Part of Eclipse Modelling Project beo Model- driven Company

References Useful tutorial: hbp://wiki.eclipse.org/acceleo/ Geing_Started hbp://www.obeonetwork.com hbp://www.eclipse.org/acceleo/ hbp://www.obeo.fr/pages/acceleo/en

Experience Acceleo Easy to use for Model2Text because transformalons can be implemented using a trial and error approach Disadvantage: Introduces a new language for navigalng in model as alternalve for OCL

Contents Eclipse EMF plug- in GMF plug- in GraphiL plug- in Acceleo Plug- in Sirius plug- in Eclipse OCL plug- in M2M and M2T Ugent Modelling Experiments Ugent GitHub

Sirius Plug- ing Build on top of EMF and GMF Eclipse Acceleo: Very simple approach Start from ecore model + generated EMF poject Create RepresentaLon model for ecore model Load RepresentaLon Model in Sirius Model Development Environment allows crealng a view for instanlalon of the ecore model

DemonstraLon Sirius Show project with viewpoint specificalon Show Sirius Modelling Project

Experience Sirius Very new but hyped Easy to use Limited documentalon Supports easy crealon of different views for one meta- model

References hbp://www.eclipse.org/sirius/ Tutorial: hbp://www.eclipse.org/sirius/doc/

Contents Eclipse EMF plug- in GMF plug- in GraphiL plug- in Acceleo Plug- in Sirius plug- in Eclipse OCL plug- in Ugent Modelling Experiments Ugent MIS GitHub

Eclipse OCL Eclipse implementalon of OCL for EMF- based models Used by EMF to add OCL constraints to ecore model GMF to navigate within the model Used by Acceleo to navigate within the model Used by Sirius to navigate but other languages can also be used.

DemonstraLon OCL plug- in Add constraint to rea- eml.ecore Audit rules in UML_ER GMF project OCL navigalon in ugent.rea_eml.model2owl

Contents Eclipse EMF plug- in GMF plug- in GraphiL plug- in Acceleo Plug- in Sirius plug- in Eclipse OCL plug- in Ugent Modeling Experiments Ugent MIS GitHub

UGent Modelling Experiments Creates modelling experiment environment using Any kind of Eclipse Editor Cheetah plug- in Experiment workflow Wizards for queslons Possibility to store everything in the MIS database Tutorial integralon Logging aclons editors

DemonstraLon Experiment Nadia December 2013 Used Plug- ins Cheetah BPMN editor SuggesLon View plug- in which implements suggeslon generalon algorithms

Contents Eclipse EMF plug- in GMF plug- in GraphiL plug- in Acceleo Plug- in Sirius plug- in Eclipse OCL plug- in M2M and M2T Ugent Modelling Experiments Ugent MIS GitHub

Github web- based hoslng service for somware development projects Uses Git revision control system allows tracking changes allows easy sharing between group members Allows working together on same project Synchronize using local Github client

Ugent MIS Github Ugent has own GitHub Enterprise: hbps://github.ugent.be/ Ugent MIS group has organisalon defined on this server hbps://github.ugent.be/mis Repository for all somware projects Ugent MIS group Contains examples of EMF editors Graphical Modelling tools Experiments Both Phd student and Master DissertaLon students should add their project in a repository

General Reference Model- driven Development Model- Driven SoEware Engineering in Prac3ce Synthesis Lectures on SoEware Engineering September 2012, 182 pages, (doi:10.2200/ S00441ED1V01Y201208SWE001) Marco Brambilla Politecnico di Milano, Italy Jordi Cabot École des Mines de Nantes, France Manuel Wimmer Vienna University of Technology, Austria