TY - THES AB - Das rasante Wachstum von Data Science und maschinellem Lernen hat Python zu einer zentralen Sprache in der modernen Forschung gemacht, insbesondere in rechnergestützten Umgebungen wie Jupyter Notebooks. Während diese Notebooks die Exploration erleichtern, führt ihre interaktive Natur häufig zu unstrukturiertem und undokumentiertem Code, der die Reproduzierbarkeit und das Verständnis erschwert. Verschärft wird dieses Problem dadurch, dass bestehende Werkzeuge zur Codenavigation und Refaktorierung vor allem auf statischer Analyse beruhen. Diese Methoden haben jedoch Schwierigkeiten mit der dynamischen Natur von Python und erzielen oft zu geringe Präzisions- und Recall-Werte für einen praktischen Einsatz. Diese Dissertation begegnet diesen Herausforderungen durch die Einführung neuartiger Ansätze der statischen Analyse sowie systematischer Benchmarking-Frameworks für Python und ermöglicht damit letztlich die semantische Strukturierung von Notebooks, die verlässliche Evaluation von Typinferenzsystemen und eine kritische Analyse von Large Language Models (LLMs) für Aufgaben der statischen Analyse.Um dem Mangel an Struktur in Notebooks zu begegnen, entwickeln wir eine heuristikbasierte Call-Graph-Analyse für Python, die das besondere Verhalten von Machine-Learning-Bibliotheken modelliert und Typannotationen aus externen Abhängigkeiten nutzt. Auf Grundlage dieses erweiterten Codeverständnisses führen wir HeaderGen ein, ein Werkzeug, das undokumentierte Jupyter Notebooks automatisch in navigierbare, semantisch bezeichnete Narrative segmentiert. Unsere Evaluation mit realen Notebooks zeigt, dass die zugrunde liegende Analyse sowohl für die Konstruktion von Call Graphs als auch für die Klassifikation von Notebook-Zellen entsprechend ihrer semantischen Rolle im Machine-Learning-Workflow hohe Präzisions- und Recall-Werte erzielt. Darüber hinaus bestätigt eine Nutzerstudie, dass die resultierende Struktur das Codeverständnis und die Navigation für Data-Science-Praktiker deutlich beschleunigt.Über die Entwicklung einzelner Werkzeuge hinaus erfordert der Fortschritt des Fachgebiets verlässliche Methoden zur Messung der Fähigkeiten der zugrunde liegenden Analysetechniken; die aktuelle Evaluationslandschaft ist jedoch fragmentiert und stützt sich auf nicht verifizierte Datensätze. Um diese Lücke zu schließen, führen wir TypeEvalPy ein, ein umfassendes Benchmarking-Framework für Python-Typinferenz mit 154 Testfällen, das eine kontrollierte Umgebung mit manuell kuratierten Codefragmenten und verifizierter Ground Truth bereitstellt. Unsere empirische Studie von sechs repräsentativen Werkzeugen zeigt erhebliche Leistungsunterschiede. Während HeaderGen die ausgewogensten Ergebnisse aufweist, überzeugen Open-Source-Werkzeuge wie \emph{Pyright} durch ihre Integration in das Ökosystem, zeigen jedoch keine konsistente Leistung über verschiedene Szenarien hinweg. Im Gegensatz dazu zeigen lernbasierte und hybride Systeme, dass probabilistische Vorhersagen die statische Analyse ergänzen können; sie bleiben jedoch weiterhin durch ihre Trainingsverteilungen eingeschränkt.Schließlich erweitern wir, im Bewusstsein des Paradigmenwechsels hin zu generativer KI, unsere rigorose Evaluationsmethodik, um die Fähigkeiten von LLMs zu bewerten. Um die Generalisierbarkeit einem Stresstest zu unterziehen, erweitern wir TypeEvalPy um eine Engine zur automatischen Generierung, die den Benchmark auf 7.121 Testfälle skaliert, und führen SWARM-CG ein, eine mehrsprachige Suite für die Call-Graph-Analyse. Unsere Evaluation von 24 LLMs zeigt eine divergierende Leistungsfähigkeit: LLMs sind bei der Typinferenz stark, haben jedoch Schwierigkeiten bei der Konstruktion von Call Graphs, einem Bereich, in dem traditionelle Analysatoren weiterhin überlegen sind. Diese Ergebnisse legen nahe, dass die Zukunft von Python-Werkzeugen nicht in einer Ersetzung, sondern in einer hybriden Integration liegt, bei der statische Analyse die strukturelle Grundlage liefert, die lernbasierten Methoden typischerweise fehlt. AU - Shivarpatna Venkatesh, Ashwin Prasad CY - Paderborn DO - 10.17619/UNIPB/1-2559 DP - Universität Paderborn LA - eng N1 - Tag der Verteidigung: 21.04.2026 N1 - Universität Paderborn, Dissertation, 2026 PB - Veröffentlichungen der Universität PY - 2026 SP - 1 Online-Ressource (xiv, 119 Seiten) : Diagramme, Illustrationen T2 - Institut für Informatik TI - Advances in Python Call-Graph Construction and Type Inference: A Benchmark-Driven Approach UR - https://nbn-resolving.org/urn:nbn:de:hbz:466:2-57956 Y2 - 2026-06-29T22:06:16 ER -