Offene Systeme und 4GL bei der AKDB

Unix gilt nach wie vor als das Vorbild aller offenen Systeme

02.10.1992

Offene Systeme sind der Schlüssel zu einer Datenverarbeitung, die den Anwender vom Hersteller unabhängig macht. Für Werner Bachschmid* bedeuten sie darüber hinaus, daß er Programme trotz heterogener Hardware nur einmal zu schreiben braucht. Bis es soweit war, mußte er sich jedoch erst im Dschungel der offenen Systeme zurechtfinden. Einen sicheren Orientierungspunkt bot ihm dabei das Unix-Betriebssystem.

Was sind offene Systeme? Eine Definition der X/Open-Gruppe hilft nur bedingt weiter. Sie sagt: "Offene Systeme sind Software-Umgebungen, die in Übereinstimmung mit allgemein verfügbaren und weitgehend herstellerunabhängigen Standards entwickelt und implementiert werden".

Wenn wir über offene Systeme reden, sprechen wir nicht über Anwendungen, sondern oben Betriebssysteme und betriebssystemnahe Produkte wie Datenbanken und Programmiersprachen, ferner über Umgebungen für die Gestaltung von Benutzeroberflächen sowie von Verfahren und von Netzwerkprotokollen.

Die Definition fordert nun, daß diese Software Standards erfüllt, die von unabhängigen, international anerkannten Standardisierungsgremien (DIN in Deutschland, IEEE in den USA etc.) festgelegt worden sind.

MS-DOS ist kein offenes System

In diesem Sinne ist zum Beispiel MS-DOS, das millionenfach eingesetzte PC-Betriebssystem der Firma Microsoft, kein offenes System, denn nicht eine Standardisierungsstelle, sondern Microsoft bestimmt oben seine Funktionalität. Das Betriebssystem Unix ist das bekannteste offene System auf dem Markt. Wer legt den Standard für diese Technologie fest?

Im Bereich der offenen Systeme bestimmen derzeit die amerikanischen Standardisierungsinstitute IEEE-(Institute of Electrical and Electronic Engineers) und ANSI (American National Standard Institute) die Zielrichtung. Wichtig ist vor allem die IEEE-Untergruppe Posix (Portable Operating System Interface for Computer Environments), die sich schwerpunktmäßig mit der Standardisierung der Betriebssystem-Funktionen beschäftigt, während ANSI sich überwiegend um Sprachstandards (Cobol, C, SQL) kümmert.

Daneben existiert noch die X/Open-Gruppe, eine Vereinigung der wichtigsten Computerhersteller. Diese hat sich unter anderem zum Ziel gesetzt, die von den Standardisierungsinstituten erlassenen Standards zu übernehmen und so aufzubereiten, da auch Entwickler von Anwendungssoftware in der Lage sind, portable Software für offene Systeme zu erstellen. Die X/Open-Gruppe zertifiziert darüber hinaus Software (Betriebssysteme, Anwendungssoftware) auf der Basis der bestehenden Standards und vergibt das sogenannte X/Open-Siegel.

Entgegen einer häufig geäußerten Annahme, ist bei den

Betriebssystemen, die sich als offen bezeichnen dürfen, nicht

die interne Abarbeitung standardisiert, sondern nur ihre Wirkungsweise nach außen. Setzt man ein Betriebssystem mit einem Auto gleich, dann würde das heißen, da allein die Anordnung und Wirkungsweise der Bedienelemente wie Bremspedal, Lenkrad, Schalthebel und Feststellbremse normiert sind, nicht jedoch der Motor, das Fahrwerk und das Getriebe.

Die Firma AT&T hat das erste offene Betriebssystem auf den Markt gebracht, das berühmte Unix. Nachdem AT&T für Universitäten den Quellcode, der in der Sprache C geschrieben ist, freigegeben hatte, entstanden sehr rasch auf unterschiedlichster Hardware Ableger des Betriebssystems. Erst als die großen Computer -hersteller für das Produkt Interesse zeigten, begann AT&T auf seine Lizenzrechte zu pochen. Ab diese Zeitpunkt mußten Firmen wie SNI oder Digital-Kienzle für die Nutzung von Unix Gebühren an AT&T abführen.

Alle Neuentwicklungen laufen auf offenen Systemen

Dieser Umstand und die daraus erwachsende Abhängigkeit von AT&T führten zur Gründung einer Softwarefirma namens Open Software Foundation (OSF) durch Unternehmen wie IBM, HP, DEC, Siemens und Nixdorf mit dem Ziel, sich von AT&T unabhängig zu machen.

Inzwischen hat die OSF ein eigenes Betriebssystem unter der Bezeichnung OSF/1 auf den Markt gebracht, das allen offenen Standards genügt.

Neben dem Unix-Engagement schlug der Workstation-Anbieter HP einen weiteren Weg zu offenen Systemen ein. Er baute in das hauseigene HP3000-Betriebssystem MPE eine Standard-Schnittstelle, die sogenannte Posix-Schnittstelle, ein. Zieht man nochmals den Vergleich mit dem Auto heran, so heißt dies, daß das HP-Auto jeweils zwei Bedienelemente, also zum Beispiel zwei Feststellbremsen-eine normierte und eine nicht normierte - enthält, die wechselweise bedient werden können.

Ähnlich wie HP verhält sich auch Digital Equipment, wo zukünftig auf einer Anlage parallel zu ihrem eigenen Betriebssystem eine Posix-Schnittstelle verfügbar sein wird.

Die Hauptversammlung der AKDB hat am 25. Oktober 1990 beschlossen, daß neue, dezentral einsetzbare Anwendungen

grundsätzlich nur noch für offene Systeme-damals noch eingeschränkt auf Unix-entwikkelt werden sollen.

Der Beschluß wurde umgesetzt; alle Neuentwicklungen

-im Haushalts-, Kassen- und Rechnungswesen,

-im Einwohnerwesen,

-für die Fehlbelegungsabgabe und

-beim technischen Umweltschutz

werden auf offenen Systemen ablauffähig sein. Die Anwendungen für die genannten Bereiche sollen auf den entsprechenden Systemen unserer Kooperationspartner Digital-Kienzle, HP und SNI laufen.

Diese einheitliche Stoßrichtung hat gravierende Vorteile für unser Unternehmen. Während wir bisher für ein und dieselbe Anwendung unterschiedliche Varianten für HP-, Kienzle- und SNI-Rechner entwickeln und auch pflegen mußten, wird es bei den offenen Systemen ausreichen-wenn wir bei der Realisierung auf die X/Open-Standards achten -, eine einzige Version für unterschiedliche Hersteller vorzuhalten.

Bei den bisher üblichen nichtoffenen Systemen lieferte der Computerhersteller neben dem Betriebssystem, zum Beispiel MTOS von Digital-Kienzle, eine Vielzahl betriebssystemnaher Standardsoftware wie Datenbanken, Maskensysteme sind DF-Programme, die, jeweils exakt aufeinander abgestimmt waren. Konkurrenz -produkte gab es nicht, weil die technischen Schnittstellen vom Rechnerhersteller nicht offengelegt wurden. Der Vorteil für die AKDB und auch für deren Kunden bestand darin, da sie es mit einem Generalunternehmer zu tun hatten, der für alle Probleme im Rahmen der Gewährleistung oder eines Wartungsvertrages zuständig war.

Ganz anders sieht es bei den offenen Systemen aus. Der Computerhersteller liefert im wesentlichen nur noch die Hardware und das Betriebssystem. Für die systemnahe Software gibt es eine Vielzahl von Konkurrenzprodukten, weil sich die Softwarehäuser auf die normierten Schnittstellen einrichten können und auch ein entsprechender Markt dahintersteht.

Im Bereich der Datenbanken haben wir nun die Qual der Wahl zwischen Informix, Oracle, Ingres, Sybase etc. Ähnlich liegen die Dinge bei Maskensystemen. Die Aufgabe, dafür zu sorgen, da die Versionsstünde von Betriebssystem und Anwendungen zusammenpassen, bleibt bei der AKDB. Die Angelegenheit wird dadurch noch komplizierter, daß Wir es mit unterschiedlichen Lieferanten zu tun haben, also vielen Stellen, die Gewährleistung und Wartung bieten müssen. Die AKDB ist dabei, durch geeignete Vereinbarungen die Anzahl der Lieferanten möglichst klein zu halten, um damit dem alten Modell - auch zum Vorteil ihrer Kunden - möglichst nahe zu kommen. Wie entwikkelt die AKDB für offene Systeme?

Einsatz von Sprachen der vierten Generation

Das Problem, das sich der AKDB beim Umstieg auf offene Systeme stellte, kann man an einem Beispiel klarmachen. Wäre die AKDB eine Baufirma, müßte sie sich entscheiden, ob sie zukünftig mit Fertigbauteilen arbeiten oder nach der alten Stein-auf-Stein-Methode vorgehen möchte.

Wir haben uns gegen die Stein-auf-Stein-Methode, also gegen eine Entwicklung mit der bei offenen Systemen üblichen Sprache C- eine Sprache der 3. Generation (3GL)-und für die Fertigteilmethode, somit für eine Sprache der sogenannten vierten Generation (4GL) entschieden.

Die bekannte Programmiersprache Cobol, welche die AKDB bisher überwiegend verwendet hat, ist wie C den Dritt-Generations-Sprachen zuzuordnen und für neuartige Anwendungen wenig geeignet.

Wie kam es zur Auswahl einer Uniface-Lösung?

Da auf dem Markt mehrere 4GL-Sprachen für offene Systeme angeboten wurden, kam es zu einem umfangreichen Auswahlproze.

Wir wollten:

- nur einmal entwickeln, aller auf unterschiedlichen offenen Systemen ohne Änderung installieren können;

- die bei unseren Kunden installierte Hardwarebasis-speziell die Terminals-auch bei neuen Verfahren voll nutzen;

- wenn ein Kunde bereits eine Datenbank auf seinem System hat, diese mit unserer Anwendung nutzen;

- Moderne Bedienoberflächen anbieten;

- mit unserer Anwendung möglichst nahe an den Arbeitsplatz des Sachbearbeiters (dahinter verbirgt sich unser Client-Server-Konzept);

- bei der Entwicklung von Anwendungen produktiver werden.

Die Anbieter und ihre Produkte wurden an diesen Forderungen gemessen. Dazu kamen betriebswirtschaftliche Überlegungen, denn für die Nutzung einer 4GL, entstehen erhebliche Kosten, sowohl beim Entwickler (für Entwicklerlizenz und laufende Wartung) als auch beim Endkunden (für Runtime-Lizenzen und laufende Wartung).

Als Sieger ging aus der Auswahl das Produkt Uniface vom gleichnamigen Hersteller hervor, das in der Bundesrepublik von der Daimler-Benz-Tochter Debis vermerktet wird.

Bevor wir jedoch zugriffen, haben wir das Produkt auf Herz und Nieren getestet. Mit einem Demoverfahren, das alle Bösartigkeiten enthielt, die wir uns vorstellen konnten, haben wir die Portierbarkeit der Anwendungssoftware überprüft. Ausgehend von einem PC-Unix-System (SCO-Unix) und einer CISAM-Datenbasis haben wir die Software auf die Systeme HP 9000, DK 2800, MX 300 (NSC und Intel) und MS-DOS portiert. Dabei wurden die Datenhaltungssysteme CISAM, Informix und Oracle verwendet.

Das für uns verblüffende Ergebnis war, daß bei diesen Portierungen an den Verfahren der Anwendung nichts geändert werden mußte; es lief auf, jedem System reibungslos. Darüber hinaus testeten wir noch die Möglichkeiten der Client-Server-Architektur, wobei wir die Anwendungsprogramme auf einem Rechner und die Datenbank auf einem damit vernetzten Gerät, installierten. Auch diese Prüfungen verliefen zufriedenstellend.

Zusätzlicher Wachstumspfad

Mit der Ankündigung der Auslieferung der Posix-Schnittstellen zur Jahresmitte 1992 fr die HP-3000-Systeme gab die Firma Uniface bekannt, daß die mit ihrem Werkzeug entwickelten Anwendungsverfahren bald auch auf dem HP-Betriebssystem (MPE/IX) ablauffähig sein werden. Für die Kunden der AKDB, die ein solches System benutzen, ergibt sich damit ein zusätzlicher Wachstumspfad.

Doch Vorsicht. Solange uns weder das Betriebssystem MPE/IX noch die dazugehörige Uniface-Variante vorliegen, sind Aussagen zum wirtschaftlischen Betrieb der HP-3000-Systeme unter der neuen

Posix-Schnittstelle mit Uniface nur Spekulation. Wir haben beim Neubeginn der Entwicklungsphase uns einiges vorgenommen. Wir stellten fest, was wir nicht wollten, nämlich

- es jedem Entwickler selbst überlassen, wie sich die neuen AKDB-Verfahren nach außen hin darstellen;

- daß Standardfunktionen wie Zugriffschutz, Hilfesystem, Funktionstasten- und Fehlerbehandlung etc. von jedem Projekt selbst entwickelt werden;

- jeder seine Dokumentation anders anlegt.

Es hat uns einige Zeit gekostet, aber jetzt liegt unseren Entwicklern eine Anleitung vor, die sie bei ihrer täglichen Arbeit unterstützt und darüber hinaus sicherstellt, daß die neuen AKDB-Verfahren einheitlich angewandt werden.

*Werner Bachschmid ist Leiter der Entwicklungsabteilung der Anstalt für kommunale Datenverarbeitung in Bayern (AKDB). Vorliegender Artikel ist ein leicht gekürzter Nachdruck aus dem AKDB-Report 2/92.