Presented at Graph Based Tools 2010
Traceability models are often used to describe the correspondence between source and target models of model transformations. Although the visual representation of such models are important for transformation development and application, mostly ad-hoc solutions are present in industrial environments. In this paper we present a user interface component for visualizing traceability models inside transformation frameworks. As generic graph visualization methods fail to emphasize the underlying logical structure of our model, we used domain-specific layouts by customizing generic graph layout algorithms with data from the metamodels used during the transformation. This approach was evaluated, among others, with the traceability models generated by a BPEL verification transformation, which serves as our running example.
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Visualization of Traceability Models with Domain-specific Layouting
1. Visualiza<on
of
Traceability
Models
with
Domain-‐specific
Layou<ng
Ábel
Hegedüs,
Zoltán Ujhelyi,
István
Ráth
and
Ákos
Horváth
{hegedusa,ujhelyiz,rath,ahorvath}@mit.bme.hu
Budapest
University
of
Technology
and
Economics
Department
of
Measurements
and
Informa<on
Systems
2. Mo<va<on
Verifica<on
transforma<on
for
BPEL
workflows
o Complex
transforma<on
o Traceability
model
automa<cally
generated
• Proven
useful
during
transforma<on
debugging
!()
Receive
* !" $ % '
Input Input
correct
Yes format? No
,- % & '
Copy Transform
+ !" # % '
Output
Reply
3. Mo<va<on
Verifica<on
transforma<on
for
BPEL
workflows
o Complex
transforma<on
o Traceability
model
automa<cally
generated
• Proven
useful
during
transforma<on
debugging
!()
Receive
* !" $ % '
Input Input
correct
Yes format? No
,- % & '
Copy Transform
+ !" # % '
Output
Reply
4. Visualiza<on
of
Traceability
Models
Goal:
integrated
visualiza<on
of…
o Traceability
records
and
o A
filtered
version
of
the
source
and
target
model
Graph
display
o Model
Elements
as
Nodes
o Traceability
Rela<ons
as
Arcs
Traceability
model
Source
element
model
Target
element
model
element
5. Graph
layout
algorithms
Generic
Layout
Algorithms
o Considers
only
nodes
and
arcs
o Aesthe<c
criteria
op<miza<on
Domain-‐specific
Layout
Algorithms
o Uses
model-‐specific
informa<on
11. Requirements
1. Minimize
node overlapping
2. Minimize
arc crossing
3. Place
corresponding
model
elements
close
4. Separate
source,
target
and
traceability
models
5. Maintain
the mental map
during
changes
12. Layout
for
traceability
visualiza<on
–
I.
Based
on
grid
layout
o Simple
layout
o Separa<on
of
model
parts
o No
node
overlapping
• Requirement
1.
✔
Filters
o Based
on
type
rela<ons
o Removing
intramodel
rela<ons
13. Layout
for
traceability
visualiza<on
–
I.
Based
on
grid
layout
o Simple
layout
process: recID:
r_s S2ID: rece
o Separa<on
of
model
identifier
tProcess parts
scope2id tRec
o No
node
overlapping
r_t
S2ID: receive: V2ID: proc
• Requirement
1.
✔
tReceive
scope2id var2id tPro
Filters
sFinished: inputID: R2ID: S2
o Based
on
type
rela<ons
identifier identifier rec2id scop
o Removing
intramodel
rela<ons
input: processID: V2
tVariable identifier var
14. Layout
for
traceability
visualiza<on
–
II.
Ordering
o Placing
corresponding
elements
next
to
each
other
• Requirement
3.
✔
o Separates
source
and
target
model
elements
• Requirement
4.
(Only
in
case
of
1:1
correspondence)
o Short
edges
–
Few
edge
crossings
• Requirement
2.
✔
15. Layout
for
traceability
visualiza<on
–
II.
Ordering
S2ID: receive: R2ID: recID: rec
o Placing
corresponding
elements
next
to
each
other
ope2id tReceive rec2id identifier tRe
• Requirement
3.
✔
V2ID: o Separates
source
and
target
model
elements
process: S2ID: processID: pro
ar2id • Requirement
4.
(Only
in
case
of
1:1
correspondence)
tProcess scope2id identifier tPr
o Short
edges
–
Few
edge
crossings
R2ID: S2ID: sFinished: input: in
• Requirement
2.
✔
ec2id scope2id identifier tVariable tVa
V2ID: inputID:
var2id identifier
16. Layout
for
traceability
visualiza<on
–
II.
Ordering
o Placing
corresponding
elements
next
to
each
other
• Requirement
3.
✔
o Separates
source
and
target
model
elements
• Requirement
4.
(Only
in
case
of
1:1
correspondence)
o Short
edges
–
Few
edge
crossings
• Requirement
2.
✔
Further
enhancements
o Handling
traceability
links
with
mul<ple
source
or
target
connec<ons
• Requirement
4.
✔
17. Layout
for
traceability
visualiza<on
–
II.
Ordering
D: o Placing
corresponding
elements
next
to
each
other
receive: R2ID: recID:
ifier tReceive
• Requirement
3.
✔
rec2id identifier
o Separates
source
and
target
model
elements
ssID: process: S2ID: processID:
ifier • Requirement
4.
(Only
in
case
of
1:1
correspondence)
tProcess scope2id identifier
o Short
edges
–
Few
edge
crossings
hed: • Requirement
2.
✔
S2ID: sFinished:
ifier scope2id identifier
Further
enhancements
tID: o Handling
traceability
links
with
mul<ple
source
or
input: V2ID: inputID:
ifier target
connec<ons
var2id
tVariable identifier
• Requirement
4.
✔
18. Integra<on
Graph
visualiza<on
component
for
VIATRA2
o User-‐selected
model
elements
to
visualize
o Reacts
to
model
space
changes
• Possibly
during
transforma<ons
Traceability
visualiza<on
o Domain-‐specific
layout
algorithm
used
o Aeer
model
changes
relayou<ng
20. Evalua<on
Poten<al
problems
o Informa<on
loss
• Hiding
internal
structure
of
source
and
target
models
o Large
space
consump<on
• A
row
is
required
for
every
traceability
record
21. Conclusion
and
Future
Plans
Domain-‐specific
layout
algorithm
o Traceability
models
o Fulfills
requirements
o Integrated
into
transforma<on
development
environment
Future
plans
o Displaying
structure
of
source/target
models
o Other
domain-‐specific
visualiza<ons