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
Defining
research goals
Selecting
sources of
literature
Screening of
literature
Conducting
searches
Defining
classification
scheme
Testing data
extraction form
Qalitative
analysis
Quantitative
analysis
Synthesis
Testing search
terms
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 City
https://wettel.github.io/
Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
Polymetric Views
http://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 visualization
http://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 Utilities
https://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 Matrix
http://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 Map
http://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 Other
Amount of studies 37 25 15 6 3 3 3 3 2
Data sources x studied aspects Structure Execution Evolution Management Development RE Optimization Rendering Other Total
Source code 33 6 11 5 0 1 0 2 0 46
Software execution data 7 22 1 0 0 0 2 1 1 28
Change / version data 5 1 10 3 2 0 1 0 1 17
Static code analysis data 8 5 2 1 0 0 2 0 0 15
Usage data 1 2 2 0 1 0 0 0 0 5
Documents and models 2 0 0 0 0 3 0 0 1 5
Test data 1 2 1 1 0 0 0 0 0 4
Other 2 1 1 0 0 0 0 0 0 4
Not relevant / Not stated clearly 4 0 3 2 1 0 0 2 0 9
Visualization formats x studied aspects Structure Execution Evolution Management Development Requirements Optimization Rendering Other Total
Hierarchical and Graph-Based Techniques 31 17 11 3 2 2 1 3 2 61
Geometric projection techniques 12 12 5 2 0 0 2 1 0 26
Timelines 1 9 5 3 3 0 1 0 0 18
Info graphics 7 6 4 3 1 0 1 0 0 17
Icon-based techniques 6 3 4 0 0 0 1 0 0 12
Text based visualizations 5 1 2 0 0 0 0 0 0 7
Tag- and word-clouds 2 0 3 1 0 0 0 1 0 5
Pixel-oriented techniques 1 3 0 0 0 0 0 0 0 4
Other 3 4 4 3 0 1 1 0 0 11
Not stated clearly in the article 1 0 0 0 0 0 0 0 0 1
Multiple views used x studied aspects Structure Execution Evolution Management Development RE Optimization Rendering Other Total
Used 16 14 12 5 2 0 2 0 0 43
Not 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ä
Credits for the Kitten Pictures
• https://www.flickr.com/photos/vancouverfilmschool/4839166526
EBM Student Photo Shoot for Kitten Album Cover By Vancouver Film School [CC BY 2.0
https://creativecommons.org/licenses/by/2.0/], via Flickr
• https://commons.wikimedia.org/wiki/File:Computer-kitten-sm.png
Computer-kitten.jpg By Tim Bartel [CC BY-SA 3.0 http://creativecommons.org/licenses/by-sa/3.0], via Wikimedia
Commons
• https://commons.wikimedia.org/wiki/File:Cute-kittens-12929201-1600-1200.jpg
Cute-kittens-12929201-1600-1200.jpg By Saving Public Ryan (Own work) [CC BY-SA 4.0
http://creativecommons.org/licenses/by-sa/4.0], via Wikimedia Commons
• https://www.flickr.com/photos/lunattack/304573665
Felipe by José Luna [CC BY-NC-SA 2.0 https://creativecommons.org/licenses/by-nc-sa/2.0/], via Flickr
• https://commons.wikimedia.org/wiki/File:Kitten_and_partial_reflection_in_mirror.jpg
Kitten_and_partial_reflection_in_mirror.jpg By Paul Reynolds (Flickr: Reflection) [CC BY 2.0
http://creativecommons.org/licenses/by/2.0], via Wikimedia Commons
• https://www.flickr.com/photos/nicsuzor/2554668884
Kittens! By Nicolas Suzor [CC BY-SA 2.0 https://creativecommons.org/licenses/by-sa/2.0/], via Flickr
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ä

Software Visualization Today - Systematic Literature Review

  • 1.
    Software Visualization Today Resultsof literature review Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 2.
    Research Design Anna-Liisa Mattila,Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 3.
    Research questions • Whatis 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ä
  • 4.
    Research process Defining research goals Selecting sourcesof literature Screening of literature Conducting searches Defining classification scheme Testing data extraction form Qalitative analysis Quantitative analysis Synthesis Testing search terms Data extraction Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 5.
    Analysis Anna-Liisa Mattila, PetriIhantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 6.
    Example Visualizations Anna-Liisa Mattila,Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 7.
    Code City https://wettel.github.io/ Anna-Liisa Mattila,Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 8.
    Polymetric Views http://xray.inf.usi.ch/xray.php Anna-Liisa Mattila,Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 9.
    Seesoft, line basedcode visualization http://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ä
  • 10.
    Disk Usage Utilities https://softvis.wordpress.com/2011/03/23/disk-usage-utilities/ Anna-LiisaMattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 11.
    Dependency Structure Matrix http://www.softviscollection.org/vis/dependency-structure-matrix/ Anna-LiisaMattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 12.
    Code Ownership DistributionMap http://www.softviscollection.org/vis/code-ownership-distribution-map/ Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 13.
    Results Anna-Liisa Mattila, PetriIhantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 14.
    Why software isvisualized? • 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ä
  • 15.
    Visualization methods usedin 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ä
  • 16.
    Data in SV Datasources • 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ä
  • 17.
    Studied aspects StructureExecution Evolution Management Development Requirements Optimization Rendering Other Amount of studies 37 25 15 6 3 3 3 3 2 Data sources x studied aspects Structure Execution Evolution Management Development RE Optimization Rendering Other Total Source code 33 6 11 5 0 1 0 2 0 46 Software execution data 7 22 1 0 0 0 2 1 1 28 Change / version data 5 1 10 3 2 0 1 0 1 17 Static code analysis data 8 5 2 1 0 0 2 0 0 15 Usage data 1 2 2 0 1 0 0 0 0 5 Documents and models 2 0 0 0 0 3 0 0 1 5 Test data 1 2 1 1 0 0 0 0 0 4 Other 2 1 1 0 0 0 0 0 0 4 Not relevant / Not stated clearly 4 0 3 2 1 0 0 2 0 9 Visualization formats x studied aspects Structure Execution Evolution Management Development Requirements Optimization Rendering Other Total Hierarchical and Graph-Based Techniques 31 17 11 3 2 2 1 3 2 61 Geometric projection techniques 12 12 5 2 0 0 2 1 0 26 Timelines 1 9 5 3 3 0 1 0 0 18 Info graphics 7 6 4 3 1 0 1 0 0 17 Icon-based techniques 6 3 4 0 0 0 1 0 0 12 Text based visualizations 5 1 2 0 0 0 0 0 0 7 Tag- and word-clouds 2 0 3 1 0 0 0 1 0 5 Pixel-oriented techniques 1 3 0 0 0 0 0 0 0 4 Other 3 4 4 3 0 1 1 0 0 11 Not stated clearly in the article 1 0 0 0 0 0 0 0 0 1 Multiple views used x studied aspects Structure Execution Evolution Management Development RE Optimization Rendering Other Total Used 16 14 12 5 2 0 2 0 0 43 Not 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ä
  • 18.
    Maturity of SVresearch Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 19.
    Conclusion Anna-Liisa Mattila, PetriIhantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 20.
    Questions? Anna-Liisa Mattila, PetriIhantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 21.
    Credits for theKitten Pictures • https://www.flickr.com/photos/vancouverfilmschool/4839166526 EBM Student Photo Shoot for Kitten Album Cover By Vancouver Film School [CC BY 2.0 https://creativecommons.org/licenses/by/2.0/], via Flickr • https://commons.wikimedia.org/wiki/File:Computer-kitten-sm.png Computer-kitten.jpg By Tim Bartel [CC BY-SA 3.0 http://creativecommons.org/licenses/by-sa/3.0], via Wikimedia Commons • https://commons.wikimedia.org/wiki/File:Cute-kittens-12929201-1600-1200.jpg Cute-kittens-12929201-1600-1200.jpg By Saving Public Ryan (Own work) [CC BY-SA 4.0 http://creativecommons.org/licenses/by-sa/4.0], via Wikimedia Commons • https://www.flickr.com/photos/lunattack/304573665 Felipe by José Luna [CC BY-NC-SA 2.0 https://creativecommons.org/licenses/by-nc-sa/2.0/], via Flickr • https://commons.wikimedia.org/wiki/File:Kitten_and_partial_reflection_in_mirror.jpg Kitten_and_partial_reflection_in_mirror.jpg By Paul Reynolds (Flickr: Reflection) [CC BY 2.0 http://creativecommons.org/licenses/by/2.0], via Wikimedia Commons • https://www.flickr.com/photos/nicsuzor/2554668884 Kittens! By Nicolas Suzor [CC BY-SA 2.0 https://creativecommons.org/licenses/by-sa/2.0/], via Flickr Anna-Liisa Mattila, Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä
  • 22.
    THANK YOU! Anna-Liisa Mattila,Petri Ihantola, Terhi Kilamo, Antti Luoto, Mikko Nurminen, Heli Väätäjä