Software Visualisation

Software visualization refers to visualizing the structure, evolution, or the execution behavior of software systems.

Software forms large and complex systems difficult to undertstand, analyze, or manage without tool support. For instance, visualization could help software developers and architects to design good software, might support testers in finding bugs, or may enable managers to monitor project progress. Our work mainly concentrates on visually enriching the source code a developer sees in an text editor with helpful information and revealing the structure of software projects through visualizing code couplings.

Augmented Code

The code of the software system is what finally determine its behaviour and properties. While developers use many tools for navigating, understanding, changing and running the code, these tools are often not well-integrated with the source code itself. We investigate how visualization can be used to enrich the code in the editor and provide the developer with additional information in situ, exactly where required. The below images, for instance, augments the source code with information on the performance of the displayed method and calls of other methods therein.

Related Projects:

Code Couplings

The parts of a software systems, the classes, modules and subsystems, are not independent of each other, but connected through multitude of different types of relationships. These form a complex network of dependencies and couplings that is difficult to understand and debug. Studying multiple versions of a system or its execution behaviour, these couplings even change over time. We developed a number of network visualizations that particularly focus on the scalable representation of networks in the context of software engineering.

See also our project on dynamic graph visualization

Publications

  1. Schulz, Rodrigo ; Beck, Fabian ; Cerezo Felipez, Jhonny Wilder ; Bergel, Alexandre: Visually Exploring Object Mutation. In: VISSOFT 2016 NIER, VISSOFT 2016 NIER, 2016
  2. Beck, Fabian ; Melcher, Jan ; Weiskopf, Daniel: Identifying Modularization Patterns by Visual Comparison of Multiple Hierarchies. In: Proceedings of the 2016 IEEE 24th International Conference on Program Comprehension (ICPC), Proceedings of the 2016 IEEE 24th International Conference on Program Comprehension (ICPC) : IEEE, 2016
  3. Vehlow, Corinna ; Beck, Fabian ; Weiskopf, Daniel: Visualizing Dynamic Hierarchies in Graph Sequences. In: IEEE (Hrsg.) IEEE Transactions on Visualization and Computer Graphics, IEEE Transactions on Visualization and Computer Graphics. Bd. 22, IEEE (2016), Nr. 10
  4. Meyer, Matthias ; Beck, Fabian ; Lohmann, Steffen: Visual Monitoring of Process Runs: An Application Study for Stored Procedures. In: Proceedings of the IEEE Pacific Visualization Symposium (PacificVis ’16), Proceedings of the IEEE Pacific Visualization Symposium (PacificVis ’16) : IEEE, 2016
  5. Beck, Fabian ; Dit, Bogdan ; Velasco-Madden, Jaleo ; Weiskopf, Daniel ; Poshyvanyk, Denys: Rethinking User Interfaces for Feature Location. In: ICPC ’15: Proceedings of the IEEE 23rd International Conference on Program Comprehension, ICPC ’15: Proceedings of the IEEE 23rd International Conference on Program Comprehension : IEEE, 2015
  6. Burch, Michael ; Munz, Tanja ; Beck, Fabian ; Weiskopf, Daniel: Visualizing Work Processes in Software Engineering with Developer Rivers. In: Proceedings of the 3rd IEEE Working Conference on Software Visualization (VISSOFT ’15), Proceedings of the 3rd IEEE Working Conference on Software Visualization (VISSOFT ’15) : IEEE, 2015
  7. Baltes, Sebastian ; Moseler, Oliver ; Beck, Fabian ; Diehl, Stephan: Navigate, Understand, Communicate: How Developers Locate Performance Bugs. In: Proceedings of the 9th International Symposium on Empirical Software Engineering and Measurement (ESEM ’15), Proceedings of the 9th International Symposium on Empirical Software Engineering and Measurement (ESEM ’15) : IEEE, 2015
  8. Kulesz, Daniel ; Toth, Fabian ; Beck, Fabian: Live Inspection of Spreadsheets. In: Proceedings of the 2nd Workshop on Software Engineering Methods in Spreadsheets, Proceedings of the 2nd Workshop on Software Engineering Methods in Spreadsheets : CEUR-WS.org, 2015. — Rezensiertes Poster
  9. Lutz, Rainer ; Rausch, Daniel ; Beck, Fabian ; Diehl, Stephan: A Directory Comparison and Manipulation Tool. In: VL/HCC ’14: Proceedings of the 2014 IEEE Symposium on Visual Languages and Human-Centric Computing, VL/HCC ’14: Proceedings of the 2014 IEEE Symposium on Visual Languages and Human-Centric Computing : IEEE, 2014. — Unrezensiertes Poster
  10. Beck, Fabian ; Burch, Michael ; Diehl, Stephan ; Weiskopf, Daniel: The State of the Art in Visualizing Dynamic Graphs. In: EuroVis - STARs, EuroVis - STARs : Eurographics Association, 2014
  11. Lutz, Rainer ; Rausch, Daniel ; Beck, Fabian ; Diehl, Stephan: Get Your Directories Right: From Hierarchy Visualization to Hierarchy Manipulation. In: VL/HCC ’14: Proceedings of the 2014 IEEE Symposium on Visual Languages and Human-Centric Computing, VL/HCC ’14: Proceedings of the 2014 IEEE Symposium on Visual Languages and Human-Centric Computing : IEEE, 2014
  12. Beck, Fabian: Software Feathers: Figurative Visualization of Software Metrics. In: IVAPP ’14: Proceedings of the 5th International Conference on Information Visualization Theory and Application, IVAPP ’14: Proceedings of the 5th International Conference on Information Visualization Theory and Application : SCITEPRESS, 2014
  13. Beck, Fabian ; Gulan, Stefan ; Biegel, Benjamin ; Baltes, Sebastian ; Weiskopf, Daniel: RegViz: Visual Debugging of Regular Expressions. In: ICSE Companion ’14: Companion Proceedings of the 36th International Conference on Software Engineering, ICSE Companion ’14: Companion Proceedings of the 36th International Conference on Software Engineering : ACM, 2014
  14. Beck, Fabian ; Wiszniewsky, Franz-Josef ; Burch, Michael ; Diehl, Stephan ; Weiskopf, Daniel: Asymmetric Visual Hierarchy Comparison with Nested Icicle Plots. In: CEUR-WS.org (Hrsg.) ; CEUR-WS.org (Hrsg.): Joint Proceedings of the Fourth International Workshop on Euler Diagrams and the First International Workshop on Graph Visualization, Joint Proceedings of the Fourth International Workshop on Euler Diagrams and the First International Workshop on Graph Visualization, 2014
  15. Kulesz, Daniel ; Scheurich, Jonas ; Beck, Fabian: Integrating Anomaly Diagnosis Techniques into Spreadsheet Environments. In: VISSOFT ’14: Proceedings of the 2nd IEEE Working Conference on Software Visualization, VISSOFT ’14: Proceedings of the 2nd IEEE Working Conference on Software Visualization : IEEE, 2014
  16. Beck, Fabian ; Hollerich, Fabrice ; Diehl, Stephan ; Weiskopf, Daniel: Visual Monitoring of Numeric Variables Embedded in Source Code. In: VISSOFT ’13: Proceedings of the first IEEE Working Conference on Software Visualization, VISSOFT ’13: Proceedings of the first IEEE Working Conference on Software Visualization : IEEE, 2013
  17. Beck, Fabian ; Moseler, Oliver ; Diehl, Stephan ; Rey, Günter Daniel: In Situ Understanding of Performance Bottlenecks through Visually Augmented Code. In: ICPC ’13: Proceedings of the 21st International Conference on Program Comprehension, ICPC ’13: Proceedings of the 21st International Conference on Program Comprehension, 2013
  18. Beck, Fabian ; Burch, Michael ; Vehlow, Corinna ; Diehl, Stephan ; Weiskopf, Daniel: Rapid Serial Visual Presentation in Dynamic Graph Visualization. In: IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2012), IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2012) : IEEE, 2012
  19. Burch, Michael ; Beck, Fabian ; Weiskopf, Daniel: Radial Edge Splatting for Visualizing Dynamic Directed Graphs. In: IVAPP ’12: Proceedings of the International Conference on Information Visualization Theory and Applications, IVAPP ’12: Proceedings of the International Conference on Information Visualization Theory and Applications : SciTePress, 2012
  20. Burch, Michael ; Müller, Christoph ; Reina, Guido ; Schmauder, Hansjörg ; Greis, Miriam ; Weiskopf, Daniel: Visualizing Dynamic Call Graphs. In: Vision, Modeling & Visualization, Vision, Modeling & Visualization : The Eurographics Association, 2012
  21. Burch, Michael ; Vehlow, Corinna ; Beck, Fabian ; Diehl, Stephan ; Weiskopf, Daniel: Parallel Edge Splatting for Scalable Dynamic Graph Visualization. In: IEEE (Hrsg.) IEEE Transactions on Visualization and Computer Graphics, IEEE Transactions on Visualization and Computer Graphics. Bd. 17, IEEE (2011), Nr. 12
To the top of the page