Ideen für die Zukunft

Das Programm schneller, effizienter, fehlerfreier und funktionsfähiger zu machen ist eine Sache. Das andere ist es wirklich neue Ideen zu verwirklichen. Xdobry könnte als eine Basis für die Entwicklung von unterschiedlichen DB-Applikationen dienen. Das wird durch den Entwurf als offenes System und die Benutzung von XML als Schnittstelle ermöglicht. Auf der Basis des System könnten weitere DB-Applikationen entwickelt werden wie: graphischer Abfrage-Editor, Berichts-Generator, Entwurf-Werkzeuge, ER-Diagramm Editor. Ohne einer großen Aufwand lässt sich der Schema-Editor in ein Werkzeug für die Administration der Data Dictionary umwandeln. Das komplette relationale Schema könnte dann zuerst im Schema-Editor entwickelt und nachträglich als SQL-Anweisungen an den RDBMS geschickt werden. Für die praktische Arbeit mit dem System wäre die Möglichkeit der nachträglichen Anpassung der Schema sehr wichtig. Im Idealfall sollte das System die Veränderungen an der Schema automatisch erkennen und an das Repository und andere DB-Applikationen weiter geben.

Man könnte die Entwicklung der DB-Applikationen in allgemeineren Bezug zu Repository-Systemen stellen. Vielversprechend ist die Standardisierung der Objekt Management Group (OMG), bekannt auch von der Standardisierung der Objektorientierten-DBMS und CORBA (Common Object Request Broker). Es wurde ein Standard für den Zugriff auf Meta-Daten (MOF Meta-Objekt Facility) erarbeitet. Die Meta-Daten werden mit Hilfe der UML-Sprache beschrieben. Diese Beschreibungen können als XML-Dokumente (XMI XML Metadat Interchange) abgelegt werden. Die Formulare könnten nicht auf das relationale Schema zugreifen sonder auf CORBA-Objekte, das wäre eine Entwicklung in der Richtung Objekt-Datenbanken.

Als der kleinste Nenner für relationale Datenbanken wurde SQL-92 Standard und mysql gewählt. Viele der Probleme, bzgl. der beschränktet Typbildungmöglichkeiten, wurden in SQL99 Standard gelöst. Es bleibt vorerst abzuwarten bis die verfügbaren RDBMS diesen Standard unterstützen. Interessant könnte die Implementierung von objektrelationalen Eigenschaften des populären Datenbank Postgres sein. Viele von denen decken sich mit SQL3 Standard.

  1. Listen Attribute

  2. Tupel können per OID (Objectidentifier) identifiziert werden

  3. Versionifizierung

  4. Datenbank-Regel

Es existieren auch 2 interessante Projekte zur Beschreibung der graphischer Benutzerschnittstelle als XML-Dokumente. Einer davon stammt als Nebenprodukt der Entwicklung von Open Source Netscape (Mozilla). Es ist XPToolkit ("http://www.mozilla.org/xpfe), die Benutzerschnittstelle können plattformunabhängig als XML-Dokumente (XUL XMl UserInterface Language). Ein anderer Projekt in mit dem graphischen Editor für die Entwicklung von graphischen Benutzerschnittstellen GLADE http://glade.pn.org verbunden. Es ist ein Teil des GNOME Projekt, freies Desktop Enivronment für LINUX. Die Idee bei der beiden Projekten ist, dass das Aussehen der graphischen Benutzerschnittstelle nicht festkodiert im Programm ist, sondern immer als ein XML-Dokument vorliegt. Das könnte eine bessere und flexible Konfigurierbarkeit der Schnittstelle durch den Benutzter erlauben, ohne das Programm neukompilieren zu müssen. Die beide Projekte sind um so mehr wertvoll, dass die komplette Quelltexte frei sind und die verfügbare Komponenten auch bei fremden Projekten verwendet werden können. Die Entwicklung von Formular-Editor und Formular-Server könnte davon profitieren.

Es existieren auch weitere interessante Techniken, die mit XML-Standard verbunden sind. Durch die Extensible Stylesheet Language (XSL) lässt sich die Umwandlung von XML-Dokumenten in andere XML-Klassen oder andere Formate automatisieren. So könnte man Umwandlung des Repository in konkrete SQL-Anweisungen (des Typs CREATE TABLE) leicht realisieren.

Der Hauptnachteil der DTD (Document Type Defintion) ist das sie keine kontextbezogenen Regel erlauben und zweiten nicht im XML selbst kodiert sind. Mit DTD kann nicht gewährleistet werden das ein wohlgeformtes Repository auch ein gültiges relationales Schema darstellt. Die neueren Entwicklungen wie XML-Schema erlauben eine genauere Definition der Dokument-Typen und Überwindung solcher Nachteile.

Eine andere Richtung für die Weiterentwicklung des Systems wäre die Unterstützung von weiteren Abstraktionen und Semantik in Schema-Editor und anschließend beim Formular-Server. Hier sind zwei Fälle vorstellbar: 1. das System bietet eine Schnittstelle auf die Zusatzfunktionen der DBMS wie Versioniefizierung, neue Datentypen, DB-Regel (Trigger) 2. Das System implementiert selbst neue Funktionalitäten wie Versioniefizierung, Authentiefizierung, Integrität Regel, kaskadierendes Löschen. Für den konzeptionelles Modell wäre die Unterstützung von weiteren Abstraktionen denkbar: abgeleitete Attributen, abgeleitete Beziehungen, abhängige Beziehungen (z.B ein Mitarbeiter kann nur an dem Projekt teilnehmer wenn er die speziellen Qualifikationen hat)., Darstellung und Manipulation von Baumstrukturen, die als Tabellen abgelegt sind.