25 February 2025 to 1 March 2025
Building 30.95
Europe/Berlin timezone

SustainKieker Hackathon: Reverse Engineering of Research Software

27 Feb 2025, 13:30
3h
Room 206 (Building 30.70)

Room 206

Building 30.70

Straße am Forum 6, 76131 Karlsruhe
Workshop or Hackathon research software usability

Speaker

Shinhyung Yang (Software Engineering Group, Department of Computer Science, Kiel University)

Description

SustainKieker is a software sustainability research project that aims to improve the reusability and maintainability of research software. Our project employs the Kieker Observability Framework, which started in 2006, to monitor and analyze software systems. The Kieker framework provides monitoring, analysis, and visualization support for performance evaluation and reverse engineering of the software architecture of existing software systems. We released preliminary support for Python with Kieker in 2022, and we achieved another milestone in September 2024, the 2.0.0 release of Kieker. We are furthering the effort on Kieker for OpenTelemetry (OTel) interoperability using Kieker's Instrumentation Record Language (IRL). Kieker IRL allows its users to define new record types, and we extend its feature to define a new OpenTelemetry Export, which translates OTel traces into Kieker records.

We propose a hackathon event for scientists interested in monitoring and analyzing a research software written in Python. Participants will have the opportunity to utilize both Kieker and OpenTelemetry to understand this research software. The hackathon consists of two hands-on practices that require a personal laptop with an Internet connection. First, we ask participants to instrument an example Python application with OpenTelemetry. The software's execution will send all traces to a Kieker analysis pipeline. The Kieker analysis results allow for reverse engineering and program comprehension of the provided research software, which will (probably) be unknown to the participants, before the hackathon. Afterwards, they should have an overview of the research software's architecture.

It is a guided practice, and we will provide materials to obviate unnecessary barriers. Second, we will provide another real-world Python research software with increased challenges. The question will consist of several sub-questions so that participants will make step-by-step progress. Lastly, we will conduct an online survey as part of SustainKieker action research.

SustainKieker is funded by the Deutsche Forschungsgemeinschaft (DFG – German Research Foundation), grant no. 528713834.

Primary authors

Shinhyung Yang (Software Engineering Group, Department of Computer Science, Kiel University) Wilhelm Hasselbring (Software Engineering Group, Department of Computer Science, Kiel University)

Presentation materials