Diese Arbeit beschäftigt sich mit einem Problem, das durch einen Paradigmenwechsel in der Verwaltung von Massendaten entstanden ist. Waren bis vor kurzem relationale Datenbanken das Medium der Wahl, um große, strukturierte Datenmengen zu verwalten, so drängen zunehmend objektorientierte Datenbanksysteme in den Markt, die sich vom Konzept der Datenverteilung auf normalisierte, flach strukturierte Tabellen lösen und stattdessen Objekte der modellierten Welt direkt abbilden. D.h. die Objekte können in ihrer Gestalt beliebig komplex werden und sie besitzen die gleichen Eigenschaften, wie sie aus objektorientierten Programmiersprachen bekannt sind, wie z.B. Vererbung, Aggregation, Assoziationen zu anderen Objekten. Die Sprachen zur Manipulation solcher Objektdatenbanken sind oft dieselben, in denen objektorientierte Software entwickelt wird, so daß die Grenzen zwischen Anwendungsprogramm und Datenbank zunehmend verschwinden.
Aufgrund ihrer zahlreichen Vorteile hinsichtlich Übersichtlichkeit, Erweiterbarkeit und Wartungsfreunlichkeit setzen sich zunehmend objektorientierte Programmiersprachen für die Entwicklung von Anwendungssoftware durch. Gleichzeitig ist aber der Trend zur Massendatenhaltung in altbewährten relationalen Datenbanken ungebrochen. Für den Anwendungsentwickler ergibt sich damit das Problem, daß zwei sehr unterschiedliche Datenmodelle innerhalb derselben Anwendung integriert werden müssen.
Im Rahmen dieser Arbeit wird daher untersucht, welche Probleme sich beim Zugriff auf relationale Datenbanken mit Mitteln objektorientierter Programmiersprachen stellen. Anhand ausgewählter Beispiele wird festgestellt, wie man diese zu lösen versucht. Ausgehend von diesen Lösungsansätzen wird dann für eine konkrete objektorientierte Programmierumgebung (Tycoon-2), ein Framework implementiert, das einen Teil der identifizierten Probleme löst. Diese Arbeit erhebt bewußt keinen Anspruch auf eine vollständige Behebung aller Schwierigkeiten, die bei der Kommunikation zwischen der relationalen und objektorientierten Welt auftreten können, da diese Problematik einerseits sehr vielschichtig ist und andererseits die Anforderungen an sogenannte objektrelationale Middleware sehr stark von ihrem geplanten Einsatzzweck abhängen. Die Arbeit soll für die Schwierigkeiten sensibilisieren, mit denen man bei der Entwicklung objektrelationaler Software konfrontiert wird und sie soll Lösungsmöglichkeiten aufzeigen ohne dabei Anspruch auf die Patentlösung schlechthin zu erheben.
Letzte Aktualisierung: Mittwoch, 13. September 2000