hide random home http://idom-www.informatik.uni-hamburg.de/Style/entry.html (Einblicke ins Internet, 10/1995)

These pages are not yet available in their final form

Programmieren mit STYLE - Über die systematische Entwicklung von Programmierumgebungen

Das STYLE (Systematics of TYped Language Environments) Projekt erforscht die Grundlagen für eine systematische Entwicklung von Programmierumgebungen für datenintensive Anwendungen, indem Ergebnisse aus den Bereichen Modellformalisierung, Sprachentwicklung und Systemkonstruktion zueinander in Beziehung gesetzt werden.

Technologische Veränderungen und marktwirtschaftliche Erfordernisse spiegeln sich in zunehmend komplexer werdenden Systemumfeldern für Informationssysteme sowie in erhöhten Ansprüchen an Datenmodellierungstechniken wider. Die folgenden drei Hauptanforderungen setzen den Rahmen für die vorliegende Arbeit.

Informationssysteme bilden heute eine Hauptkomponente jeder größeren Informatikanwendung. Daraus resultiert die Forderung nach flexibler, effizienter und korrekter Kommunikation zwischen den dem Informationssystem zugrundeliegenden Datenbankservern und weiteren, von Spezialanbietern produzierten Systemdiensten. Eine Datenbankprogrammierumgebung muß daher die offene und typsichere Kombinierbarkeit externer Dienste in einem homogenen sprachlichen Rahmen ermöglichen (Add-on-Ansatz). Neuartige Anwendungsbereiche persistenter Datenhaltung (Multi-media, CAD, Geographie, ..) führen zu der Notwendigkeit neuer Modellierungsweisen. Die Umgebung muß daher unterschiedliche, anspruchsvolle Datenmodelle auf einem wiederverwendbaren Umgebungskern bereitstellen. Traditionell wird die Datenbankprogrammierung durch eine spezielle Datenmodellschnittstelle, die durch ein Datenbankmanagementsystem (Built-in-Ansatz) realisiert ist, und einer datenmodellspezifischen CASE-Umgebung unterstützt. Add-On-Programmierumgebungen sollten Built-In-Systemen weder in Funktionalität noch Operabilität nachstehen.

Ziele der Arbeit sind die Entwicklung einer Methodik zum Aufbau von Programmierumgebungen, die Herausarbeitung von Technologien und Hilfsdiensten zu deren Konstruktion sowie die Festlegung der Architektur einer Gesamtumgebung, die den Aufbau verschiedener Programmierumgebungen sowie Anwendungsrealisierungen einschließt.

Die vorgestellte Methodik geht dreistufig vor, von der Konzeption der Modellierungsmittel über deren Formalisierung hin zu der Spezifikation ihrer Instrumentierung. Wesentliche technologische Mittel für die Instrumentierung der Datenmodellfunktionalität sind Generatoren und generische Dienste, die die semantischen Lücke zwischen einer komplexen Modellsemantik und den Konzepten einer Kernprogrammiersprache überbrücken. Die Operabilität der Programmierumgebung wird durch die Bereitstellung einer datenmodellspezifischen CASE-Umgebung gewährleistet, wobei die Integration einzelner CASE-Werkzeuge durch Verwendung einer Metadatenbank wesentlich unterstützt wird. Hohe Wiederverwendbarkeit von Diensten ist dadurch gewährleistet, daß in der Gesamtumgebung die Grenzen zwischen Anwendungs-, Werkzeug- und Systemsoftware fließend werden. Eine Gesamtumgebung für verschiedene Datenmodellrealisierungen wird neben einer horizontalen Schichtung mit kern-, datenbank- und datenmodellspezifische Ebenen in vertikale Funktionalitäts-, Operabilitäts- und Modalitätskomponenten gegliedert.

Die entwickelte Gesamtkonzeption für einen systematischen Aufbau von Programmierumgebungen wurde durch die Realisierung einer Entwurfsumgebung für die objektorientierte Datenbankprogrammierung auf der Grundlage des objektorientierten Datenmodells OM1 prototypisch verifiziert. Die Instrumentierung wurde im Rahmen des integrierten Programmiersystems Tycoon vorgenommen, das mit der Bereitstellung einer Kernsprache TL mit hochabstrakter Funktionalität (Polymorphie, Subtypisierung, Funktionen höherer Ordnung), eines Persistenz-, Modul- und Bibliothekskonzeptes sowie der Unterstützung reflektiver Programmierung sowohl die obengenannten Anforderungen zufriedenstellt als auch optimale Grundlagen für den schrittweisen Aufbau von Umgebungen gemäß der vorgestellten Technologien legt. Screen snapshots:


Ingrid Wetzel (14-feb-1994)