Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

17.07.1992 - 

Ein Postverteiler reduziert den Programmieraufwand erheblich

Durch Objektorientierung wird Client-Server bezahlbar

Die Vorteile von Client-Server-Architekturen werden heute nur in geringem Umfang genutzt, da die Kosten aufgrund der komplizierten Programmierung - den größten Teil des Nutzens auffressen. Objektorientierte Systemarchitekturen ersparen den Entwicklern die Schnittstellen-Programmierung und wirken deshalb kostensenkend.

Die Antwort auf die Frage, worin die Vorteile von Client-Server-Architekturen bestehen, liegt quasi auf der Hand: PCs und Unix-Workstations werden immer leistungsfähiger und billiger. Eine MIPS auf dem Arbeitsplatz kostet einen Bruchteil einer Mainframe-MIPS. Ähnliche Kostenverhältnisse lassen sich bei Festplatten, Druckern und Arbeitsspeicher feststellen. Außerdem sind Antwortzeiten bei PCs kein Thema.

Hinzu kommt die Flexibilität von Fensteroberflächen: Aus dem einen Programm heraus, klick, ins nächste hinein, ausschneiden, einsetzen, ...alles geht schnell und einfach. Die Handbücher kann man getrost im Schrank lassen, da fast alle Programme intuitiv einfach benutzbar sind.

Wenn Client-Server wirklich so vorteilhaft ist, warum macht es dann eigentlich nicht jeder? Die Kehrseite der Medaille sind heute noch die Programmieraufwände, die daraus entstehen, daß jede Maschine ihre eigene Architektur hat und nur wenig kompatibel zu anderen ist. Auch vermeintliche Zauberworte wie RPC, TCP/IP, LU6.2 und APPC helfen nicht viel weiter: jeder Entwickler muß wissen, wo welche Daten erreichbar sind, lokal oder remote, er hat die richtigen Calls auszuwählen und abzusetzen etc. Die Fülle der Details, die zu berücksichtigt sind, überfordert oft auch die fähigsten Programmierer.

Die Konsequenz sind hohe Kosten - bei der erstmaligen Programmerstellung und besonders später bei der Wartung. Denn auch die wenigen, teuren, super-ausgebildeten und multitalentierten Spezialisten, die diese Art der Programmierung beherrschen, brauchen dafür Zeit. Schließlich ist für jede einzelne Client-Server-Verbindung ein eigener aufwendiger Programmiervorgang notwendig.

Die Kosten wachsen also proportional zur Anzahl der Verbindungen. So müssen zum Beispiel für zehn Server-Applikationen und 20 verschiedene Client-Anwendungen schon bis zu 200 unterschiedliche Session-Abläufe programmiert werden. Auf dieser Basis wird eine unternehmensweite Vernetzung von Informationssystemen niemals zu vernünftigen Kosten möglich sein.

Vor drei Jahren wurde die Object Management Group (ORB), der "weiß", wo der Empfänger der Nachricht zu finden ist. Die Object Management Group (OMG) hat eine Common Object Request Broker Architecture (Corba) definiert, die als Quasi-Standard für einen solchen Postverteiler gilt.

Mit einem ORB muß der einzelne Entwickler den genauen Speicherort der Datenbestände im Rechnernetz nicht mehr kennen. Er braucht darauf auch in seinen Programmen nicht mehr einzugehen.

Die Konsequenz: Wenn sich der Speicherort von Daten im Netz ändert, so hat dies keine Programmänderungen zur Folge. Diese Tatsache ist besonders dann interessant, wenn mittelfristig ein Downsizing angestrebt wird.

Damit der Postverteiler seine Arbeit verrichten kann, ist es notwendig, daß die Objekte eindeutig identifiziert werden können. Es liegt dabei auf der Hand, daß ein Postverteiler die Eindeutigkeit von Objektnamen und damit die Zustellbarkeit von Nachrichten nur innerhalb der für ihn sichtbaren Welt gewährleisten kann. Da die aufgezeigten Vorteile für die Client-Server-Programmierung nur innerhalb durchgängiger Objektweiten zum Tragen kommen, hängt der Nutzen der Objektorientierung von der Größe der verfügbaren Objektwelt ab.

Bei C + + beschränkt, sich die Größe der Objektwelt auf die Laufzeit eines einzelnen Lademoduls; diese Tatsache limitiert den Nutzen von C + + empfindlich. Bei Smalltalk umfaßt die Objektwelt einen einzelnen Arbeitsplatz; das reicht aber noch nicht aus. Im OMG-Modell kann die Größe der Objektwelt beliebig - auch über mehrere Maschinen - gewählt werden.

Allein der Einsatz einer objektorientierten Programmiersprache bringt also noch nicht die erhofften Vorteile für die Client-Server-Programmierung. Wichtiger für die Reduzierung der Programmierkosten ist der Aufbau einer durchgängigen, alle beteiligten Maschinen einschließenden Objektwelt.

Hierfür muß lediglich für jeden Maschinentyp ein einfacher Postverteiler erstellt werden. In einem kürzlich beendeten Projekt haben wir in diese Aufgabe einen Aufwand von 70 Tagen investiert. Wer es weniger eilig hat, wird wahrscheinlich schon im Laufe des Jahres 1999 fertige ORBs von der Stange kaufen können. (Siehe auch Schwerpunkt Seite 21)

*Martin Rösch ist Geschäftsführer der Rösch Consulting Gesellschaft für innovative Software-Entwicklung mbH in Kaarst bei Düsseldorf. Rösch Consulting ist Mitglied der Object Management Group und vertreibt deren Veröffentlichungen.