Towards a Generic Layout Composition Framework for Domain Specific - - PowerPoint PPT Presentation

towards a generic layout composition framework for domain
SMART_READER_LITE
LIVE PREVIEW

Towards a Generic Layout Composition Framework for Domain Specific - - PowerPoint PPT Presentation

Fakultt Informatik, Institut fr Software- und Multimediatechnologie, Lehrstuhl Softwaretechnologie Towards a Generic Layout Composition Framework for Domain Specific Models Jendrik Johannes Karsten Gaul 26/10/2009, DSM09, Orlando, Florida


slide-1
SLIDE 1

Fakultät Informatik, Institut für Software- und Multimediatechnologie, Lehrstuhl Softwaretechnologie

Towards a Generic Layout Composition Framework for Domain Specific Models

Jendrik Johannes Karsten Gaul

26/10/2009, DSM’09, Orlando, Florida

slide-2
SLIDE 2

Model Composition in MDSD

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

1

slide-3
SLIDE 3

Model Composition in MDSD

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

2

mental map

slide-4
SLIDE 4

Model Composition in MDSD

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

3

slide-5
SLIDE 5

Viewpoints on Models

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

4

mental map

User View Tool View

slide-6
SLIDE 6

Viewpoints on Models

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

5

User View (E)MOF CIM Tool View UML …

mental map

Instance-of Instance-of

slide-7
SLIDE 7

Viewpoints on Models

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

6

User View (E)MOF CIM Tool View

X

?

Instance-of Instance-of

slide-8
SLIDE 8

Viewpoints on Models

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

7

User View (E)MOF CIM Tool View

Instance-of Instance-of

slide-9
SLIDE 9

Viewpoints on Models

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

8

User View (E)MOF CIM Tool View

mental map

Instance-of Instance-of

slide-10
SLIDE 10

Viewpoints on Models

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

9

Tool View User View (E)MOF CIM GMF GMF + Layout Composition

mental map

Instance-of Instance-of

slide-11
SLIDE 11

Viewpoints on Models

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

10

User View (E)MOF CIM Tool View GMF GMF + Layout Composition

Instance-of Instance-of

slide-12
SLIDE 12

Layout Composition

  • Layout composition in addition to semantic composition
  • Setting

– DSMLs (defined in EMOF/Ecore) with graphical syntax – Graphical composition scripts – Composition tool needs to expose relations between composition scripts and input models

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

11

0$123' ($)*$+,&,$-'.0(/ !"#$%&'($)*$+,&,$-'.!(/

!"#$%&'()*$+,"&-$) ."&/0+-)1'2!345 670+8"9' :8-,-)"&-$)'2!3;5 !"#$%&' <0+10'2!3=5 !"#$%&' >0+?-?&-)1'2!3@5 <$C08'3$,9$?-&-$) :)1-)0 A$%+B0'()*$+,"&-$) >+$7-C0+ D"+10&'()*$+,"&-$) >+$7-C0+ 3$,9"+"&$+ E++")10+ <"&0+-"8-?0+

2"5 2F5

slide-13
SLIDE 13

Layout Gathering & Merge

  • Layout format

dependent (e.g. GMF)

  • Input Model

(Source Layout)

– Width and height of bounding box

  • Composition Script

(Target Layout)

– Position of model in script

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

12

0$123' ($)*$+,&,$-'.0(/ !"#$%&'($)*$+,&,$-'.!(/

!"#$%&'()*$+,"&-$) ."&/0+-)1'2!345 670+8"9' :8-,-)"&-$)'2!3;5 !"#$%&' <0+10'2!3=5 !"#$%&' >0+?-?&-)1'2!3@5 <$C08'3$,9$?-&-$) :)1-)0 A$%+B0'()*$+,"&-$) >+$7-C0+ D"+10&'()*$+,"&-$) >+$7-C0+ 3$,9"+"&$+ E++")10+ <"&0+-"8-?0+

2"5 2F5

Source width = ? height = ? Target x = ? y = ?

slide-14
SLIDE 14

Layout Gathering & Merge

  • Layout format

dependent (e.g. GMF)

  • Input Model

(Source Layout)

– Width and height of bounding box

  • Composition Script

(Target Layout)

– Position of model in script

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

13

0$123' ($)*$+,&,$-'.0(/ !"#$%&'($)*$+,&,$-'.!(/

!"#$%&'()*$+,"&-$) ."&/0+-)1'2!345 670+8"9' :8-,-)"&-$)'2!3;5 !"#$%&' <0+10'2!3=5 !"#$%&' >0+?-?&-)1'2!3@5 <$C08'3$,9$?-&-$) :)1-)0 A$%+B0'()*$+,"&-$) >+$7-C0+ D"+10&'()*$+,"&-$) >+$7-C0+ 3$,9"+"&$+ E++")10+ <"&0+-"8-?0+

2"5 2F5

Source width = 30 height = 20 Target x = ? y = ?

slide-15
SLIDE 15

Layout Gathering & Merge

  • Layout format

dependent (e.g. GMF)

  • Input Model

(Source Layout)

– Width and height of bounding box

  • Composition Script

(Target Layout)

– Position of model in script

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

14

0$123' ($)*$+,&,$-'.0(/ !"#$%&'($)*$+,&,$-'.!(/

!"#$%&'()*$+,"&-$) ."&/0+-)1'2!345 670+8"9' :8-,-)"&-$)'2!3;5 !"#$%&' <0+10'2!3=5 !"#$%&' >0+?-?&-)1'2!3@5 <$C08'3$,9$?-&-$) :)1-)0 A$%+B0'()*$+,"&-$) >+$7-C0+ D"+10&'()*$+,"&-$) >+$7-C0+ 3$,9"+"&$+ E++")10+ <"&0+-"8-?0+

2"5 2F5

Source width = 30 height = 20 Target x = 5 y = 5

slide-16
SLIDE 16

Layout Gathering & Merge

  • Layout format

dependent (e.g. GMF)

  • Input Model

(Source Layout)

– Width and height of bounding box

  • Composition Script

(Target Layout)

– Position of model in script

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

15

0$123' ($)*$+,&,$-'.0(/ !"#$%&'($)*$+,&,$-'.!(/

!"#$%&'()*$+,"&-$) ."&/0+-)1'2!345 670+8"9' :8-,-)"&-$)'2!3;5 !"#$%&' <0+10'2!3=5 !"#$%&' >0+?-?&-)1'2!3@5 <$C08'3$,9$?-&-$) :)1-)0 A$%+B0'()*$+,"&-$) >+$7-C0+ D"+10&'()*$+,"&-$) >+$7-C0+ 3$,9"+"&$+ E++")10+ <"&0+-"8-?0+

2"5 2F5

Source width = 20 height = 10 Target x = ? y = ?

slide-17
SLIDE 17

Layout Gathering & Merge

  • Layout format

dependent (e.g. GMF)

  • Input Model

(Source Layout)

– Width and height of bounding box

  • Composition Script

(Target Layout)

– Position of model in script

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

16

0$123' ($)*$+,&,$-'.0(/ !"#$%&'($)*$+,&,$-'.!(/

!"#$%&'()*$+,"&-$) ."&/0+-)1'2!345 670+8"9' :8-,-)"&-$)'2!3;5 !"#$%&' <0+10'2!3=5 !"#$%&' >0+?-?&-)1'2!3@5 <$C08'3$,9$?-&-$) :)1-)0 A$%+B0'()*$+,"&-$) >+$7-C0+ D"+10&'()*$+,"&-$) >+$7-C0+ 3$,9"+"&$+ E++")10+ <"&0+-"8-?0+

2"5 2F5

Source width = 20 height = 10 Target x = 40 y = 5

slide-18
SLIDE 18

Simple Layout Composition

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

17

Tool View User View (E)MOF CIM GMF GMF + Layout Composition

mental map

Instance-of Instance-of

slide-19
SLIDE 19

Simple Layout Composition

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

18

User View (E)MOF CIM Tool View GMF GMF + Layout Composition

Instance-of Instance-of

slide-20
SLIDE 20

Overlap Elimination

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

19

0$123' ($)*$+,&,$-'.0(/ !"#$%&'($)*$+,&,$-'.!(/

!"#$%&'()*$+,"&-$) ."&/0+-)1'2!345 670+8"9' :8-,-)"&-$)'2!3;5 !"#$%&' <0+10'2!3=5 !"#$%&' >0+?-?&-)1'2!3@5 <$C08'3$,9$?-&-$) :)1-)0 A$%+B0'()*$+,"&-$) >+$7-C0+ D"+10&'()*$+,"&-$) >+$7-C0+ 3$,9"+"&$+ E++")10+ <"&0+-"8-?0+

2"5 2F5

  • Layout adjustment algorithms

– Always apply on input model element sets – Horizontal sorting

  • May destroy layout by

moving elements too far – Uniform Scaling

  • May move elements too far out
  • Danger of loosing compactness
slide-21
SLIDE 21

Layout Composition with Adjustment

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

20

Tool View User View (E)MOF CIM + Layout Composition GMF GMF

mental map

Instance-of Instance-of

slide-22
SLIDE 22

+ Layout Composition

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

21

User View (E)MOF CIM Tool View GMF GMF

mental map

Layout Composition with Adjustment

Instance-of Instance-of

slide-23
SLIDE 23

0$123' ($)*$+,&,$-'.0(/ !"#$%&'($)*$+,&,$-'.!(/

!"#$%&'()*$+,"&-$) ."&/0+-)1'2!345 670+8"9' :8-,-)"&-$)'2!3;5 !"#$%&' <0+10'2!3=5 !"#$%&' >0+?-?&-)1'2!3@5 <$C08'3$,9$?-&-$) :)1-)0 A$%+B0'()*$+,"&-$) >+$7-C0+ D"+10&'()*$+,"&-$) >+$7-C0+ 3$,9"+"&$+ E++")10+ <"&0+-"8-?0+

2"5 2F5

Implementation

  • Source Information Provider

– GMF: all GMF-based DSMLs – TOPCASED: all TOPCASED-based DSMLs

  • Target Information Provider

– GMF: Reuseware Composition Programs

  • Comparator

– XYComparator

  • Arranger

– Horizontal Sorting – Uniform Scaling

  • Materialiser

– GMF: all GMF-based DSMLs – TOPCASED: all TOPCASED-based DSMLs

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

22

slide-24
SLIDE 24

Evaluation

  • Experimented with different modelling languages

– Common Interface Model (CIM) DSML – UML Activity Diagrams

  • Tried out different layout adjustment algorithms
  • Combined different strategies in staged composition

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

23

slide-25
SLIDE 25

Summary & Future Work

  • We showed

– Systematic approach to preserve as much layout information as possible in model composition – Adjustment algorithms to improve layout without destroying mental map – Applicable to different modelling languages

  • Future work

– Did not look at less free layouts (e.g. Sequence Diagrams) – Did not consider compositions where elements are replaced (layout of replaced or replacing element(s)?) – Did not test with other composition (or transformation) tools/frameworks – Do require graphical composition script language

  • We are looking for interesting case studies

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

24

slide-26
SLIDE 26

Thank You!

Questions?

Jendrik Johannes and Karsten Gaul: Towards a Generic Layout Composition Framework for Domain Specific Models

25

http://reuseware.org