Browse Prior Art Database

Customizable Automatic Layout Tool for UML Model Diagrams

IP.com Disclosure Number: IPCOM000173398D
Original Publication Date: 2008-Aug-05
Included in the Prior Art Database: 2008-Aug-05
Document File: 3 page(s) / 101K

Publishing Venue

IBM

Abstract

A program is disclosed that layouts UML model diagrams automatically using user customizable layout configuration. The layout configuration respects semantics of each of the model elements, not only UML semantics but also user defined extension of the semantics (UML Profile, applied stereotypes, element name, etc. ). The configuration also respects user’s preference of layout (prefer arrange left-to-right or top-to-bottom)

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 54% of the total text.

Page 1 of 3

Customizable Automatic Layout Tool for UML Model Diagrams

 A program is disclosed that layouts UML model diagrams automatically using user customizable layout configuration. The layout configuration respects semantics of each of the model elements, not only UML semantics but also user defined extension of the semantics (UML Profile, applied stereotypes, element name, etc. ). The configuration also respects user's preference of layout (prefer arrange left-to-right or top-to-bottom)

 Existing UML(Reference [1]) model diagram layout programs (Reference [2] ). considers UML semantics (for example, if class A generalizes class B, put class A on top of class B) when that layouts model diagrams. However, those programs does not considers user defined UML extension (stereotype, keyword, etc)

Fig.1 shows high level structure of the program (UML class diagram).
(1) Model Diagram is input and output of the program. (2) Layout Configuration is also a input of this program. Layout Configuration consists of multiple (4) Layout Rules,

(3) Layout Engine is main class that calculate layout of the diagram elements. Layout Engine delegates most of the calculation to (4) Layout Rule s.

(4) Layout Rule is implementation of layout rule that calculate element positions of model elements.
(5) Layout Configuration Parser parses (2) Layout Configuration and instantiate (4) Layout Rules.
(6) Dynamic Layout Rule is a kind of layout rule that is dynamically generated from the configuration. This rule should be applied to a part of the model elements whose parameters satisfies the (7) Condition.

(7) Condition is implementations of conditions that filter model elements.

(2), (5), (6), (7) is original of this program.

(1) (2)

(3) (5)

(4)

(6) (7)

Fig.1 High level structure (UML class diagram)

Fig.2 Shows algorithm of the layout calculation (UML sequence diagram).

1

[This page contains 2 pictures or other non-text objects]

Page 2 of 3

(8) (9)


(11)

(12)


(10)

(13)

Fig.2 Algorithm of the layout calculation (UML sequence diagram).

 This program extends basic force-based automated layout algorithm (Reference [3]), including following steps:

(8) User requests automated layout to (3) Layout Engine.
(9) (3) Layout Config...