® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar,...

16
® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM [email protected] ADTF, OMG June 2009, San Jose, Costa Rica

Transcript of ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar,...

Page 1: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

®

IBM Software Group

© 2006 IBM Corporation

Diagram Definition: Initial Submission

Maged Elaasar, [email protected]

ADTF, OMG June 2009, San Jose, Costa Rica

Page 2: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

2

Agenda

DD Status DI Metamodel

Example for UML

DI Refinements DI more abstractions

DI concrete classes

DI extensibility

DI interchange format

DI common properties

DI style sheets

DG Discussions

Page 3: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

3

Problem Statement

1. Diagram Interchange How diagrams should be represented and persisted (diagram syntax)

Changes

Connectors association is from View to Connector

Connectors are owned by lowest common parent of the source and target (constraint)

Waypoints are ordered and non unique

Master style sheet (ordered)

Change StyleRule.context to something different from View.context

Incorporate application style sheets

2. Diagram Graphics How diagrams should be rendered to graphics (concrete syntax)

Page 4: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

4

Proposed Diagram Interchange (DI)

MOF

DI

DSL

M3

M2

M1

DSL DI

user Model Diagram

AbstractSyntax

DiagramSyntax

spec

spec Diagram Interchange (DI) (replaces

current DI) Provides an abstract metamodel that

defines diagram interchange syntax

Domains extend DI using inheritance to define domain specific DI

Diagrams are interchanged as instances of the domain-specific DI

Is Instance of

Inherits

References

Page 5: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

5

Diagram Interchange (DI)

Page 6: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

6

UML Class Shape Example

Node

Diagram

Node

Node

xy

width

ratio

ratio

-showTitle-collapsed-visible

height

-showTitle-collapsed-visible

Page 7: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

7

UML Class Shapes

Page 8: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

8

UML Class Connectors

Page 9: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

9

DI More Abstractions

Try to have a crack at it but it is not critical (not show stopper)

Could define them as concrete to allow creating adhoc diagrams

Define common properties as mixin types in separate DI packages

Page 10: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

10

DI Extensibility

Profiles Allow subsetting, redefinition of base properties in stereotypes

Clarify what types other than stereotypes are allowed in profiles and what it means

What DD needs to do to get access to profiles (package merge?)

Page 11: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

11

DI Interchange Format

XMI problems XMI to XSD mapping is subject to options that individual specs did not agree to set

XMI to XSD mapping is not likeable and creates problems in XSD tools/communitiies

Propagate these requirements to XMI RTF

BPMN2 should address this problem on their own for now

Page 12: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

12

DI Style Sheets

Page 13: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

13

Proposed Diagram Graphics

Diagram Graphics (DG) Provides an abstract metamodel that defines diagram graphics syntax

Provides a way to map the abstract syntax (DSL+DI) to the graphical syntax (DG)

Domains extend DG to create domain specific DG and its mapping from their DSL+DI

DI

DG Graphics

DSL

DG Mapping

Model(abstract syntax)

Controller(mapping)

View(concrete syntax)

Page 14: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

14

Proposed Diagram Definition Architecture

MOF

DI

UML

M3

M2

M1

UML DI

DG

UML DG

user Model Diagram

AbstractSyntax

DiagramSyntax

DiagramGraphics

spec

spec

RenderedGraphics

Diagram Graphics (DG) Provides an abstract metamodel

that defines diagram graphics syntax and how it maps to the abstract syntax (DSL+DI)

Domains extend DG to create domain specific DG metamodel

Is Instance of

Inherits

References

Input

Page 15: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

15

Diagram Graphics (DG) – Declarative Graphics

Classifier Figure

Label

Label

Diagram Figure

Compartment Figure

Label [*]

XY Layout

Toolbar Layout

Toolbar Layout

Label

Compartment Figure

Label [*]

Toolbar Layout

Label

ratio

ratio

ratio

bounds

Page 16: ® IBM Software Group © 2006 IBM Corporation Diagram Definition: Initial Submission Maged Elaasar, IBM melaasar@ca.ibm.com ADTF, OMG June 2009, San Jose,

IBM Software Group | Rational software

16

Diagram Graphics (DG) – Declarative Map

Model(abstract syntax)

Controller(map)

View(concrete syntax)