Vier Schichten zur Definition von Offenheit

Erst durch ihre Schnittstellen werden Systeme wirklich offenDie vier Schichten

23.11.1990

Auf der untersten Ebene liegt die Hardware, zu der eine entsprechende Hard- und Software-Schnittstelle gehört. Ein typisches Beispiel für diese Ebene ist das Bios, wie es in jedem PC vorkommt. Unter den Begriff Hardware fallen aber auch auch Prozessoren wie die Chips von Intel und Motorola sowie Architekturen wie RISC.

Darüber ist die Ebene der Betriebssysteme und die dazugehörige Systemschnittstelle angesiedelt. Standardisierungsversuche hierfür gibt es hier von Posix und Fips, aber auch von Gremien wie X/ Open.

Als dritte Schicht müssen die Datenverwaltung (Daten-Management) und die Datenschnittstellen angesehen werden. In diese Kategorie fallen Abfragesprachen wie beispielsweise SQL (Structured Query Language) oder GCA (Global Communications Architecture).

Die oberste Schicht schließlich bilden Anwendungssoftware und Benutzerschnittstellen. Neuere Entwicklungen in dieser Kategorie sind die grafischen standardisierten Benutzeroberflächen (OSF/Motif, Open Look) sowie der Presentation Manager.

* Guenter Krauss ist Leiter des European Expertise Centers von IDC

Offene Systeme sind heute in aller Munde. Es gibt wohl kaum einen Hersteller, der nicht mit diesem Schlagwort wirbt. Was aber ist eigentlich ein offenes System? Die Vielzahl gängiger Antworten ist oft eher verwirrend als hilfreich. Guenter Kraus* faßt eine Studie von IDC-Deutschland zusammen, die versucht, etwas Ordnung in das Informationswirrwarr zu bringen.

Die neue IDC-Studie "Offene Systeme - Strategien für die 90er Jahre" orientiert sich an vier Ebenen sowie den dazwischenliegenden Schnittstellen, die ein ganzheitlich offenes System umfassen müssen. Das Modell gliedert sich also in Hardware, Betriebssystem, Datenmanagement und Anwendungssoftware (siehe Abbildung). Schnittstellen bilden die Übergänge zwischen den einzelnen Ebenen und zwischen der Anwendungssoftware und dem Benutzer. Dabei ist jede Schnittstelle jeweils der darunter befindlichen Ebene zugeordnet (Siehe Kasten).

Die zentrale Forderung des Vier-Schichten-Modells über ein offenes System ist, daß die einzelnen Komponenten jederzeit ausgetauscht werden können. Hierdurch wird der Wettbewerb zwischen den Anbietern gefördert, und der Anwender wird unabhängiger.

Anwendungssoftware und Benutzerschnittstelle gehören jedoch nicht so eng zusammen, wie die Tatsache vermuten läßt, da sie im Schichtenmodell zusammengefaßt werden. Gehörte früher die Benutzerschnittstelle eindeutig zur Anwendungssoftware (jedes Programm hatte seine eigene Bedieneroberfläche), so geht die neueste Entwicklung in Richtung einheitlicher grafischer Benutzeroberflächen, unter denen verschiedene Anwendungen ausgeführt werden können. Die Oberflächen präsentieren dem Anwender aber ein einheitliches Erscheinungsbild nämlich entsprechend der gewählten grafischen Oberfläche.

Offene HW-Architekturen und die SW-Schnittstellen

Die unterste Schnittstelle des Vier-Schichten-Modells ist die zwischen Hardware und Software. Sie ist naturgemäß hardwareabhängig. Auf diese Tatsache ist auch zurückzuführen, daß sich diese Schnittstelle bei jeder Rechnerkategorie - PC, Workstation und Mainframe anders gestaltet. Grundsätzlich kann man folgende Aussage treffen: Je größer das System, desto unkenntlicher wird die Abgrenzung der Hard- und Softwareschnittstelle.

Beim PC ist die Unterteilung relativ klar. Die HW/SW-Schnittstelle ist hier das Bios (Basic Input/Output System) in Verbindung mit der zugehörigen Betriebssystemschnittstelle. Das Bios stellt hier die Grundlage für das Betriebssystem dar und besteht aus Basisroutinen, die fest in die Hardware des Computers einprogrammiert wurden. Eine weitere Hardwareschnittstelle beim PC sind die Grafikkarten (beispielsweise MDA, EGA, Hercules-Karte, VGA und MCGA). Zum dritten sind im PC-Bereich die bekannten seriellen und parallelen Schnittstellen zu finden, die einen sehr hohen Normungsgrad besitzen. So kann nahezu oder Drucker über ein überall erhältliches Standardkabel an einen seriellen oder parallelen Port angeschlossen werden.

Bei Workstations finden derzeit Standardisierungsversuche statt, die einen Grafikstandard zum Ziel haben. Die Normung - auch die der HW/SW-Schnittstelle - ist in diesem Bereich ähnlich wie beim kleinen Bruder "PC" gelagert. Ein Problem stellt hierbei aber die höhere Grafikleistungsfähigkeit dar. Sie macht eine Standardisierung schwieriger, da jeder Anbieter mit seinem Gerät den höchsten Ansprüchen genügen will. Und schließlich will man sich nicht durch standardisierte Vorgaben die Performance-Werte "kaputtmachen" lassen.

Vermischung bei mittleren Systemen

Bei mittleren Systemen wie der AS/400 findet eine Vermischung und Integration der verschiedenen Ebenen statt. Eine klare Unterscheidung und Zuordnung kann hier nur auf das betreffende System getroffen werden. Diese Vermischung von Hardware und Software wird von IBM bewußt vorgenommen. So steht zwar ein System zur Verfügung, dessen Komponenten ersetzbar sind, der Austausch einer Komponente (beispielsweise der Einsatz einer anderen als der integrierten Datenbankverwaltung bei der AS/ 400) ist aber wenig sinnvoll, da das Gesamtsystem hierdurch einen Performance-Verlust erleidet. IBM legt ihrer AS/400-Klientel auf diese Weise "Gummifesseln" an.

Für den Mainframe-Bereich kann keine allgemeingültige Aussage mehr getroffen werden. Routinen, die bei IBM in der Software der unteren Ebene - entsprechend der Bios-Schnittstelle - enthalten sind, werden von PCMern oftmals in der Hardware realisiert.

Spekulationen über den Erfolg von OS/2

Das Betriebssystem und die Systemschnittstelle, die im Rahmen des Vier-Schichten-Modells die zweite Schicht bilden, gelten derzeit noch als eines der wichtigsten Merkmale für offene Systeme. Dies ist nicht zuletzt darauf zurückzuführen, daß die Auseinandersetzung der Hersteller um einen Unix-Standard und die fortwährende Spekulation Über den Erfolg oder Mißerfolg von OS/2 breites Interesse bei der schreibenden Zunft und somit bei der Öffentlichkeit gefunden haben.

Unix war noch Anfang der 80er Jahre eindeutig ein AT&T-Betriebssystem. Der

Konzern versuchte sogar, diese Herstellerbindung noch zu festigen und die einstige Offenheit des Betriebssystems in den 70er Jahren für seine Interessen auszunutzen. Unix sollte faktisch herstellerspezifisch bleiben (oder werden), nach außen hin, jedoch unter der Fahne der Offenheit segeln. Indes hatte AT&T die Rechnung ohne Berücksichtigung der Interessenslagen anderer Hardwarehersteller gemacht oder die Natur eines offenen Systems falsch eingeschätzt: Es ist austauschbar.

Jeder kann ein eigenes "OS/2" anbieten

Die eigentliche Entwicklung von Unix zum offenen Betriebssystem begann erst mit der Gründung der Open Software Foundation (OSF) und von Unix International Inc. (UII). Es war nie Ziel der bereits zuvor bestehenden X/Open, Unix zu einem offenen System zu machen, um sich den Aktivitäten von AT&T wirkungsvoll zu widersetzen. Diese Aufgabe hat nun die OSF übernommen. Aus der heutigen Situation heraus kann man Unix als "weitgehend offenes" Betriebssystem bezeichnen.

Schon nicht mehr so eindeutig ist die Zuordnung bei OS/2 und MS-DOS. Einerseits stammen beide Betriebssysteme aus den Softwareküchen von Microsoft und IBM. An der Weiterentwicklung des Systems sind auch nur diese beiden Unternehmen beteiligt. Andererseits gewährt die freizügige Lizenzierungspolitik von Microsoft praktisch allen Hardwareherstellern und Softwarehäusern Zugriff auf OS/2 und MS-DOS. Dies ist sicherlich ein Zeichen für Offenheit. Ob man OS/2 aber als ein offenes Betriebssystem einstuft oder nicht, hängt entscheidend auch davon ab, wie man die zukünftige Entwicklung einschätzt. Und darüber läßt sich naturgemäß nur spekulieren.

Theoretisch kann jeder, der den Markt für attraktiv genug hält, ein eigenes "OS/2" anbieten und die Anwender zu einem Betriebssystemaustausch bewegen. Graue Theorie ist dies aber aus dem Grunde, weil es bislang keine OS/2-Alternative von einem anderen Anbietet gibt. Und das ist kein Wunder: Selbst wenn ein anderer Hersteller gute Marktchancen für eine solche Vorgehensweise sähe: Wer würde sich schon gerne zum zumindest vorläufigen - alleinigen Gegner von IBM/Microsoft mit ihrer erschlagenden Marktgewalt machen wollen?

Neben den offenen oder halboffenen Betriebssystemen gibt es eine Reihe nicht-offener Systeme, die aber trotzdem eine erhebliche Rolle in der DV-Branche spielt. Dazu gehören primär:

- IBM /370-Architektur,

- IBM /3X und OS/400,

- DEC VMS und

- Apple Macintosh.

IDC geht davon aus, daß diese Betriebssysteme trotz der Entwicklung in Richtung Offenheit auf absehbare Zeit am Markt präsent sein werden. Dabei werden Koexistenz und Integration der unterschiedlichen Betriebssysteme zu entscheidenden Herausforderungen für die einzelnen Hersteller, aber auch für die gesamte Branche.

Man kann nicht davon ausgehen, daß sich künftig ein einzelnes Hardware- oder Softwaresystem dominierend am Markt durchsetzt und Alternativen völlig beiseite drängt. Vielmehr ist die Koexistenz unterschiedlicher Rechnerarchitekturen und verschiedener Betriebssysteme zu erwarten. Der Gedankenfehler, dem die DV-Branche heute in weiten Teilen unterliegt, besteht im Irrglauben, "offene Systeme" und "Unix" seien Synonyme. Die Offenheit von Systemen drückt sich jedoch nicht in einem bestimmten Stück Hardware oder Software aus, sondern unter anderem auch in offenen Schnittstellen - und die sind natürlich für alle Betriebssysteme vorstellbar.

Das Prinzip eines offenen Systems kann nur darin bestehen, daß die einzelnen Komponenten als "Black Boxes" betrachtet werden können. Ebenso wie die Hardware muß also in einem wirklich offenen System auch das Betriebssystem austauschbar sein.

Natürlich wird dieser Idealfall auch in Zukunft nicht ohne weiteres eintreten, aber es ist wichtig, sich klarzumachen, daß der Einsatz von Unix nicht zwangsläufig zu offenen Systemen führt. Vielmehr zieht die Forderung nach offenen Betriebssystemen die nach einer standardisierten Schnittstelle zwischen Betriebssystem und Anwendungssoftware nach sich. Der "Clou" der Offenheit liegt also weniger im Betriebssystem selbst, als in der Schnittstelle.

In der Unix-Arena ist Posix schon heute die geforderte Anwendungsschnittstelle, etwa bei Aufträgen der öffentlichen Hand (hier wird oftmals auch FIPS als "enger gefaßtes" Posix vorgegeben). Welches Unix-Derivat darunter liegt, ist dabei unerheblich (Black Box), was zählt, ist allein die Schnittstelle. Inzwischen hat sogar Microsoft begonnen sein OS/2-Betriebssystem an diese Richtlinien anzupassen.

Vor diesem Hintergrund wird deutlich, warum Betriebssysteme ebenso wie die Rechnerhardware für Anwendungen an Bedeutung verlieren. Die Posix-Schnittstelle kann ohne weiteres über mehrere Betriebssysteme hinweg eingesetzt werden. Dies muß sich keineswegs auf OS/2 und Unix beschränken. Auch herstellerspezifische Betriebssysteme lassen sich mit einer speziellen Schnittstelle unter Posix vereinen.

Unter einer standardisierten Applikationsschnittstelle lassen sich im übrigen nicht nur unterschiedliche Betriebssysteme, sondern auch unterschiedliche Integrationsansätze wie etwa OSI und SAA integrieren. Mit anderen Worten: Während auf der Betriebssystemebene noch die Kämpfe zwischen OSF und Unix International toben, entwickelt sich auf der nächsthöheren Ebene ein Schnittstellenstandard, der die Betriebssystem-Grabenkämpfe für den Anwender doch recht unerheblich macht.

Auf diese Weise lassen sich einerseits die bereits getätigten Investitionen in bestimmten Betriebsumgebungen schützen. Dieser Vorteil besteht nicht nur für den Anwender, sondern ist auch für den Hersteller von Bedeutung. Andererseits können somit auch Wege zu offenen Systemen gefunden werden (wiederum für Anwender wie auch für Hersteller). Warum sollte beispielsweise eine Anwendung künftig nicht automatisch die auf dem jeweiligen Rechner zur Verfügung stehenden Betriebssysteme in optimierter Kombination einsetzen können?

Datenmanagement und Detenschnittstellen

Das Datenmanagement stellt einen der Schlüsselfaktoren bei offenen Systemen dar. Es liegt im Vier-Schichten-Modell zwischen der Betriebssystem- und der Anwendungsebene.

Ein Datenbankmanagementsystem besteht üblicherweise aus zwei Teilen, die wiederum jeweils eine Vielzahl von Komponenten umfassen: Backend und Frontend. Das Backend oder der Server erledigt die Datenbankverwaltung ("DBMS Engine"), während das Frontend oder der Client eine Datenbankapplikation darstellt. Man spricht in diesem Zusammenhang auch von Client-/Server-Datenbanksystemen. Im Sinne des Vier-Schichten-Modells ist dabei der Client im Grunde der Anwendungsebene zuzurechnen. Der Server stellt das Datenmanagementprodukt dar, die Server-Schnittstelle (zumeist SQL) die Datenschnittstelle.

Während die Server-Funktionalität künftig tendenziell mehr und mehr auf die Betriebssystemebene verlagert wird, entwickeln sich die Frontends zunehmend zu komplexen objektorientierten Entwicklungsumgebungen. Für die Kommunikation zwischen Frontend und Backend hat das DBMS-Segment bereits einen Standard gefunden: SQL (Structured Query Language). Es ist immerhin bemerkenswert, daß dieser Standard von IBM stammt, wenngleich er sich mittlerweile längst von diesem Unternehmen gelöst hat.

Das generelle Interesse an Datenbankservern auf PC-Basis ist hoch. IDC geht davon aus, daß etwa 500 000 der weltweit 800 000 installierten LANs potentielle Einsatzbasen für DBMS-Server sind. Bevor eine breite Akzeptanz zu erwarten ist, müssen allerdings noch einige Barrieren überwunden werden. So gibt es bis heute keinen einheitlichen SQL-Standard. Die heutige ANSI-Normung läßt zu viele Punkte offen, die von den Herstellern mit eigenen Lösungen gefüllt werden müssen. SQL2, der erweiterte ANSI-Standard, ist noch immer nicht verfügbar.

Noch nicht abgeschlossen ist auch die Diskussion darüber, welche Steuerungsgewalt überhaupt ein Datenbank-Server in einer verteilten Umgebung haben soll. Gehören etwa Datenintegritätsüberprüfung oder das Data Dictionary unter die Kontrolle des Servers? Der Trend geht dahin, diese Frage zu bejahen. Standards gibt es aber hier noch lange nicht.

Völlig offen ist auch die Frage nach der Steuerung, wenn mehrere Server in einem oder sogar in mehreren gekoppelten Netzen zusammenarbeiten. Eine Marktbarriere stellt aber auch die noch ungeklärte Frage dar, wie der Vertrieb der komplexen Server-Software erfolgen soll. Viele "normale" PC-Händler sind damit schlichtweg überfordert, zumal auch die Ziergruppe häufig nicht der übliche PC-Käufer ist. Erst wenn diese und noch einige andere Probleme überwunden sind, werden Datenbankserver in breitem Rahmen ihren Weg in Richtung Anwender finden. Hier wäre ein Engagement etwa von X/Open wünschenswert.

Die Klärung dieser grundsätzlichen Standardisierungsfragen würde die Entwicklungsrichtung der Hersteller besser kanalisieren, ohne dabei den Wettbewerb zu beeinträchtigen.

Anwendungssoftware und Benutzerschnittstellen

Früher besaß jedes Anwendungsprogramm seine eigene Schnittstelle mit eigener Ansteuerung und eigenem Erscheinungsbild. Der Benutzer mußte jede Anwendung und deren Bedienung (Befehle, Tastenkombinationen und Menüstrukturen) vollständig neu erlernen. Beim Wechsel von einem auf ein anderes Anwendungsprogramm kam zu dem Hindernis des komplizierten - und teilweise gar unmöglichen - Datenaustauschs also noch die Umstellung auf ein neues Programm hinzu. Die meisten Anwender haben - aufgrund dieser Probleme - früher den Wechsel zu einer anderen (besseren, aber leider in zweierlei Hinsicht inkompatiblen) Applikation gescheut.

Heute geht der Trend hin zu standardisierten Oberflächen wie OSF/Motif oder Open Look, die von allen möglichen Anwendungen in einer standardisierten Art und Weise (nämlich über die API) angesprochen werden. Für den Anwender ergeben sich daraus folgende Vorteile:

- Er kann mit einer vertrauten und intuitiv zu bedienenden Umgebung arbeiten.

- Er muß nicht für jede Anwendung andere Befehle, Tastenkombinationen und Bedienungsabläufe erlernen. Auch beim Einsatz neuer leistungsfähigerer Programme ist kein Umlernen mehr erforderlich.

- Und: Jeder Anwender kann - unabhängig von der eingesetzten Applikation - die Oberfläche wählen, die seinem Geschmack entgegenkommt (solange eine Schnittstelle zwischen Anwendung und Oberfläche existiert).

Da es derzeit noch keine einheitliche API (Anwendungsprogrammierschnittstelle) für alle Fenstersysteme gibt, ist heute noch eine gewisse feste Verknüpfung zwischen Anwendung und Oberfläche festzustellen.

Der nächste Schritt im Bereich der grafischen Benutzeroberflächen sind die sogenannten Windows-4GL-Systeme. Der Benutzer eines solchen Systems erwirbt eine Anwendung, betreibt diese in der von ihm favorisierten Umgebung, für die er ein entsprechendes Runtime-Paket erwerben muß, und das Erscheinungsbild der Anwendung paßt sich der vom Einsatz anderer Programme bereits vertrauten Oberfläche an. Soll nun die gleiche Anwendung unter einer anderen Umgebung betrieben werden, so ist dies möglich, solange für die neue Umgebung das entsprechende 4GL-Runtime-Paket verfügbar ist. Das Programm erscheint nun automatisch entsprechend den Spezifikationen der neuen Oberfläche. Für einen Benutzer, der mit einer Umgebung (beispielsweise Motif oder Open Look) einmal vertraut ist, bedeutet dies, daß er hierunter nahezu jedes Programm mit minimalem Lernaufwand einsetzen kann.