create a dsml : the sysml1.4 use case...sysml element type sysml new child bdd palette bdd expansion...

16
CREATE A DSML : THE SYSML1.4 USE CASE

Upload: others

Post on 21-Feb-2021

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

CREATE A DSML : THE SYSML1.4

USE CASE

Page 2: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

2/XX

Papyrus DSML Workshop June2015

Context

From the profile to the tooling

From the tooling to a DSML tool

Conclusion

AGENDA

Page 3: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

3/XX

Papyrus DSML Workshop June2015

• New version of an OMG norm [1]

• Current status in Papyrus :

Old framework

Forked version

Version 1.1 of the norm

• Goal

Latest version of the norm (1.4)

New Frameworks

• Palette

• Element types

• ViewPoint

• Expansion

CONTEXT

. 1 : http://www.omg.org/spec/SysML/1.4/Beta/

Page 4: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

4/XX

Papyrus DSML Workshop June2015

BOTTOM UP

FROM THE PROFILE TO THE

TOOLING

Page 5: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

5/XX

Papyrus DSML Workshop June2015

STEP BY STEP

Palette

Static profile Element

types

Graphical element

types Properties

Viewpoint configuration

New Child Menu

Packaging

Page 6: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

6/XX

Papyrus DSML Workshop June2015

FINAL ARCHITECTURE

Page 7: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

7/XX

Papyrus DSML Workshop June2015

MODEL ARCHITECTURE

UML element

type

Class Diagram

element type

BDD element

type

SysML element

type

Sysml New Child BDD Palette

Model

Block

Page 8: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

8/XX

Papyrus DSML Workshop June2015

• Process :

Missing a step by step document

Too many clicks

Missing an official/published generator

• Model too complex :

The « diagram element type model »

The palette

• It Works !!!

FEEDBACKS

Page 9: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

9/XX

Papyrus DSML Workshop June2015

• Read the specification

TOP DOWN : REFINE THE TOOLING

LET’S START THE REAL WORK

• Prune/Improve the Tooling

Page 10: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

10/XX

Papyrus DSML Workshop June2015

STEP BY STEP

Palette

Static profile Element

types

Graphical element

types

Properties Viewpoint configuration

New Child Menu

Packaging

Requirements

Viewpoint configuration

Packaging

Page 11: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

11/XX

Papyrus DSML Workshop June2015

• The static profile

Generated code in src-gen

Override the factory

Derived feature

• Element type

Remove unused element

Add some elements • Init values

• Create sub elements

SEMANTIC PART

Page 12: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

12/XX

Papyrus DSML Workshop June2015

• Style

Create a css for each diagram

Display stereotype compartment

Hide compartment

• Property view

Add a constraint in the framework

Merge from 1.1

• Palette

Add UML elements

Add new SysML elements

• Expansion

Add compartment

Use new figure

Add Port

UI PART

Page 13: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

13/XX

Papyrus DSML Workshop June2015

MODEL ARCHITECTURE WITH EXPANSION FRAMEWORK

UML element

type

Class Diagram

element type

BDD element

type

SysML element

type

Sysml New Child BDD Palette

BDD expansion

model

UML expansion

model

Model

Block

Page 14: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

14/XX

Papyrus DSML Workshop June2015

VIEWPOINT

Page 15: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

15/XX

Papyrus DSML Workshop June2015

DEMO

Page 16: CREATE A DSML : THE SYSML1.4 USE CASE...SysML element type Sysml New Child BDD Palette BDD expansion model UML expansion model Model Block 14/XX Papyrus DSML Workshop June2015 VIEWPOINT

16/XX

Papyrus DSML Workshop June2015

• Tests

Manual

Comparison/Testing/Benchmark framework

• Validation

Validation tool for each meta-model

Check missing element type

• Examples

Demo for common use case [1]

Official profiled-DSML example

• Tooling

Unified

FEEDBACKS

1 : http://jqueryui.com/demos/