Amerikanischer DBMS-Experte skizziert Zukunftsbild:

Am relationalen Modell führt kein Weg vorbei

11.09.1987

FRANKFURT (CW) - Das relationale Modell bleibt weiterhin der Eckpfeiler für die DBMS-Entwicklung. Auch künftige Datenbankgenerationen werden auf diesem in den 70er Jahren erstellten Konzept basieren. Systeme mit hierarchischer oder Netzwerk-Topologie müssen hingegen bereits heute als veraltet gelten. Dieses Fazit zog Michael Stonebraker, Professor an der Universität von Kalifornien in Berkeley, anläßlich eines Datenbanksymposiums des DBMS-Anbieters Relational Technology International (RTI) in Frankfurt.

"Relationale Systeme wären eine wunderbare Sache, wenn sie eine bessere Performance hätten", kritisiert Stonebraker die gegenwärtige Situation im Datenbankbereich. Hauptziel künftiger Entwicklungsarbeiten müsse es deshalb sein, DBMS-Produkte auf Schnelligkeit zu trimmen. Dezentralisierung ist für ihn einer der wichtigsten Mechanismen um diese Forderung in die Praxis umzusetzen. So erweise es sich beispielsweise als sinnvoll, Anwendungsprogramme nach Möglichkeit vom Host auf Workstations auszulagern und auf diese Weise eine bessere Performance auf dem Großrechner zu erzielen.

Wichtig ist es nach Ansicht des kalifornischen Professors und RTI-Mitbegründers vor allem, daß die Anwender ihre Zukunft selbst in die Hand nehmen. Vor allem bedeute dies, enge Herstellerbindungen abzubauen und auf Unabhängigkeit zu setzen. Gerade im Betriebssystem-Bereich bringe ein solches Abhängigkeitsverhältnis für den User ernsthafte Probleme mit sich, da es hier besonders schwierig sei, das Segel im Bedarfsfall wieder herumzuschwenken. Stonebraker: "Konkret bedeutet dies eine Entscheidung für Unix, und zwar nicht als Optimum aller denkbaren Möglichkeiten, sondern als einzige momentan im Mark verfügbare Lösung."

Allerdings, so der DBMS-Experte weiter, könne man sich der Realität nicht verschließen: Beim Anwender sei ein hohes Investitionsvolumen "an IMS- und ähnliche technologisch müde Produkte" gebunden (Originalton Stonebraker). Dies werde sich nur langsam und mit viel Mühe ändern. Ziel müsse es deshalb in jedem Falle sein, ein verteiltes DBMS heterogen auszulegen und durch Gateways auch Usern, die vorläufig an ein bestimmtes Produkt gebunden sind, einen Weg zur Herstellerunabhängigkeit zu zeigen.

Verteilte Verarbeitung ist für den Kalifornier auch unter Hardwaretechnischen Aspekten das Gebot der Stunde. Halte der Kunde nämlich weiterhin am Großrechner-Zentralismus fest, so könne er dies nur zu den Konditionen der IBM tun - und den entsprechenden Preis zahlen. Entschließe er sich hingegen, auf kleinere Maschinen umzusteigen, erlange er nicht nur mehr Flexibilität, sondern könne auch viel Geld sparen: "Single-Chip-Maschinen", so Stonebraker, "werden immer leistungsfähiger. Gleichzeitig liegen hier die Verarbeitungskosten wesentlich niedriger als im Mainframe-Bereich. Die Zukunft liegt deshalb in der Kopplung und Vernetzung von PCs. Schon bald dürfte eine Workstation zur Ausstattung jeden Arbeitsplatzes gehören, an dem mit Wissen oder Daten operiert wird."

Als logische Konsequenz dieser Entwicklung sähen sich die Datenbank-Management-Systeme mit neuen Anforderungen konfrontiert. Eine Schlüsselstellung komme hierbei den Funktionen Objektverwaltung und Knowledge Management zu. Regelbasierte Produkte würden bereits in fünf Jahren den State-of-the-Art repräsentieren.

Für Anwendungen im Bereich der Künstlichen Intelligenz sind laut Stonebraker aktive DB-Systeme geeignet, die nicht nur Expertenregeln speichern, sondern sie auch selbständig auf den vorhandenen Datenbestand anwenden.

Gegenwärtig arbeitet der Wissenschaftler an einem Konzept für eine neue Datenbankgeneration, die er "Postgres" nennt (siehe CW Nr. 49 von 5. Dezember 1986, Seite 15). Ziel des Forschungsvorhabens ist es, sechs Postulate zu verwirklichen, die Stonebraker zufolge richtungsweisend für künftige DBMS-Strukturen sein werden. Dabei handelt es sich im einzelnen um die Unterstützung komplexer Objekte; die Erweiterbarkeit der Datentypen, Operatoren und Zugriffsmethoden durch den Anwender; die Integration von Einrichtungen für aktive Datenbanken; die Vereinfachung des DB-Codes für Crash-Recovery; die Unterstützung vor optischen Speichermedien, Workstations mit mehreren gekoppelten Prozessoren und anwendungsspezifischen Halbleitern und die Übernahme des relationalen Modells.

Nur Systeme mit diesen Eigenschaften, so die These des DBMS-Gurus, sind flexibel genug, um sich neue Einsatzgebiete zu erschließen. Besonders wichtig sei dies für alle nichtkommerziellen Disziplinen, wo die relationalen Systeme vorläufig noch mit einer Reihe von Akzeptanzproblemen zu kämpfen hätten. So ließen sich beispielsweise CAD/CAM-Anwendungen nicht ohne Unterstützung komplexer Datenobjekte mit einem DB-System realisieren.

Parallel zu dem DB-Symposium wurde eine Ingres-Benutzergruppe für deutschsprachige Anwender ins Leben gerufen. Ihr Ziel soll es sein, den Erfahrungsaustausch zu fördern und den Informationsfluß zwischen Hersteller und Benutzern zu vereinfachen.

Tools können speziellen SW-Zuschnitt erleichtern

Ein Softwareprodukt, das für einen breiten Einsatz entwickelt wurde, muß auf den einzelnen Anwender zugeschnitten werden. Installationsprozeduren, Generatoren, Checklisten und andere Werkzeuge können diesen Vorgang weitgehend automatisieren. Insbesondere sind die Tabellen zu pflegen, die die anwenderspezifischen Werte enthalten sollen.

Besonderer Wert muß auf eine reibungslose Installation vor allem deshalb gelegt werden, weil sie am Anfang der Arbeiten mit dem neuen System liegt. Läuft die Installation schlecht, sind viele Rückfragen an den Lieferanten notwendig. Werden im Extremfall bei der Installation so gar eigene Daten vernichtet, so ist die für den Softwarebetrieb so nötige Vertrauensbasis und Akzeptanz sofort nachhaltig gefährdet.

Bei einem Softwareprodukt handelt es sich nicht um ein statisches System, denn es wird gepflegt und verbessert. Hierzu gehören Fehlerbehebungen, Anpassungen an systemtechnische Weiterentwicklungen und auch gesetzliche Anpassungen (wie zum Beispiel in der Steuergesetzgebung). Für den Anwender ist es von großer Bedeutung, wie diese Weiterentwicklungen übernommen und integriert werden können, was automatisch erfolgt, was manuelle Eingriffe erfordert, ob auch für Anwender-Software Remote-Maintenance angeboten wird.

Zur Sicherung der Wartung sind zunächst wirtschaftliche Gesichtspunkte des Anbieters zu bedenken. Nur bei einer guten Bonität des SW-Anbieters, bei einem mit Gewinn arbeitenden Unternehmen und bei einer in die Zukunft gerichteten Erfolgsperspektive ist die Grundlage für eine langfristige Absicherung der eigenen Software-Investition gegeben. Weiterhin ist es gut, über Wartungsverträge, Garantien, Gewährleistungen und sonstige Verträge die Wartung auch rechtlich abzusichern. Daß hierfür Kosten entstehen, liegt klar auf der Hand. Einnahmen beim Softwarelieferanten und Entwickler sind aber in jedem Fall notwendig, damit dieser die notwendigen Ressourcen für die Wartung vorhalten kann.

Um die Wartung technisch sicherzustellen, ist zunächst die Entwicklungsumgebung mit ihren Generatoren, Libraries und Compilern aufzubewahren beziehungsweise nur aufwärtskompatibel zu verändern. So wie ein Automobilhersteller die Ersatzteile jahrelang vorrätig halten muß, so hat auch der Software-Produzent die Aufgabe, seine Fertigungsmittel und Produktversionen zu sichern und im Bedarfsfall neu zu installieren.

Organisatorisch erfordert dies ein ausgefeiltes Release-Management. Insbesondere ein Standardproblem muß gelöst werden. Eine Version ist auf dem Markt, eine zweite Version mit größeren Änderungen befindet sich in der Entwicklung. Tritt nun ein Fehler in der freigegebenen Version auf, so gilt es, ihn in der alten und der neuen Version zu korrigieren. Es müssen also unter Umständen zwei bis drei Versionen parallel im Rechner gehalten werden. Um den Qualitätsstandard bei einer Erweiterung und Wartung zu gewährleisten, empfiehlt es sich, reproduzierbare Tests zu halten und vor jeder neuen Release-Freigabe zu fahren. Nur so läßt sich die Hektik vermeiden, die bei der Auslieferung von fehlerhaften Produkten entsteht.

Alle komplexeren Anwendungen müssen geschult werden können. Der Software-Anbieter sollte dafür ein ausreichendes Schulungsangebot zur Verfügung stellen. In Teilbereichen wird die Schulung durch computerunterstützte Teachware ergänzt.

Ziel muß allerdings stets sein, daß das System für den Anwender möglichst einfach zu handhaben ist. Nicht die Mächtigkeit der Funktionen und die Kreativität der Programmierkünstler, sondern die Schnelligkeit des Erlernens und die Unkompliziertheit der Benutzung entscheiden wesentlich über die Akzeptanz einer Software auf dem Markt.

Für organisatorische und technische Beratung und zur Einführungsunterstützung werden qualifizierte Mitarbeiter benötigt. Diese müssen die Sprache der Anwender sprechen und verstehen. Da der Kunde stets König sein sollte, wird er in diesem Punkt oft einen hohen Servicegrad fordern - den er allerdings dann auch bezahlen muß.

Hotline immer wichtiger

Dieser Benutzerservice umfaßt zum Beispiel eine Hotline. Hier kann der Anwender anrufen, wenn er überhaupt nicht mehr weiterweiß. Der Benutzerservice informiert die Anwender über Fehlersituationen und deren Umgehung, über Updates, Anwendertreffen und geplante Weiterentwicklungen. Er stellt die Filterstelle zwischen der Kundenpraxis und der Weiterentwicklungsabteilung dar.

Ein Produkt braucht einen Markt, einen Vertrieb und damit letztendlich einen wirtschaftlichen Erfolg, um in der Leistungsgesellschaft eine Überlebens-Chance und eine Entfaltungsmöglichkeit zu besitzen. Dazu müssen Vertriebsunterlagen geschaffen werden. Doch zuvor sind Kleinigkeiten wichtig, die dem Produkt ein unverwechselbares Profil verleihen: ein Systemname, ein Titelbild sowie ein spezifischer Masken- und Listaufbau.

Das Produkt muß präsentierbar sein: Dazu sind Druckereierzeugnisse, Werbeschriften, Hochglanzprospekte, Pressemitteilungen und Folien für Produktvorstellungen notwendig. Außerdem geht es um den Preis des Produkts. Dinge, die nichts kosten, sind meist auch nichts wert. Viele Produkte wurden erst nach drastischen Preiserhöhungen im Markt akzeptiert. Beim Preis von Software gibt es eine Reihe von Faktoren, die zu beachten sind: Einzelpreise, Paketpreise, Einfach- und Mehrfachlizenzen, Wartungskosten, Schulungskosten, Preise für Demoversionen, individuelle Anpassungen und Teilmodule. Auch hier ist dem kreativen Softwerker viel Spielraum der Produktgestaltung überlassen.

All dies ist jedoch totes Material beziehungsweise vergebene Liebesmühe, wenn nicht Vertriebskanäle existieren, über die das Produkt zum Kunden kommt und über die der Kunde letztlich zum Kauf bewegt wird. Häufig vertraut man darauf, daß das Produkt gut genug ist, um sich alleine zu verkaufen - durch Weiterempfehlung, im Schneeballeffekt. Doch wieviel besser könnte dieses Produkt verkauft werden, wenn alle potentiellen Kunden rechtzeitig informiert wären und sich der Kauf problemlos durch Verkäufer abwickeln ließe.

Software bleibt teuer

Erst die Verfügbarkeit und das Zusammenwirken all dieser Punkte ergibt ein Softwareprodukt. Die Entwicklung und Vermarktung eines Systems erfordert vom SW-Ersteller erhebliche Investitionen. Die bereits genannten Aspekte zeigen, daß die reinen Entwicklungskosten für ein Programm weniger als die Hälfte des gesamten Aufwandes ausmachen. Insgesamt bleibt Software ein teures Geschäft, denn der Intellekt von hochqualifiziertem Personal ist erforderlich - dies muß den Kunden verstärkt klargemacht werden, insbesondere unter dem Eindruck der fallenden Hardwarepreise. Trotz der Kosten bringt die Software, die dem Produktgedanken folgt, wesentliche Vorteile: profihafte Systeme, kalkulierbare Kosten, langfristige Absicherung, Benutzerakzeptanz, größere Lebenserwartung, weniger redundante Entwicklung und damit insgesamt einen hohen Beitrag zur Überwindung der Software-Krise.

*Norbert Dähne ist Berater beim EDV-Studio Ploenzke, Wiesbaden.