ABSTRACT
Software visualization uses metaphors to depict software system and software development data that usually has no inherent gestalt. The choice of a fitting metaphor for visual display is researched broadly, but deriving a layout based on similarity is still challenging. We present a novel approach to 3D software visualization called Software Galaxy. Our layout is based on applying Latent Dirichlet Allocation on source code documents. We utilize a metaphor inspired from astronomy for depicting software metrics for single documents and clusters of documents. Our first experiments indicate that a 3D visualization capturing semantic relatedness can be beneficial for standard program comprehension tasks.
- Daniel Atzberger, Tim Cech, Merlin de la Haye, Maximilian Söchting, Willy Scheibel, Daniel Limberger, and Jürgen Döllner. 2021. Software Forest: A Visualization of Semantic Similarities in Source Code using a Tree Metaphor. In Proc. 16th International Joint Conference on Computer Vision, Imaging and Computer Graphics Theory and Applications – Volume 3(IVAPP ’21). SciTePress, 112–122. https://doi.org/10.5220/0010267601120122Google ScholarCross Ref
- David M. Blei, Andrew Y. Ng, and Michael I. Jordan. 2003. Latent Dirichlet Allocation. Journal of Machine Learning Research 3 (2003), 993–1022. https://doi.org/10.5555/944919.944937Google ScholarDigital Library
- Andrew H. Caudwell. 2010. Gource: Visualizing Software Version Control History. In Proceedings of the ACM International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion(OOPSLA ’10). ACM, 73–74. https://doi.org/10.1145/1869542.1869554Google ScholarDigital Library
- Tse-Hsun Chen, Stephen W. Thomas, and Ahmed E. Hassan. 2016. A survey on the use of topic models when mining software repositories. Empirical Software Engineering 21, 5 (2016), 1843–1919. https://doi.org/10.1007/s10664-015-9402-8Google ScholarDigital Library
- Michael A. A. Cox and Trevor F. Cox. 2008. Multidimensional scaling. In Handbook of Data Visualization. Springer, 315–347.Google Scholar
- Tobias Knöschke. 2020. Design and Implementation of 3D Visualizations for Topic Maps and their Application in Software Analytics. Master’s thesis. Hasso Plattner Institute, Digital Engineering Faculty, University of Potsdam.Google Scholar
- Adrian Kuhn, Peter Loretan, and Oscar Nierstrasz. 2008. Consistent Layout for Thematic Software Maps. In Proc. 15th Working Conference on Reverse Engineering(WCRE ’08). IEEE, 209–218. https://doi.org/10.1109/WCRE.2008.45Google ScholarDigital Library
- Michele Lanza. 2001. The Evolution Matrix: Recovering Software Evolution Using Software Visualization Techniques. In Proc. 4th International Workshop on Principles of Software Evolution(IWPSE ’01). ACM, 37–42. https://doi.org/10.1145/602461.602467Google ScholarDigital Library
- André Skupin. 2004. The world of geography: Visualizing a knowledge domain with cartographic means. Proceedings of the National Academy of Sciences 101, suppl 1(2004), 5274–5278. https://doi.org/10.1073/pnas.0307654100Google ScholarCross Ref
- Frank Steinbrückner and Claus Lewerentz. 2013. Understanding software evolution with software cities. Information Visualization 12, 2 (2013), 200–216. https://doi.org/10.1177/1473871612438785Google ScholarCross Ref
- Eduardo F. Vernier, Joao L. D. Comba, and Alexandru C. Telea. 2021. Guided Stable Dynamic Projections. Computer Graphics Forum 40, 3 (2021), 87–98. https://doi.org/10.1111/cgf.14291Google ScholarCross Ref
- Lukas Wagner, Willy Scheibel, Daniel Limberger, Matthias Trapp, and Jürgen Döllner. 2020. A Framework for Interactive Exploration of Clusters in Massive Data using 3D Scatter Plots and WebGL. In Proc. 25th International Conference on 3D Web Technology(Web3D ’20). ACM, 31:1–2. https://doi.org/10.1145/3424616.3424730Google ScholarDigital Library
Index Terms
- Software Galaxies: Displaying Coding Activitiesusing a Galaxy Metaphor
Recommendations
Toward the Conceptions of Visualization Language and Visualization Metaphor
HCC '01: Proceedings of the IEEE 2001 Symposia on Human Centric Computing Languages and Environments (HCC'01)In this article the conceptions of Visualization Language and Visualization Metaphor are suggested.Thestructure of a metaphor and the some conceptionlinked with visualization languages are considered.The approaches to evaluating of visualization ...
Visualizing Software Architectures in Virtual Reality with an Island Metaphor
Virtual, Augmented and Mixed Reality: Interaction, Navigation, Visualization, Embodiment, and SimulationAbstractSoftware architecture is abstract and intangible. Tools for visualizing software architecture can help to comprehend the implemented architecture but they need an effective and feasible visual metaphor, which maps all relevant aspects of a ...
Software visualization in software maintenance, reverse engineering, and re-engineering: a research survey
Software visualization is concerned with the static visualization as well as the animation of software artifacts, such as source code, executable programs, and the data they manipulate, and their attributes, such as size, complexity, or dependencies. ...
Comments