Diagram Definition Third OMG/Eclipse Symposium 25 March 2012



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

Using UML Part One Structural Modeling Diagrams

Designing a Semantic Repository

A Tool Suite for the Generation and Validation of Configurations for Software Availability

Generating Enterprise Applications from Models

Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool

Joint Tactical Radio System Standard. JTRS Platform Adapter Interface Standard Version 1.3.3

Towards a Common Metamodel for the Development of Web Applications

Co-Creation of Models and Metamodels for Enterprise. Architecture Projects.

Best of Both Worlds - A Mapping from EXPRESS-G to UML

Such As Statements, Kindergarten Grade 8

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

MODULE 5 DATA FLOW DIAGRAMS

Common Warehouse Metamodel (CWM): Extending UML for Data Warehousing and Business Intelligence

Model-Driven Development - From Frontend to Code

A Common Metamodel for Code Generation

i. Node Y Represented by a block or part. SysML::Block,

Organization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics:

SoaML Modeling and Designing Models

Requirements Exchange: From Specification Documents to Models

Tool Support for Model Checking of Web application designs *

A technical discussion on modeling with UML 06/11/03 Entity Relationship Modeling with UML

Visual Analysis Tool for Bipartite Networks

Bruce Silver Associates Independent Expertise in BPM

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

The BPM to UML activity diagram transformation using XSLT

Communication Diagrams

Java 6 'th. Concepts INTERNATIONAL STUDENT VERSION. edition

UML FOR OBJECTIVE-C. Excel Software

Model Simulation in Rational Software Architect: Business Process Simulation

UML PROFILING AND DSL

Lecture 12: Entity Relationship Modelling

Modeling the User Interface of Web Applications with UML

Compliance and Requirement Traceability for SysML v.1.0a

Towards a Generic Layout Composition Framework for Domain Specific Models

Hierarchy and Tree Visualization

What is a metamodel: the OMG s metamodeling infrastructure

An Architecture to Support Model Driven Software Visualization

A Framework of Model-Driven Web Application Testing


Modelling the Railway Control Domain rigorously with a UML 2.0 Profile

SYSML PLUGIN. version user guide

Mapping between Levels in the Metamodel Architecture

Software Engineering & Architecture

Software Visualization and Model Generation

Towards Integrating Modeling and Programming Languages: The Case of UML and Java

WILDFLOWER RESTORATION PROJECT. Experimental Design and Data Collection Guide

Object-Process Methodology as a basis for the Visual Semantic Web

Using UML to Construct a Model Driven Solution for Unified Access to Disparate Data

Services Modeling Using BPMN It s Not Just Boxes and Arrows Anymore! - Presented By Lloyd Dugan September 11, 2013

UML Modeling of Five Process Maturity Models

Model Driven Business Architecture. Pete Rivett CTO, Adaptive

OMG releases BPMN What's changed?

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

Object Oriented Programming. Risk Management

How To Teach Object Oriented Programming At An Introductory Level Course

WebSphere Business Monitor

INTRODUCTION TO BUSINESS PROCESS MODELING NOTATION BPMN 1.2 AND BPMN 2.0

Design and UML Class Diagrams

Modeling Practices in Open Source Software

Business Process Standards and Modeling

Fundamentals of Java Programming

Australian Recordkeeping Metadata Schema. Version 1.0

Lab Manual: Using Rational Rose

Conceptual Level Design of Semi-structured Database System: Graph-semantic Based Approach

An eclipse-based Feature Models toolchain

Information Technology Topic Maps Part 2: Data Model

2 nd UML 2 Semantics Symposium: Formal Semantics for UML

Process Modeling Notations and Workflow Patterns

Java (12 Weeks) Introduction to Java Programming Language

Increasing Development Knowledge with EPFC

Extend Table Lens for High-Dimensional Data Visualization and Classification Mining

Study of GML-Based Geographical Data Visualization Strategy

Supporting Service Design Decisions

UML Class Diagrams. Lesson Objectives

Change Pattern-Driven Traceability of Business Processes

ReqXChanger Closing the Gap between Requirements and Modelling

Definition and Generation of Data Exchange Formats in AUTOSAR

Using UML Part Two Behavioral Modeling Diagrams

VARIABILITY MODELING FOR CUSTOMIZABLE SAAS APPLICATIONS

Semantic Object Language Whitepaper Jason Wells Semantic Research Inc.

Computing Concepts with Java Essentials

What are the used UML diagrams? A Preliminary Survey

Generating Edit Operations for Profiled UML Models

Automatic Generation Between UML and Code. Fande Kong and Liang Zhang Computer Science department

Business Process Measures

SUPPORTING KNOWLEDGE WORKERS: CASE MANANGEMENT MODEL AND NOTATION (CMMN)

UML Modeling for CIM

UML Modeling Guidelines

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Winery A Modeling Tool for TOSCA-based Cloud Applications

TIBCO Spotfire Business Author Essentials Quick Reference Guide. Table of contents:

Fireworks CS4 Tutorial Part 1: Intro

Maged Elaasar

Integration of Microsoft Visio and Eclipse Modeling Framework Using M3-Level-Based Bridges

Service Design: Using a GSRM Meta-Model. Ed Buchinski Treasury Board of Canada Secretariat UN/CEFACT TBG-19 Oct. 5 th, 2006

Modeling Service Oriented Architectures of Mobile Applications by Extending SoaML with Ambients

Component visualization methods for large legacy software in C/C++

Exporting from WebSphere Business Modeler Unit 23

History OOP languages Year Language 1967 Simula Smalltalk

Transcription:

Diagram Definition Third OMG/Eclipse Symposium 25 March 2012 Maged Elaasar, melaasar@ca.ibm.com Senior Software Engineer IBM Rational Modelling Tools

Outline The Need for Diagram Definition Existing Diagram Definition Approaches Diagram Definition Specification UML Class Diagram Definition Case Study Interchanging an Example Class Diagram Future Work 2

The Need for Diagram Definition Graphical modeling languages are defined with their: Abstract syntax: formally using MOF Concrete graphical syntax: informally using text and (example) figures Formal diagram definition is needed Enables interchange of modeling diagrams among tools Enables consistent rendering of diagrams by tools Enables consistent interpretation of diagrams by users 3

Existing Diagram Definition Approaches Diagram Interchange Metamodel Interchange Syntax Graphical syntax Target Language Diagram Interchange (DI) 1.0 (deprecated) Fixed Informal Informal mainly UML Graphical Modeling Framework (GMF) Notation Extensible Formal (using code) Formal (fixed patterns) Any Diagram Definition (DD) 1.0 Extensible Formal (using metamodel) Formal (flexible) Any 4

Diagram Definition (DD) Specification DD defines two standard metamodels Diagram Interchange (DI): enables defining the diagram interchange syntax Diagram Graphics (DG): enables defining the concrete graphical syntax 5

Diagram Definition Architecture M3 spec MOF Mapping Language MOF Abstract Syntax Diagram Syntax Concrete Syntax DI M2 spec AS AS DI CS Mapping Specification DG M1 user Model Diagram CS Mapping Graphics Model (interchanged) Controller (executed) View (rendered) Instantiates DD Spec DI : Diagram Interchange AS: Abstract Syntax Specializes References Language Spec DG: Diagram Graphics CS : Concrete Syntax 6

Diagram Interchange (DI) Defines diagram interchange syntax (what users can control) Examples: diagram layout, appearance options, notational options Provides basic primitives that can be extended for each language 7

Diagram Graphics (DG) Defines concrete graphical syntax (what language specifications control) Examples: shape and line notations for each abstract syntax element Provides extensive 2D graphics primitives (similar to SVG) 8

UML Class Diagram Definition: an Example We validated the DD architecture on UML DI M2 UML UML DI UML CS Mapping DG We used a subset of the UML class diagram Three classifiers: Class, Interface and Datatype Three relations: Association, Generalization and InterfaceRealization 9

UML Diagram Interchange Metamodel design principles: Avoid interchanging redundant info with the referenced model Avoid interchanging purely stylistic info (e.g., colors) Interchange simple layout info (bounds / waypoints relative to diagram) Interchange overlapping order (using ordered collections) Keep the inheritance hierarchy small (mixed bags of optional properties) 10

UML Concrete Syntax Mapping UML DI Elements to Graphics Map all diagram to graphics Map all diagram elements to graphics Map a shape to a group {a graphic, labels and compartments} Map an edge to a group {a poly line and labels} Map a compartment to a group {rectangle and nested elements} Map a label to a text with appropriate string 11

UML Concrete Syntax Mapping: UML Elements to Strings Define signature of an element Define signature of an interface Define signature of a property 12

UML Concrete Syntax Mapping: UML Element to Graphics Map a class a rectangle Map an interface to a rectangle Map an interface to a circle Define an interface realization line style Define an interface realization line marker Map an interface realization to a poly line 13

Diagram Definition Export Testing Architecture What tools provide today Model Diagram Export Export UML Model UML DI Model Concrete Syntax Mapping DG Model Rendering To Graphics SVG Image Tool-Specific Format Standard Format RSA M2M M2M M2T Tool Transformation Transformation Transformation 14

Interchanging an Example Class Diagram: an Experiment RSA Diagram Exported Diagram 15

Limitations and Future Works normative mapping from DG to SVG (needed to bootstrap DD) Graphical mapping language (Graphical BNF) Full UML DD (UML DI as a first step) 16

Conclusion Diagram definition is needed for consistent interchange and interpretation Diagram definition (DD) v1.0 is a new specification to address this need. We validated DD with an example involving a subset of UML class diagram Defined UML DI metamodel Defined a mapping from UML DI metamodel to DG metamodel Defined a tool architecture for testing DD (export) Carried an experiment for interchanging an example class diagram successfully 17

More Information Elaasar, M; Labiche, Y.: Diagram Definition: a Case Study with the UML Class Diagram. MoDELS'11, LNCS, vol. 6981, pp. 364-378, 2011. http://www.springerlink.com/content/y7h4820238438014/ 18

Thank You Questions? Maged Elaasar, melaasar@ca.ibm.com 19