In der Softwareentwicklung werden Komponenten, die
häufig wiederverwendet werden, in Bibliotheken
ausgelagert. Statische Programmanalyse beschäftigt
sich mit der Methodik Programme automatisch und ohne
ihre Ausführung zu analysieren.
Software-Reengineering benutzt statische
Programmanalyse, um Wissen aus dem Quellcode zu
gewinnen. Leider gehen viele Analysen davon aus, dass
das zu analysierende Programm samt den benutzten
Bibliotheken vorliegt. Diese Annahme ist oft falsch.
Benutzerprogramme können nicht mit Bibliotheken
analysiert werden, da die Skalierbarkeit die Analyse
in der Regel nicht zulässt oder Bibliotheken nur ohne
Quellcode existieren.
Diese Arbeit betrachtet modulare Ansätze und gliedert
sich in drei Teilen. Theoretisch werden existierende
Ansätze evaluiert sowie nach weiteren Ansätzen
gesucht. Die Fragment-Analyse von Rountev wurde
umgesetzt und verbessert. Sie wurde auch erweitert
für die Objektorientierung. Die Rollenpropagierung
von Staiger wurde benutzt, um die
Aufrufgraphkonstruktion mit Bibliotheken zu
verbessern. Anschließend wurden die Resultate der
Fragment-Analyse und der Rollenpropagierung
evaluiert.
häufig wiederverwendet werden, in Bibliotheken
ausgelagert. Statische Programmanalyse beschäftigt
sich mit der Methodik Programme automatisch und ohne
ihre Ausführung zu analysieren.
Software-Reengineering benutzt statische
Programmanalyse, um Wissen aus dem Quellcode zu
gewinnen. Leider gehen viele Analysen davon aus, dass
das zu analysierende Programm samt den benutzten
Bibliotheken vorliegt. Diese Annahme ist oft falsch.
Benutzerprogramme können nicht mit Bibliotheken
analysiert werden, da die Skalierbarkeit die Analyse
in der Regel nicht zulässt oder Bibliotheken nur ohne
Quellcode existieren.
Diese Arbeit betrachtet modulare Ansätze und gliedert
sich in drei Teilen. Theoretisch werden existierende
Ansätze evaluiert sowie nach weiteren Ansätzen
gesucht. Die Fragment-Analyse von Rountev wurde
umgesetzt und verbessert. Sie wurde auch erweitert
für die Objektorientierung. Die Rollenpropagierung
von Staiger wurde benutzt, um die
Aufrufgraphkonstruktion mit Bibliotheken zu
verbessern. Anschließend wurden die Resultate der
Fragment-Analyse und der Rollenpropagierung
evaluiert.