Angebotene Studienarbeiten (U. Aßmann, A. Ludwig)
Stand $Date: 2000/02/11 17:06:18 $
Interaktive Steuerung von Programmtransformationen in integrierten
Entwicklungsumgebungen (Wizards)
Programmtransformationen mit
Entwurfsmustern können im Vorwärtsentwurf dazu dienen, Software
systematischer zu entwickeln und zu dokumentieren. Aufbauend auf der in
Karlsruhe entwickelten Entwurfsmuster-Bibliothek COMPOST soll ein Assistent
entwickelt werden, der in eine integrierte Entwicklungsumgebung eingesetzt
werden kann (Together/Java, JBuilder).
Voraussetzung: Grundkenntnisse im objektorientierten Programmieren sowie
GUIs.
Effiziente Implementierung von Anfragen in Graph-Datenbanken
Das
Graphersetzungswerkzeug OPTIMIX übersetzt eine regelbasierte
Spracherweiterung von Java oder C nach Standard-Java
bzw. Standard-C. Für das Werkzeug ist eine alternative
Codegenerierungsmethode zu implementieren, die mit Bitmatrizen arbeitet. Der
Vorteil der Methode ist, dass ihr asymptotischer Aufwand nicht von der Menge
der Graphersetzungsregeln abhängig ist.
Voraussetzung: Gute Programmierkenntnisse in C.
C++-Anschluss von COMPOST
COMPOST, die Entwurfsmuster-Bibliothek der
Universität Karlsruhe, besteht aus einer Menge von
Programmtransformationen, die auf einem abstrakten Syntax-Graphen
arbeiten. Dieses Datenmodell ist sprachübergreifend. Dazu soll ein
Parser mit Graph-Aufbau implementiert werden, der C++-Programme in das
Datenmodell übersetzt.
Voraussetzung: Grundkenntnisse im Übersetzerbau, Java, C++.
Sather-Anschluss von COMPOST
COMPOST, die Entwurfsmuster-Bibliothek der
Universität Karlsruhe, besteht aus einer Menge von
Programmtransformationen, die auf einem abstrakten Syntax-Graphen
arbeiten. Dieses Datenmodell ist sprachübergreifend. Dazu soll ein
Parser mit Graph-Aufbau implementiert werden, der Sather-Programme in das
Datenmodell übersetzt.
Voraussetzung: Grundkenntnisse im Übersetzerbau, OO-Sprachen.
Visuelle Spezifikation von Optimierungen
Am Lehrstuhl Goos existiert ein Generator für Programmoptimierungen,
OPTIMIX. Mit OPTIMIX können klassische Programmoptimierungen mit Hilfe
von Graphersetzungssystemen spezifiziert werden.
Die Studienarbeit beschäftigt sich damit, ein visuelle Schnittstelle
für die Spezifikation zu erstellen. Dies soll auf der Basis von Tcl/Tk
geschehen. Dazu ist ein Editor für Graphersetzungssysteme zu erstellen,
der OPTIMIX-Spezifikationen erzeugen kann.
Voraussetzung:
Kenntniss in Java und Benutzerschnittstellen sind wünschenswert.