Informationsdatenbanken verlangen Vorleistungen vom Anwender

Kein Repository-Einsatz ohne eine Entwicklungsphilosophie

15.11.1991

Moderne Systementwicklungs-Konzepte basieren zumeist auf einer Informationsdatenbank, in der die unternehmensweiten Systementwicklungs-Strategien und -methoden sowie die Projektplanungs-Techniken gespeichert und umgesetzt werden sollen. Die Vorteile einer Repository-gestützten Entwicklung müssen von den Anwendern allerdings mit Vorleistungen erkauft werden, zu denen vor allem eine ausgearbeitete Systementwicklungs-Philosophie zählt.

Viele Beobachter der nordamerikanischen DV-Industrie haben die im September 1989 durch die IBM erfolgte Ankündigung der Systementwicklungsumgebung AD/Cycle als "Legitimation" für die CASE-Methodik verstanden. Durch das IBM-Gütesiegel wurde CASE als eine fundamental neue Vorgehensweise ausgewiesen, die gleichermaßen in der Planung, der Konstruktion, der Wartung und der Umstrukturierung von Informationssystemen zum Einsatz kommen kann.

Heutzutage wird mit dem Begriff "Computer Aided Software Engineering" die rechnerunterstützte Software-Entwicklung bezeichnet. In naher Zukunft kann wahrscheinlich von einer rechnergestützten Systementwicklung oder sogar von einer durch Computereinsatz automatisierten Systementwicklung die Rede sein. CASE wird für die Entwicklung von Informationssystemen verwandt werden, statt lediglich als Programmentwicklungs-Tool zu dienen.

Ingenieurmäßig und strukturiert

Unter einem ingenieurmäßigen Vorgehen bei der Entwicklung von Software verstehen wir eine Reihe miteinander verknüpfter Programmentwicklungs-Techniken: unter anderem die strukturierte Analyse, den strukturierten Entwurf, die strukturierte Programmierung und die strukturierte Bedienerführung. Diese Techniken sollten dem ehedem vorherrschenden Verständnis von Programmentwicklung als Handwerk entgegenwirken und das ingenieurmäßige, wissenschaftliche Vorgehen fördern, sie wurden in den 60er und 70er Jahren in den USA und in Europa entwickelt.

Die Techniken des Software-Engineering fanden jedoch bislang keine weitgehende Akzeptanz. Neuere Untersuchungen in Nordamerika zeigen, daß Software-Engineering bei weniger als 15 Prozent aller Systementwicklungen genutzt wird; in Europa wird dieser Anteil auf 30 Prozent geschätzt.

Für die schlechte Akzeptanz der ingenieurmäßigen Vorgehensweise wurden bereits viele Erklärungen angeboten. Dazu gehören zum Beispiel der Mangel an qualifizierten und routinierten Programmierern (vor allem in Nordamerika), der fortschreitende Abbau von Kompetenz in der Systementwicklung (aufgrund der Tatsache, daß sich die Programmierer zunehmend mit der Pflege von altem Programmcode beschäftigen müssen) und - vielleicht von größter Bedeutung - der Mangel an automatisierten, die ingenieurmäßige Software-Entwicklung unterstützenden Tools.

Die CASE-Werkzeuge der ersten Generation erschienen in den 80er Jahren auf dem Markt. Diese Entwurfswerkzeuge ("Spielzeug", wie einige sie nannten) unterstützten die Programmierer bei der Erstellung beziehungsweise Änderung von grundlegenden Software-Engineering-Diagrammen (zum Beispiel Datenfluß-, Entity-Relationship-, und Statuswechsel-Diagramme).

Heute sind buchstäblich Hunderte von Werkzeugen unterschiedlicher Leistungsstärke auf dem Markt. Die Preise erstrecken sich von wenigen hundert bis hin zu Hunderttausenden von US-Dollar; leistungsstärkere Systeme können bei der Automatisierung aller Stadien der Systementwicklung (einschließlich der Planung und der Codegenerierung) eingesetzt werden.

Die wachsende Vielfalt der CASE-Produkte führt uns die Notwendigkeit einer zentralen Datenbank (auch als "Lexikon" oder englisch: "Repository" bezeichnet) vor Augen. Der Zweck dieser Datenbanken besteht darin, die von den CASE-Werkzeugen generierten Spezifikationen zu integrieren und zu pflegen sowie deren Wiederverwendung zu vereinfachen. Zunächst wurden derartige Datenbanken von den Lieferanten der CASE-Werkzeuge entwickelt und zum eigenen Tool-Paket mitgeliefert.

Es gibt heute bei den Datenbanken für Software-Entwickler zwei unterschiedliche Betrachtens- und Vorgehensweisen: Einige Hersteller liefern weiterhin Datenbanken, die nur mit den eigenen CASE-Tools arbeiten beziehungsweise mit den Werkzeugen von Drittfirmen, die die Entwicklung kompatibler Produkte zugesagt haben (dazu gehört AD/Cycle von IBM). Andere Hersteller setzen auf offene Systeme und bauen ihre Produkte auf nationalen sowie internationalen Standards auf (zum Beispiel auf ANSI X 3.138 Information Repository Dictionary Standards).

Kluft zwischen Nachfrage und Angebot wird breiter

Die erstmalig in den 60er Jahren beobachtete weltweite Softwarekrise bezeichnet die ständig breiter werdende Kluft zwischen dem Angebot an und der Nachfrage nach neuen Systementwicklungen. Allein in Japan werden zum Ende des Jahrzehnts schätzungsweise eine Million in der Systementwicklung tätiger Mitarbeiter fehlen.

Die Softwarekrise ist in ein Stadium geraten, wo eine neue Betrachtungs- und Vorgehensweise in der Systementwicklung unabdingbar ist. Der Einsatz von Informationsdatenbanken könnte hier möglicherweise eine Lösung anbieten.

Auf der Basis von Modellen

Die neue Vorgehensweise basiert auf dem Einsatz von CASE-Werkzeugen für die Entwicklung von Programmodellen, die schnell entworfen und im Zusammenhang mit den Strategien und Geschäftspraktiken des Unternehmens ausgewertet werden können. Der prozedurale Programmcode sowie die Datenbankanwendungen werden automatisch für verschiedene Hard- und Software-Umgebungen generiert.

Auf diese Weise läßt sich die traditionelle "Programmpflege eliminieren: Änderungen werden an den Modellen vorgenommen, und danach wird das System neu generiert. Die Informationsdatenbank dient als zentrale Ablage für die Modelle, die Geschäftspraktiken, die Systementwicklungs-Methodik und die Projektplanungs-Daten.

Eliminierung der analytischen Phase

Wie aber kann diese Vorgehensweise der Softwarekrise entgegenwirkend Dadurch, daß 80 bis 90 Prozent der traditionellen Programmpflege und der Kodierung überflüssig werden, steht das vorhandene Systementwicklungs-Personal für die Entwicklung neuer Systeme zur Verfügung. Noch wichtiger: Da. durch, daß die Systementwicklung auf Modellen basiert, können die Anwender im Unternehmen eigene Systeme schnell entwickeln und prüfen.

Die Orientierung an der Informationsdatenbank führt möglicherweise sogar zur Eliminierung der traditionellen analytischen Phase im Lebenszyklus des Systems. Wenn die Anwender ihre eigenen Systeme entwickeln, ist es nämlich durchaus denkbar, daß das vorhandene System nicht mehr analysiert werden muß.

Daneben bedeutet die Orientierung an Informationsdatenbanken auch, daß die existierenden Systemmodelle wiederverwandt werden können - innerhalb des gesamten Unternehmens oder sogar über ganze Branchen hinweg. Daraus folgt eine Produktivitätssteigerung und eine Standardisierung der Informationssysteme.

Dem jetzigen Wissensstand nach zu urteilen, werden von der Informationsdatenbank aller Wahrscheinlichkeit nach Multi-Media-Fähigkeiten verlangt werden. Ein weiteres K.O.-Kriterium könnte die "Erweiterungsfähigkeit" sein, also die Fähigkeit, eine Vielzahl unterschiedlicher Verarbeitungsfunktionen auszufahren die Verarbeitungskapazität einer einfachen relationalen Datenbank ist zu begrenzt.

Ebenso wird die Informationsdatenbank für neue Tools und Methoden sowie für die Kommunikation mit anderen Informationsdatenbanken offen sein müssen. Diese Anforderungen deuten darauf hin daß die Informationsdatenbank eine objektorientierte Technologie voraussetzen wird.

Entscheidend für die Anwendungsentwicklung sind weder der Quellcode noch die Tools, Techniken oder Methoden, die angewandt werden, um ein System zu entwickeln. Der springende Punkt ist vielmehr die Systementwicklungs-Philosophie, die das Unternehmen angenommen hat. Die entscheidende Frage ist, ob sich das jeweilige Anwenderunternehmen zu einer prozeßorientierten, einer datenorientierten oder aber einer leistungsorientierten (objektorientierten) Systementwicklung verpflichtet hat. Weiterhin ist zu fragen, ob die gewählte Philosophie mit den Ressourcen des Unternehmens vereinbar ist und ob die gewählten Methoden, Tools und Techniken sowie die angestrebte Semantik der Philosophie des Unternehmens entsprechen.

Nachdem sich das Unternehmen für eine Philosophie entschieden hat und diese allgemein verstanden wurde, nimmt die Umstellung der Systementwicklung in Richtung auf eine zugrundeliegende Informationsdatenbank zirka drei bis vier Jahre in Anspruch. Diese Umstellung besteht aus den folgenden Schritten:

1. Analyse des Ist-Zustands in der Systementwicklung (Welcher Bereich ist am stärksten verbesserungsbedürftig?),

2. Analyse des gegenwärtigen Software-Engineering-Einsatzes (Warum wird Software-Engineering nicht eingesetzte),

3. Analyse des gegenwärtigen CASE-Einsatzes im Unternehmen (Sind die eingesetzten Tools mit der Systementwicklungs-Philosophie des Unternehmens vereinbaren),

4. Wahl der CASE-Werkzeuge, die den größten Bedarf im Unternehmen abdecken (also Tools für die Erzeugung von Quellcode sowie Planung, Analyse und Entwurf) Wahl eines proprietären oder offenen Informationsdatenbank-Systems,

5. Wahl eines Pilotprojektes oder mehrerer Pilotprojekte,

6. Auswertung der Ergebnisse aus den Pilotprojekten sowie

7. Anwendung im ganzen Unternehmen.

Vielleicht nur für die "oberen Zehntausend"

Fast jeder maßgebliche Hersteller hat inzwischen eine CASE-Strategie auf der Basis einer Informationsdatenbank lanciert.

IBM bietet AD/Cycle an; ebenfalls auf diesem Markt vertreten sind unter anderen DEC mit Cohesion, NCR mit Cooperation, Amdahl mit Huron, Hewlett-Packard mit Softbench und die Software AG mit Entire.

Ein Unternehmen, nämlich Atherton Technology, hat eine offene Informationsdatenbank (Software Backplane) im Angebot, die als Client-Server-Lösung unter Unix von verschiedenen großen Anbietern vertrieben wird.

Der Schritt in Richtung einer von Grund auf neuen Betrachtungsweise der Systementwicklung birgt große Risiken. Nach heutigem Stand werden möglicherweise nur 30 Prozent der Anwenderunternehmen und nicht mehr als 20 Prozent der in der Systementwicklung Beschäftigten diesen Schritt wagen.

Hindernisse für den Umstieg

Drei bis vier Jahre Zeit und eine Investition in Millionenhöhe für Produkte und Schulungen müssen für die Umstellung auf eine Systementwicklung, die sich an Informationsdatenbanken orientiert, veranschlagt werden. Viele Marktbeobachter sind der Meinung, daß Systeme auf Basis einer Informationsdatenbank nur für die "oberen Zehntausend" von Interesse sind.

Ernstzunehmende Hindernisse für den Umstieg könnten auch die mangelhafte Ausarbeitung einer Systementwicklungs-Philosophie und die fehlende Unterstützung durch die Unternehmensführung sein. Letztendlich müssen die Anwender selbst sich fragen, wie sie und ihr Unternehmen mit der Herausforderung der Softwarekrise umgehen wollen - und mit den Vorteilen, die die Entwicklung auf Basis einer Informationsdatenbank verspricht.