software visualization today - systematic literature review

21
Software Visualization Today Results of literature review Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Upload: mindtrek

Post on 21-Jan-2017

21 views

Category:

Technology


3 download

TRANSCRIPT

Software Visualization Today

Results of literature review

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Research Design

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Research questions

• What is the focus of software visualization (SV) research?– Why software is visualized?– What are the visualization methods used in SV?– What are the data sources used in SV?

• What is the maturity of SV research field?

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Research process

Definingresearch goals

Selectingsources ofliterature

Screening ofliterature

Conductingsearches

Definingclassification

scheme

Testing dataextraction form

Qalitativeanalysis

Quantitativeanalysis

Synthesis

Testing searchterms

Data extraction

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Analysis

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Example Visualizations

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Code Cityhttps://wettel.github.io/

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Polymetric Viewshttp://xray.inf.usi.ch/xray.php

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Seesoft, line based code visualizationhttp://www.cs.umd.edu/class/spring2001/cmsc838b/Project/Parija_Spacco/old_viewtips.html

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Disk Usage Utilitieshttps://softvis.wordpress.com/2011/03/23/disk-usage-utilities/

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Dependency Structure Matrixhttp://www.softviscollection.org/vis/dependency-structure-matrix/

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto,Mikko Nurminen, Heli Väätäjä

Code Ownership Distribution Maphttp://www.softviscollection.org/vis/code-ownership-distribution-map/

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Results

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Why software is visualized?

• To understand software structure• To understand software behavior• To understand software evolution

• For optimizing different aspects of software• For project management purposes• To understand how developers work• For requirements management

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Visualization methods used in SV

Visualization types• Trees and graphs• Geometric projection techniques• Text based visualizations• Timelines• Info graphics

Visualization attributes• Color• Spatial position• Size• Shape• Animation

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Data in SV

Data sources• Source code• Software execution data• Change data (e.g. from version

control system)• Static code analysis data• Software usage data• Software related documents and

models• Data from testing of software

Data attributes• Hierarchies and dependencies• Time and duration• Object oriented metrics• Version and change related

attributes• Execution traces• Text• Similarity• Etc.

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Studied aspects Structure Execution Evolution Management Development Requirements Optimization Rendering OtherAmount of studies 37 25 15 6 3 3 3 3 2Data sources x studied aspects Structure Execution Evolution Management Development RE Optimization Rendering Other TotalSource code 33 6 11 5 0 1 0 2 0 46Software execution data 7 22 1 0 0 0 2 1 1 28Change / version data 5 1 10 3 2 0 1 0 1 17Static code analysis data 8 5 2 1 0 0 2 0 0 15Usage data 1 2 2 0 1 0 0 0 0 5Documents and models 2 0 0 0 0 3 0 0 1 5Test data 1 2 1 1 0 0 0 0 0 4Other 2 1 1 0 0 0 0 0 0 4Not relevant / Not stated clearly 4 0 3 2 1 0 0 2 0 9Visualization formats x studied aspects Structure Execution Evolution Management Development Requirements Optimization Rendering Other TotalHierarchical and Graph-Based Techniques 31 17 11 3 2 2 1 3 2 61Geometric projection techniques 12 12 5 2 0 0 2 1 0 26Timelines 1 9 5 3 3 0 1 0 0 18Info graphics 7 6 4 3 1 0 1 0 0 17Icon-based techniques 6 3 4 0 0 0 1 0 0 12Text based visualizations 5 1 2 0 0 0 0 0 0 7Tag- and word-clouds 2 0 3 1 0 0 0 1 0 5Pixel-oriented techniques 1 3 0 0 0 0 0 0 0 4Other 3 4 4 3 0 1 1 0 0 11Not stated clearly in the article 1 0 0 0 0 0 0 0 0 1Multiple views used x studied aspects Structure Execution Evolution Management Development RE Optimization Rendering Other TotalUsed 16 14 12 5 2 0 2 0 0 43Not used 21 11 3 1 1 3 1 3 3 40

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Maturity of SV research

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Conclusion

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

Questions?

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä

THANK YOU!

Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä