Using GMF and M2M for Model- Driven Development



Similar documents
Model-Driven Development - From Frontend to Code

Design of Visual Repository, Constraint and Process Modeling Tool based on Eclipse Plug-ins

Concepts for the model-driven generation of graphical editors in Eclipse by using the Graphiti framework

Developer documentation of VCE behavioral editor. Krzysztof Nirski

UML PROFILING AND DSL

Concept and Implementation of a Graphical Editor for Composite Application Templates

JustClust User Manual

Eclipse BPMN Modeler Introducing Intalio Designer

A QUICK OVERVIEW OF THE OMNeT++ IDE

DIA Creating Charts and Diagrams

Acrobat PDF Forms - Part 2

Gephi Tutorial Visualization

Sharing Files and Whiteboards

On the Papyrus USE: Usage, Specialization and Extension

Introduction à EMF Eclipse Modeling Framework

Writing Use Case Scenarios for Model Driven Development

OpenEmbeDD basic demo

VICCI. The Eclipse Modeling Framework (EMF) A Practical Introduction and Technology Overview. Dipl.-Inf. Christoph Seidl

CATIA Drafting TABLE OF CONTENTS

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Customizing LANsurveyor Maps

Advanced Presentation Features and Animation

MICROSOFT OUTLOOK 2010 WORK WITH CONTACTS

Designing portal site structure and page layout using IBM Rational Application Developer V7 Part of a series on portal and portlet development

Microsoft Expression Web

TUTORIALS. version 17.0

CREATING EXCEL PIVOT TABLES AND PIVOT CHARTS FOR LIBRARY QUESTIONNAIRE RESULTS

During the process of creating ColorSwitch, you will learn how to do these tasks:

This document covers version of BPMN2 Modeler, published November 15, 2013.

Creating Forms with Acrobat 10

Fireworks CS4 Tutorial Part 1: Intro

KOMPOZER Web Design Software

StarUML Documentation

1.5 MONITOR. Schools Accountancy Team INTRODUCTION

KB COPY CENTRE. RM 2300 JCMB The King s Buildings West Mains Road Edinburgh EH9 3JZ. Telephone:

Gmail: Signatures, labels, and filters

Generating Edit Operations for Profiled UML Models

Creating Hyperlinks & Buttons InDesign CS6

Recreate your Newsletter Content and Layout within Informz (Workshop) Monica Capogna and Dan Reade. Exercise: Creating two types of Story Layouts

Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool

DWGSee Professional User Guide

PowerPoint 2007: Animations Contents

1. Visual Paradigm for UML

Practical Eclipse Rich Client Platform Projects

Baseball Playbook Manual

Microsoft PowerPoint 2008

Sharing Presentations, Documents, and Whiteboards

Jump-Start Tutorial For ProcessModel

Creating tables of contents and figures in Word 2013

2. How to Use SMART Board as a Projector and Whiteboard

Creating a Flyer with Word

Koen Aers JBoss, a division of Red Hat jbpm GPD Lead

Business Objects Enterprise version 4.1. Report Viewing

Updox, LLC

Projekt Magazin Review: Microsoft Project Add-ons for Project Management Charts GRANEDA Dynamic

EMC Documentum Composer

Web Development Tutorials Web Design: WiX. Tutorial 1-3a

Software User's Guide

Astah. Reference Manual. Astah Professional Astah UML. Ver Copyright Change Vision, Inc. All rights reserved.

ESRI China (Hong Kong) Limited

SPECIFICATION OF VISUAL INSTRUCTIONAL DESIGN LANGUAGES DEDICATED TO LEARNING MANAGEMENT SYSTEMS

CA ERwin Data Modeler. Implementation Guide

MICROSOFT OUTLOOK 2010 READ, ORGANIZE, SEND AND RESPONSE S

Tantalis GATOR Expanded Image Help Guide

WHAT S NEW IN OBIEE

Community Edition. Master Data Management 3.X. Administrator Guide

Microsoft Word 2011: Create a Table of Contents

Microsoft Office Access 2007 Basics

Eclipse 4 RCP application Development COURSE OUTLINE

Using JCPS Online for Websites

Content Manager User Guide Information Technology Web Services

Smooks Dev Tools Reference Guide. Version: GA

Content Author's Reference and Cookbook

Microsoft Word 2010 Tutorial

What s New V 11. Preferences: Parameters: Layout/ Modifications: Reverse mouse scroll wheel zoom direction

Requirements Management with Enterprise Architect

Enterprise Application Deployment: Amodel driven approach

WebSphere Business Monitor V6.2 KPI history and prediction lab

Epson Brightlink Interactive Board and Pen Training. Step One: Install the Brightlink Easy Interactive Driver

Styles, Tables of Contents, and Tables of Authorities in Microsoft Word 2010

Navigating Microsoft Word 2007

Microsoft Office PowerPoint Creating a new presentation from a design template. Creating a new presentation from a design template

Eclipse Development. using the Graphical Editing Framework and the Eclipse Modeling Framework. Front cover. ibm.com/redbooks

SIMATIC. WinCC V7.0. Getting started. Getting started. Welcome 2. Icons 3. Creating a project 4. Configure communication 5

NIS-Elements: Using Regions of Interest (ROIs) & ROI Statistics

Infor LN Service User Guide for Service Scheduler Workbench

PTC Integrity Eclipse and IBM Rational Development Platform Guide

KFUPM. Web Content Management System powered by SharePoint

Microsoft Word 2013 Tutorial

Release Date: February, AccuProcess Inc. Chicago, Illinois

IBM Tivoli Software. Document Version 8. Maximo Asset Management Version 7.5 Releases. QBR (Ad Hoc) Reporting and Report Object Structures

Menus and Toolbars: Using and customizing those common to all OpenOffice.org components

This is a preview of the book "QCAD - An Introduction to Computer-Aided Design (CAD)" QCAD. An Introduction to ComputerAided Design (CAD)

User s Guide The SimSphere Biosphere/Atmosphere Modeling Tool

MicroStrategy Analytics Express User Guide

Form Builder Manual. A brief overview of your website s Form Builder with screenshots.

Database Concepts (3 rd Edition) APPENDIX D Getting Started with Microsoft Access 2007

Copyright combit GmbH ; Rev All rights reserved.

You can make your own layout / theme for your PowerPoint project.

I ntroduction. Accessing Microsoft PowerPoint. Anatomy of a PowerPoint Window

Transcription:

Using GMF and M2M for Model- Driven Development Tatiana Fesenko, Borland Software Radomil Dvorak, Borland Software Bernd Kolb Markus Voelter

GMF Overview The Eclipse Graphical Modeling Framework (GMF) provides a generative component and runtime infrastructure for developing graphical editors based on EMF and GEF. Runtime Binds EMF & GEF Notation metamodel Designed for extensibility Generation (tooling) Models used to define graphics, tooling, mapping to domain Code generation targets runtime Promotes use of Domain-Specific Languages

GMF-Generated Diagram Editor Toolbar Domain Model Graphical Figures Diagram Property Sheet

GMF Generation overview

Develop Tooling Definition Palette Tool Groups Creation Tool

Develop Graphical Definition Nodes Connection Compartment Labels

Mapping Definition Audit & metric definitions Domain constraints Mapping model Domain model Tooling definition Graphical definition

Develop Mapping Definition Nodes Labels Compartment Connection

Create generator model «Create Generator Model...» Mapping model Generator Model Runtime options Print support Validation support Diagram persistence Code generation parameters Plug-in provider name Plug-in ID Package namespace

Generate diagram plug-in and run diagram «Generate Diagram Code» Run editor in new runtime workbench Generator model *.diagram

GMF Generation is iterative

Tooling Definition: Beautiful icons Set Beautiful icons Delete default image Create icon image Add 'Children' tool group Create EntryAction Create ExitAction

Graphical Definition: Intelligent figures Turn StartStateFigure into Ellipse, its background is black Turn StopState figure into the Ellipse containing inner Ellipse. Create Figure Descriptor for StartStateName, create Label inside it. Create DiagramLabel referencing it. The label became external. Repeat with StopStateName. Set Arrow decoration for Transition Create PolylineDecoration 'ConnectorTarget' in Figure Gallery. Set TemplatePoints (-2,-1), (0,0), (-2,1). Select Polyline Connection TransitionFigure inside Figure Descripor TransitionFigure. Set choose 'ConnectorTarget' for TargetDecoration property.

Graphical Definition: SimpleState Turn SimpleStateFigure into rounded rectangle Add rectangles for Entry and Exit Action compartments inside SimpleAction. Create compartments for Entry and Exit Actions. Choose SimpleStateFigure in 'Figure' property,reference them to just created rectangles in 'Accessor' property.

Mapping Definition: Feature Initializers and OCL Constraints Automatically set default name for elements Create feature Seq Initializer for SimpleState Node Mapping. Create Feature Value Spec. Choose 'name' feature, set 'State' to value. Repeat with Start/Stop States Event-triggered transition Create additional Link Mapping for Transition. Set Constraints in order to distinguish links. Create java FeatureValueInitializer. We will implement it to create and reference Event automatically.

Mapping Definition: Simple State Entry/Exit Actions compartment Mapping Distinguish Entry and Exit actions Set View Pattern 'ENTRY/{0}' for the MessageFormat parser of EntryAction Set View Pattern 'EXIT/{0}' for the MessageFormat parser of ExitAction

Generator model: Code generation parameters Make Entry EditPart class names intelligible Rename LabelEditPart to EntryActionEditPart Repeat with Labels2EditPart (EntryActionEditPart)

Generated plugin: Code modification Generated code can be changed to implement domain-specific requirements Changed code is marked with 'generated NOT' tag. Modify EntryActionCreateCommand and ExitActionCreateCommand in order to create them inside StateMachine and be referenced by SimpleState Implement java FeatureValueInitializer for EventTriggeredTransition in ElementInitializers class.

StateMachine Diagram: Discover GMF Runtime Features Tool palette and overview Layout and selection tools Diagram image export (svg, bmp, jpeg, gif) Tabbed properties view Font and color options for selected element Link routing and style options Animated zoom and layout Diagram printing

Validation

Validation: Define rules Validation Rules are written in OCL They defined in GMF Map model. State has 'States should have unique names' validation rule Rules for source and target of a Transition 'StopState cannot be a source for a transition' for StopState 'StartState cannot be a target for a transition' for Transition

Enable and Run Validation Make validation enabled in GMFGen model: 'Validation Enabled' of GenDiagram is 'true' 'Validation Decorators' is 'true' 'Validation Provider Priority' is 'Medium' Validation runs on diagram action: Call 'Validate' action from the 'Diagram' tool menu.

Summary We created GMF-generated diagram editor for the StateMachine model. It was quick and easy Using GMF is an iterative process. We can modify selected tooling models and enjoy improvements in regenerated diagram Code GMF produces can be customized. We modified the generated code

Using GMF and M2M for Model-driven development Thank you! Questions? http://www.eclipse.org/gmf