Technische Universität München, Institut für Informatik 

Softwareentwicklungsprojekt bei sd&m Research:
Implementierung eines Metamodells zur Objekt/Relationalen Abbildung für das Quasar Database Interface (QDI)


Thematische Einordnung:

Das Quasar-Projekt (QUAlity Software ARchitecture) hat das Ziel, im Rahmen einer Musterarchitektur Lösungen für Kernfragen der Architektur betrieblicher Informationssysteme bereitzustellen. Diese Lösungen können vollständig oder als Bausteine verwendet werden. Die in Quasar vorgeschlagenen Lösungen haben ihren Ursprung in dem über viele Projekte gereiften Architekturwissen von sd&m. Die ARCUS-Resultate und Erfahrungen aus Projekten wie CAESAR oder DaRT sind Grundlage von Quasar, und auch aktuelle Entwicklungen wie EJB und XML fließen ein.
Das QDI (Quasar Database Interface) ist ein Teil von Quasar. Das QDI ist eine Zugriffsschicht für (relationale) Datenbanken. Es implementiert die Persistenz (Abspeicherbarkeit) von Anwendungsobjekten. Es besteht aus den folgenden Elementen:
a) drei Schnittstellen zur Manipulation, Transaktionskontrolle und Abfrage von Anwendungsobjekten,
b) zwei Beispielimplementierungen (Hauptspeicherdatenbank und JDBC-Umsetzung),
c) einer Liste von Design-Varianten, die sich auf der Basis der QDI mit planbarem Aufwand implementieren lassen.
Der Focus des QDI liegt auf objektorientierten Anwendungen (die Beispielimplementierungen sind in Java geschrieben) und relationalen Datenbanken. Die QDI-Gedanken lassen sich aber auch auf andere Welten gut übertragen. Spezielle Java-Funktionen (z.B. Refection), die in anderen Sprachen fehlen, werden bewusst nicht verwendet.
Die drei Schnittstellen der QDI sind minimal: Die Manipulationsschnittstelle enthält die drei Methoden insert, remove und update; die Transaktionsschnittstelle die drei Methoden beginTransaction, commit und rollback; mit die Abfrageschnittstelle formuliert man Suchbedingungen. Die QDI-Schittstellen sind so einfach, dass man jede Anwendung mit geringem Aufwand persistent machen kann. Die Idee lautet: Man programmiert die Anwendung, als gäbe es keine Datenbank - und fügt erst dann die wenigen QDI-Aufrufe ein.

Konkrete Aufgabenstellung:

Das Metamodell legt in der Zugriffsschicht fest, wie Anwendungsklassen auf Datenbanktabellen abgebildet werden. Es enthält die Abbildungsvorschrift. Das derzeit implementierte Metamodell des QDI kann nicht alle Varianten der Objekt/Relationalen Abbildung ausdrücken und ist nur für das QDI zugeschnitten.
Peng Li untersucht dies in seiner Diplomarbeit und erstellt ein neues durchgehendes Metamodell für die gesamte Quasar-Architektur.
Aufgabe des Praktikums ist der Austausch des bestehenden Metamodells des QDI durch das verbesserte Metamodell. Dazu sind folgende Umstellungen erforderlich:
Diese Praktikumsaufgabe ist anspruchsvoll. Sie setzt gute Kenntnisse von relationalen Datenbanken und SQL voraus.

Besonderheit:

Dieses Systementwicklungsprojekt findet bei sd&m Research statt

Betreuer:

Andreas Rausch, e-mail: rausch@informatik.tu-muenchen.de, Tel.: 289-22362, Zi. S 2214
Gerd Beneken, e-mail:gerd.beneken@sdm-research.de, Tel.: 089/63812-487, sd&m Research, Thomas-Dehler-Str. 18 , D-81737 München

Aufgabensteller:

Prof. Dr. Manfred Broy

Bearbeiter:

Ravindra Nath