zurück zur Startseite der Softwaretechnik-Trends , zu Band 20 Heft 1

UniBw München

Universität der Bundeswehr München
Institut für Softwaretechnologie
AG Grundlagen des Software-Engineering

Prof. Dr. Gunther Schmidt



Arbeitsschwerpunkte

Ausgehend vom Gebiet der Programmiersprachen werden Semantik von Programmiersprachen, Methoden der Programmgenerierung und Programmierkalküle studiert und dabei u.a. folgende Gebiete berührt:


Programmiermethodik und Programmtransformation

Zunehmend möchte man Programme auf einer sehr hohen Abstraktionsebene konzipieren. Sie können dann noch in mathematischer Strenge modifiziert und manipuliert werden, ehe sie durch Generatoren ihre Ausprägung in einer höheren oder niederen Programmiersprache erfahren. Von den theoretischen Grundlagen her erarbeiten wir semantische Konzepte für die Erstellung solcher Software und erproben sie modellmäßig. Praktisch umgesetzt werden rechnergestützte Erzeugung von Software und transformierende Entwicklung von Programmen aus (präalgorithmischen) Spezifikationen mit Hilfe des Programmtransformationssystems HOPS.


Relationale Methoden in der Informatik

Ausgehend von der Erkenntnis, dass zunehmender Abstraktionsgrad in Spezifikation und Komposition sich auch in der mathematischen Modellierung niederschlagen muss, propagieren wir vermehrten Einsatz relationaler Methoden in allen Bereichen der Informatik. Die Kompaktheit der Notation, die im Vergleich zu prädikatenlogischen Ansätzen höhere Abstraktionsebene, sowie die intuitivere Zugänglichkeit voll formaler Beweise prädestinieren relationenalgebraische Ansätze für Formalisierungsbestrebungen in weiten Bereichen der Softwaretechnologie. Auch im Kontext der Programmiermethodik ergeben sich immer wieder diskrete kombinatorische und graphentheoretische Probleme, für deren Bearbeitung wir relationale Methoden entwickeln.


Visuelle Compiler-Compiler

Die Vorgänge bei der Generierung und beim Einsatz von Compilern bleiben dem Anwender für gewöhnlich verborgen. Vor allem für die Ausbildung ist es daher nützlich, visuelle Compiler-Compiler ähnlich Debuggern zu verwenden, welche ihre internen Informationen visualisieren und die Abläufe so weit wie möglich durch Benutzer zu steuern gestatten. Besonders wichtig ist uns die ergonomische Gestaltung der Mensch-Maschine-Schnittstellen von Compiler-Compilern sowohl für Demonstrationmodelle als auch für Produktionssysteme: Moderne Compilertechnologie wird heute nicht nur in ihrem angestammten Bereich eingesetzt, sondern gewinnt auch als Basiswerkzeug in Bereichen der netzgestützten Dokumenten- und Datenverarbeitung, wie z.B. XML und EDI, zunehmend an Bedeutung.


Projekte

RelMiCS-Initiative

Im Januar 1994 konnte auf eigene Idee und mit Unterstützung der Deutschen Forschungsgemeinschaft ein einwöchiges ``International Seminar on Relational Methods in Computer Science'' in Schloss Dagstuhl mit 38 Wissenschaftlern aus allen Kontinenten und aus durchaus verschiedenen Disziplinen veranstaltet werden. In gemeinsamer Anstrengung wurde ein Buch (nicht nur ein Proceedings-Band) erarbeitet. Diesem folgten bereits 2 weitere Bände aus den Folgetreffen in Parati bei Rio de Janeiro (Sept. 1995) und in Hammamet (Tunesien, Jan. 1997); weitere Treffen fanden bisher in Warschau (Sept. 1998) und Québec (Jan. 2000) statt.

Aus dieser Bündelung relationaler Interessen heraus sind bereits einige spezialisiertere Initiativen hervorgegangen, unter denen wir besonders an der Organisation von Workshops im Bereich relationaler Methoden im Software-Engineering und an internationalen Kooperationen zur expliziten Verwendung relationenalgebraischer Methoden in Bereichen der Wissensrepräsentation beteiligt sind.


Programmierkalküle

Wir setzen ein ursprünglich von der DFG gefördertes Projekt zur graphisch-interaktiven Programmierung mit höheren Objekten fort; ein Schwerpunkt dieser Arbeiten ist die Erstellung des generischen Rahmenwerkes HOPS für typisierte Kalküle mit Variablenbindung. Zur Zeit arbeiten wir zudem an der Schaffung eines allgemeinen Interoperabilitätsrahmens, der die Kooperation unterschiedlicher Programmierkalküle auf dem Meta-Level zu formalisieren gestattet.


Veröffentlichungen

1.
C. Brink, W. Kahl, G. Schmidt (eds.). Relational Methods in Computer Science. Advances in Computing Science. Springer-Verlag, Wien, New York, 1997. ISBN 3-211-82971-7.

2.
B. Demuth, H. Hussmann, L. Schmitz, S. Zschaler. Erfahrungen mit einem frame workbasierten Softwarepraktikum. In Tagungsband des 6. Workshops Software-Engineering im Unterricht der Hochschulen. B. G. Teubner, Stuttgart, 1999.

3.
Frank Derichsweiler. Strategiegesteuerte Programmtransformation im Higher Object Programming System HOPS. In GI, Informatiktage 1999. Konradin Verlag, 1999.

4.
I. Düntsch, G. Schmidt, M. Winter. A Necessary Relation Algebra for Mereotopology. Studia Logica, 1-18 (1999).

5.
A. Joaua, G. Schmidt (eds.). Special Issue on the 3rd Int. Seminar on Relational Methods in Computer Science. Information Sciences 119 (3/4) (1999).

6.
W. Kahl. Relational Treatment of Term Graphs With Bound Variables. Journal of the IGPL 6 (2), 259-303 (1998).

7.
W. Kahl. Internally Typed Second-Order Term Graphs. In WG '98, LNCS 1517, S. 149-163. Springer-Verlag, 1998.

8.
W. Kahl. The Term Graph Programming System HOPS. In R. Berghammer, Y. Lakhnech (eds.), Tool Support for System Specification, Development and Verification, Advances in Computing Science, S. 136-149. Springer, Wien, 1999.

9.
W. Kahl. Relational Matching for Graphical Calculi of Relations. Information Sciences 119 (3-4), 253-273 (1999).

10.
Lothar Schmitz. Syntaxbasierte Programmierwerkzeuge. B. G. Teubner, Stuttgart, 1995.

Produkte und Werkzeuge

HOPS:

Das ``Higher Object Programming System'' HOPS ist ein graphisch-interaktives Programmier- und Programmtransformationssystem, das die Programmstruktur in der Form von streng typisierten Termgraphen direkt zugänglich macht. HOPS ist ausgelegt für transformationelle Programmentwicklung, bei der das Software-Endprodukt ausgehend von abstrakten Spezifikationen und Algorithmenformulierungen durch semantikerhaltende Transformationsschritte hergeleitet wird, mit dem Ziel der korrekten Programmentwicklung. Weitere Informationen unter der URL:

http://ist.unibw-muenchen.de/HOPS/


Jaccie:

Aufbauend auf dem mit dem Deutschen Hochschul-Software-Preis der ASK ausgezeichneten Vorsystem SIC enthält Jaccie einen Werkzeugsatz mit Scannergenerator, verschiedenen Parsergeneratoren, Editoren für Grammatiken und Attributierungen, interaktiven Debugging-Werkzeugen für alle Phasen, Informationsfenstern für Grammatikinfos und Automaten in Klartextdarstellung. Auf Knopfdruck entstehen Java-Quelltexte von Scannern und Parsern, die in andere Anwendungen eingebunden werden können. Weitere Informationen unter der URL:

http://ist.unibw-muenchen.de/Tools/JACCIE/


SalesPoint Framework (mit TU Dresden):

Es ist nicht einfach, Studenten vor dem Vordiplom in einer Veranstaltung Teamarbeit, Prinzipien systematischer Software-Entwicklung, neue Sprachen, Entwicklungs- und Dokumentationswerkzeuge nahezubringen. Die Grundidee, als gemeinsame Basis für die Studentenprojekte ein Framework (das die Erstellung von Verkaufsanwendungen unterstützt) zu verwenden, bringt eine Reihe von Vorteilen mit sich:


Kontaktadresse:

Prof. Dr. Gunther Schmidt
Institut für Softwaretechnologie
Universität der Bundeswehr München
85577 Neubiberg
Tel.: (089) 6004-2249/-2263
email: schmidt@informatik.unibw-muenchen.de
URL: http://ist.unibw-muenchen.de/schmidt/



zurück zur Startseite der Softwaretechnik-Trends , zu Band 20 Heft 1