AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... •...

16
AniMatrix A Matrix-Based Visualization of Software Evolution Sebastien Rufiange and Guy Melancon Giovanni Viviani

Transcript of AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... •...

Page 1: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

AniMatrix A Matrix-Based Visualization of

Software Evolution !

Sebastien Rufiange and Guy Melancon

Giovanni Viviani

Page 2: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Problem

• Software changes over time !

• Hard to keep track of those changes !

• Software engineers need tools to analyse it

Page 3: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Technique Taxonomy

• Small Multiples !

• Difference Maps !

• Animations !

• Glyphs

Page 4: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Small Multiples

Page 5: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Difference Maps

Page 6: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Animations

Page 7: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Glyphs

Page 8: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Animatrix

Page 9: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

History Navigator

Page 10: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

History Navigator

• Show changes between revisions !

• Color indicate the type of change !

• The orange line indicates the position in the animation step

Page 11: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Matrix View

Page 12: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Matrix View

Page 13: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Matrix View

• Show the difference map of the current revision !

• Allows to identify Usage, Design Stability and Restructuring of the software.

Page 14: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Strengths

• Allows to easily identify anomalies in the evolution !

• The History Navigator provides a way to quickly identify when the software changed !

• The use of glyphs in the matrix allows an in-depth analysis

Page 15: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Weaknesses

• Hard to compare two revision if they are not consecutive !

• Lack of small multiples prevents to observe multiple difference at the same time !

• Key-binds are not intuitive.

Page 16: AniMatrix - cs.ubc.catmm/courses/547-14/slides/... · in the animation step. Matrix View. ... • The History Navigator provides a way to quickly identify when the software changed

Thank you