Glyph-based Visualizations for Debugging Concurrent Java Programs
Due to non-deterministic behavior and thread interleaving of concurrent programs, the debugging of concurrency and performance issues is a rather difficult and often tedious task. The way source code is visually presented in traditional source-code editors does not convey much information on whether the code is executed concurrently or in parallel in the first place. The main goal of this research project is to develop debugging approaches to facilitate the understanding of concurrent programs. In particular, the project focuses on the design and empirical evaluation of interactive, glyph-based visualizations embedded in the program text next to the related source-code artifact. The debugging approaches are implemented in tools that are integrated as plugins into widely used IDEs. For this purpose, a framework called CodeSparks was developed, which makes the creation of such plugins very simple.
Related publications:
- The CodeSparks Framework – Augmenting Source Code with Glyph-based Visualizations
Oliver Moseler and Stephan Diehl
in Science of Computer Programming, volume 230, Elsevier, 2023. [See publisher site: https://doi.org/10.1016/j.scico.2023.102998] - The ThreadRadar Visualization for Debugging Concurrent Java Programs
Oliver Moseler, Lucas Kreber, and Stephan Diehl
in Journal of Visualization (Open Access), Springer, 2022 (Extended version of ThreadRadar: A Thread-Aware Visualization for Debubgging Concurrent Java Programs)
[Version of Record, see publisher site: https://doi.org/10.1007/s12650-022-00843-w] - ThreadRadar: A Thread-Aware Visualization for Debugging Concurrent Java Programs
Oliver Moseler, Lucas Kreber, and Stephan Diehl
in Proceedings of the 14th International Symposium on Visual Information Communication and Interaction (VINCI 2021), Potsdam, Germany, 6–8 September 2021
[Accepted Version, see publisher site: https://doi.org/10.1145/3481549.3481566]
(This paper received the Best Paper Award).