![]() |
StudienarbeitKonzeption und Generierung eines Resource-Flow-Graphs für Cobol |
Hintergrund |
Das Bauhaus-Projekt unterstützt das Programmverstehen durch
Entwicklung geeigneter Werkzeuge sowohl auf der Quellcode-Ebene
als auch der Architekturebene. Für die Architekturrekonstruktion
genügt in der Regel eine kondensierte Darstellung des Systems in
Form eines so genannten Resource-Flow-Graphen (RFG). Der RFG
stellt die relevanten Fakten des Systems dar, die sich direkt aus
dem Quellcode ableiten lassen. Dazu gehören globale Deklarationen
und deren Relationen sowie Dateien und Verzeichnisse und die
dazugehörige ist-enthalten-in Relation. Der RFG repräsentiert
darüber hinaus auch Konzepte der Software-Architektur, wie z.B.
Komponenten und Konnektoren. Der RFG ist gegenwärtig für die Repräsentation von C-Programmen ausgeprägt. Ein von uns selbst entwickeltes Compiler-Frontend für C, ein globaler Linker und eine nachfolgende Resource-Flow-Analyse generieren den RFG für C-Programme. Zur Visualisierung und Manipulation der im RFG enthaltenen Informationen steht uns ein Grapheditor zur Verfügung. Wir möchten nunmehr unsere Techniken zur Architekturrekonstruktion auch auf Cobol-Programme ausdehnen. Dazu benötigen wir eine adäquate Modellierung von Cobol-Konstruktionen im RFG sowie eine Generierung von RFGs für Cobol. |
Aufgabenstellung |
In dieser Studienarbeit soll eine Modellierung von
Cobol85-Konstrukten im RFG entwickelt werden. Außerdem soll ein
existierendes Cobol85-Frontend um die Generierung eines RFGs für
Cobol85 erweitert werden. Die Auswahl des Frontends ist dem
Bearbeiter überlassen. Die Lizenz des ausgewählten Frontends muss
jedoch mit der Bauhaus-Lizenz verträglich sein. Ein Kandidat für
ein Frontend ist im Grammar Deployment Kit (GDK) enthalten
(http://gdk.sourceforge.net). Die Ansprüche an die Qualität der Implementierung sind hoch. Es soll ein tatsächlich verwendbares Werkzeug entwickelt werden. Vollständige Dokumentation und ein umfangreicher systematischer Test sind deshalb Teil der Aufgabenstellung. Eine Test-Suite für Cobol85 ist unter http://www.itl.nist.gov/div897/ctg/cobol_form.htm verfügbar. |
Implementierungs- |
Ada95-Compiler Gnat, Concurrent Version System (CVS). |
Voraussetzungen |
Kenntnisse in Ada95. Wissen über Compiler-Frontends, wie es in der Compilerbau-Vorlesung vermittelt wird, wäre von Vorteil. |
Betreuer |
Dr. Rainer Koschke (Zi. 1.212) |
|
Last modified: Mon Aug 25 11:32:20 MET 2003
admin@droste.informatik.uni-stuttgart.de |