Visualizing Python Software Structures via Dynamic and Static Analysis With the Kieker Framework

Authors

DOI:

https://doi.org/10.14279/eceasst.v86.1.2780

Keywords:

research software engineering, reverse software engineering, software visualization, software analysis

Abstract

The Kieker observability framework is a tool that provides users with the means to design a custom observability pipeline for their application. Originally tailored for Java and Fortran, supporting Python with Kieker is worthwhile: Python is a popular language to implement research software, thus making structural insights of Python applications highly valuable. Our Python analysis pipeline combines static and dynamic analysis of a given software system. We present the evaluation of the tool’s execution performance and the evaluation of the layout algorithms for visualizing the software structure. Our emphasis of the present paper is on the importance of different visualization techniques, and the evaluation of the visualization engine in this context. We discovered that our visualization engine processed nested graphs of a NumPy example in 34 seconds where as prior approaches does not terminate and consumes more than one hour.

Author Biographies

Daphné Larrivain, ENSICAEN

Master Student, Department of Computer Science

Shinhyung Yang, Kiel University

Postdoc researcher, Department of Computer Science

Wilhelm Hasselbring, Kiel University

Professor, Department of Computer Science

Downloads

Published

2026-11-02

How to Cite

[1]
D. Larrivain, S. Yang, and W. Hasselbring, “Visualizing Python Software Structures via Dynamic and Static Analysis With the Kieker Framework”, ECEASST, vol. 86, no. 1, Nov. 2026.