Die "Business-Integration" ist jetzt keine Utopie mehr

17.07.1992

Bei der Gestaltung von Informationssystem-Architekturen, vollzieht sich seit Beginn der 90er Jahre ein drastischer Wandel. Typisch dafür sind die Integration offener, standardisierter Systeme unterschiedlicher Hersteller sowie die Einführung neuer Client/Server-orientierter Anwendungsarchitekturen. Die entstehenden Systeme haben unmittelbaren Einfluß auf die Wettbewerbsfähigkeit von Unternehmen.

Die Einführung von Client/Server-Informationssystemen (C/S) ist mehr als eine rein technische Maßnahme. Sie eröffnet neue, innovative Möglichkeiten der Geschäftsabwicklung. Dadurch ergeben sich für die Unternehmen Chancen für strategische Wettbewerbsvorteile. C/S-Architekturen bieten nicht nur Kostenvorteile durch die Ablösung monolithischer Mainframe-Umgebungen, sie sind zugleich Voraussetzung und Triebfeder für die zunehmend stärkere Integration der Informationsverarbeitung in das betriebliche Geschehen.

Die neue Technologie erlaubt es, künstliche Grenzen zwischen Informationssystemen und Benutzern im Zuge des Redesigns von Verarbeitungsprozessen aufzuheben. Durchgängige Informationssysteme auf C/S-Basis bilden die Grundlage für abteiIungsübergreifende Geschäftsprozesse. Sie sind in der Regel auf konkrete, marktrelevante Ereignisse der Geschäftstätigkeit ausgerichtet.

Solche Informationssysteme laufen quer durch die traditionell funktional ausgerichteten Abteilungen wie Entwicklung, Produktion oder Vertrieb. Sie enden nicht an den Unternehmensgrenzen, sondern beziehen Lieferanten und Kunden mit ein. Aufgaben, die in der Vergangenheit aufgrund technischer Restriktionen ablauforganisatorisch auseinandergerissen wurden, wachsen wieder zusammen.

Dabei gilt es, die Geschäftsabwicklung ganzheitlich zu betrachten und die vier Leistungsfaktoren Mitarbeiter, Abläufe, Technologie und Infrastruktur optimal aufeinander abzustimmen. Das Ziel einer solchen "Business Integration" ist die Realisierung von strategischen Wettbewerbsvorteilen: Verbesserung des Kundenservice, Steigerung der Mitarbeiterproduktivität und Optimierung der Investitionen in die Informationstechnologie.

Insbesondere kundenorientierte Dienstleistungsfunktionen werden sich der neuen technischen Möglichkeiten für die Unterstützung integrierter Geschäftsprozesse bedienen. Die Fähigkeit, dem Kunden einen prompten, genauen und ganzheitlichen Service zu bieten, ist der Schlüssel zum geschäftlichen Erfolg. Im folgenden wird dargestellt, wie im Idealfall eine Kundenorder im Bankenbereich abgewickelt werden kann.

Ein Kunde schickt per elektronischer Post einen Kaufauftrag über 100 Aktienoptionen an seine Bank. Der zuständige Kundenberater übernimmt den Kaufauftrag in das interne Order-Leitsystem und läßt sich den voraussichtlichen Kaufpreis anzeigen. Bevor der Auftrag zur Ausführung freigegeben wird, prüft er zuerst die Bonität des Kunden. Damit wird eine Transaktion erzeugt, die automatisch an die elektronische Deutsche Terminbörse weitergeleitet wird.

Nach wenigen Minuten erhält der Kundenberater die von der Börse übermittelte Ausführungsanzeige des Auftrags. Dies löst wiederum eine Kettenreaktion aus: Das Portefeuille des Kunden wird automatisch aktualisiert und die Abrechnung des Kaufauftrags generiert. Danach werden die entsprechenden Buchungen auf den Konten durchgeführt.

Per Computer-Fax informiert der Kundenberater nun den Kunden, daß der Auftrag erledigt wurde und schickt eine elektronische Kopie der Ausführungsanzeige mit.

Voraussetzung für solche Geschäftsprozesse ist, daß die Sachbearbeiter von ihren Arbeitsplatzcomputern Zugriff auf alle Services haben, die für die ganzheitliche Bearbeitung eines Geschäftsvorfalls notwendig sind.

Als Basis für die informationstechnische Abbildung dieser integrierten Geschäftsabläufe eignen sich C/S-Architekturen hervorragend. Sie unterstützen die Integration der Anwendung zwischen dem Client-Computer am Arbeitsplatz und den an anderer Stelle oder außerhalb des Unternehmens stehenden Server-Computern. Standorte der Informationsverarbeitung einschließlich der Datenbank sowie die Zugriffsverfahren sind für den Anwender transparent; folglich muß er keinerlei Rücksichten auf sie nehmen.

Bei der geschilderten Nutzungsform des C/S-Computing ist die Beziehung zwischen Anwender und Informationssystem enger und damit effizienter. Der User kann die Informationssysteme flexibler einsetzen und hat mit Window-Terminals und grafischen Benutzeroberflächen (GUI) mehr Freiheitsgrade in der Konfiguration seiner persönlichen Arbeitsumgebung - nicht zuletzt durch den gleichzeitigen Ablauf mehrerer Anwendungen und zusätzlicher lokaler Bürokommunikation (Tabellenkalkulation, Textverarbeitung und Mail) in parallelen Terminal-Fenstern.

Insbesondere die grafischen Benutzeroberflächen unterstützen eine intuitive Bedienung der Anwendungen. Durch ein einheitliches "Look and Feel" bei der Bedienung verkürzt sich der Aufwand für Training und Einarbeitungszeit neuer Mitarbeiter. Sie können durch die Informationstechnologie wesentlich qualifizierter unterstützt werden. Auch lassen sich Benutzergruppen für die Arbeit am Computer erschließen, die bisher nicht berücksichtigt wurden.

So war beispielsweise eine wesentliche Anforderung an das von uns entwickelte C/S-Informationssystem für die Olympischen Winterspiele in Albertville, daß die über 40 000 Anwender - Mitarbeiter des Veranstalters, Journalisten, Athleten und freiwillige Helfer - das Informationssystem ohne Training nutzen konnten. Hilfreich waren dabei eine grafische Benutzeroberfläche, Touch-Screen-Terminals, ein einheitlicher Aufbau der Anwendungen und System-Navigierhilfen.

C/S-Architekturen unterstützen die Verteilung von Verarbeitungsprozessen zwischen Client-Workstations am Arbeitsplatz, leistungsfähigen Servern auf Basis offener Systeme und den traditionellen Mainframe-Servern. Diese Architekturform bietet viele Möglichkeiten zur optimalen Verwendung des Informationstechnologie-Budgets.

Der Kostenunterschied zwischen Mainframes und Workstations ist inzwischen derart gravierend, daß sich immer mehr Anwender zum Downsizing entscheiden. Bereits heute sind die MIPS-Kosten (Millionen Instruktionen pro Sekunde) auf dem Mainframe - je nach Definition und Quelle bis zu 500 mal höher als auf Workstations. Darüber hinaus kann der Anwender eine Workstation sehr leicht für seine individuellen Zwecke auf- oder umrüsten.

Die Integration weiterer Client-Workstations und Server-Computer ist bei richtig konzipierten und daher skalierbaren C/S-Architekturen kein Problem. Die mit Client/Server einhergehende Befreiung von den Fesseln proprietärer Systemumgebungen gibt dem Anwender die Möglichkeit, für eine bestimmte Aufgabe die beste Hard- und Softwareplattform auszuwählen und in sein C/S-System zu integrieren.

So klar die Vorteile von C/S-Systemen sind - der Weg dorthin ist in der Praxis dornenreich. Insbesondere müssen dabei Hürden überwunden werden, die mit einer proprietären, auf monolithische Strukturen ausgelegten DV-Erfahrung nicht zu bewältigen sind.

In der Regel basieren C/S-Informationssysteme auf der Kombination heterogener Hardware- und Netzwerkkomponenten sowie System- und Anwendungssoftware. Die einzelnen Systemkomponenten werden allerdings im allgemeinen nicht eigens für C/S-Informationssysteme neu beschafft. Schließlich sollen die Investitionen in die bestehende Infrastruktur geschätzt werden. In der Praxis bedeutet das, bestehende Anwendungen, Mainframes, Netzwerke, Workstations, LANs und PCs, die zuvor mit völlig unterschiedlichen Konzepten installiert und betrieben wurden, in ein einheitliches Architekturkonzept einzubinden.

Bei vielen C/S-Projekten, die von Anwendern auf eigene Faust begonnen werden, ist die Integration dieser unterschiedlichen Komponenten ein Alptraum. Der Grund hierfür ist fast immer der gleiche: Es fehlt die substantielle Erfahrung im Umgang mit verteilten Architekturkonzepten und mit neuen Technologien, wie beispielsweise dem GUI-Design, der LAN/WAN-Integration und der Interprozeß- beziehungsweise der Multi-Vendor-Rechnerkommunikation.

Die Hardware- und Systemsoftware-Selektion kommt häufig einem Lotteriespiel gleich. Oft passen nämlich Produktbeschreibung und Produkt bezüglich der angegebenen Standards nicht zusammen. Zudem sind bisher nur wenige integrierte Softwarewerkzeuge für C/S-Entwicklungsumgebungen verfügbar.

Auch das System-Management von C/S-Systemen ist schwierig. Die Komplexität von Aufgaben wie Konfigurations-, Problem-, Betriebs- und Performance-Management ist direkt abhängig von der Art der Daten- und Prozeßverteilung sowie der Anzahl der Netzwerkknoten, Systemkomponenten und Standorte. Die derzeit am Markt angebotenen Architekturplattformen und Werkzeuge für das System-Management von verteilten C/S-Systemen sind meist noch im Stadium der Entwicklung. Die verfügbaren Produkte decken häufig nur die Basisfunktionen ab. Viele Werkzeuge für das C/S-System-Management müssen deshalb zusammen mit der Anwendung entwickelt werden.

Die richtige Konfiguration der C/S-Anwendungs-, der Entwicklungs- und der System-Management-Architektur in der Designphase ist deshalb entscheidend für die erfolgreiche Durchführung von C/S-Projekten. Sünden in der Designphase haben häufig fatale Folgen. Oft läßt sich die geplante Integration von Komponenten aufgrund fehlerhafter Schnittstellen-Analysen nicht realisieren.

Auch erfüllt die Anwendungsarchitektur oft nicht die Anforderungen bezüglich Performance, Skalierbarkeit und Systemverfügbarkeit. In extremen Fällen sind fertig entwickelte C/S-Informationssysteme im produktiven Betrieb nicht steuerbar, da keine Vorkehrungen für die Interaktion zwischen Anwendungs- und System-Management-Architektur getroffen wurden.

Der Einsatz von neuen Technologien zur Realisierung einer Client-Server-Umgebung wird dann möglich, wenn die Unterschiede zwischen traditioneller und C/S-Projektentwicklung bei Planung, Design, Implementierung und Betrieb des neuen Informationssystems beachtet werden.

So müssen in der Planungsphase zunächst die neuen Möglichkeiten der Technologie für ein Redesign der Geschäftsprozesse abgeklärt werden. Diese Aufgabenstellung erfordert neben Know-how im Bereich der Informationstechnologie fundiertes Fach- und Branchenwissen. Es gilt, eine Vision für die Interaktion des Anwenders mit dem neuen Informationssystem zu entwickeln.

Parallel dazu hat so früh wie möglich die Auswahl der Technologie für das C/S-System zu erfolgen. Dies erfordert ein tiefes Verständnis der verteilten Architekturkonzepte, der beteiligten Systemkomponenten und der Produkte für das anschließende Architekturdesign. Die gewählte Technologierichtung bestimmt zugleich den Ausbildungsbedarf der Projektentwickler.

Die traditionellen Projektmethoden und Schätzverfahren versagen bei C/S-Projekten. Insbesondere bei der Erstinstallation von C/S-Systemen muß ein ausreichender zeitlicher und finanzieller Spielraum vorhanden sein. Die für die Installation nötige Infrastruktur darf dabei nicht zu kurz kommen. Eine iterative Entwicklung, die funktionale und technische Erstellung von Prototypen und die in der Regel komplexen Test- und Einführungsphasen stellen hohe Ansprüche. Ähnliches gilt für die Ausbildung der Projektmitarbeiter und das Training der Anwender. Allerdings zeigt die Erfahrung, daß

gerade in diesem Bereich die Lernkurve im Vergleich zu traditionellen Systemen einen steilen Anstieg aufweist.

Geschäftslogik von Technologie trennen

In der Designphase von C/S-Projekten ist die wichtigste Aufgabe neben der informationstechnischen Abbildung der Geschäftsprozesse die Konfiguration der C/S-Anwendungs-, der Entwicklungs- und der System-Management-Architektur. Die Anwendungsarchitektur definiert die Struktur eines C/S-Systems, deren Komponenten sowie die Kommunikation zwischen diesen Komponenten. Die Entwicklungsarchitektur beschreibt Vorgehensweise, Regeln, Standards und Entwicklungswerkzeuge für jede Komponente der Anwendungsarchitektur. Die System-Management-Architektur bestimmt den Architekturrahmen und die Werkzeuge für den Betrieb aller Komponenten des C/S-Systems.

Bei der Anwendungsarchitektur muß die richtige Verteilung der Prozesse und Daten auf die unterschiedlichen Plattformen beachtet werden. Diese Verteilung hat entscheidenden Einfluß auf die Systemverfügbarkeit und Performance. Ein weiterer Aspekt ist die saubere Trennung der Geschäftslogik von der Technologie. Durch eine schichtenweise Anordnung der wichtigsten Systemelemente - in der Regel Netzwerk, Kommunikation und Anwendung ist es möglich, einzelne Funktionsbereiche voneinander zu isolieren, so daß jeder Bereich von Änderungen anderer Bereiche unbeeinflußt bleibt. Weiterhin müssen bei der Anwendungsarchitektur verschiedene Services berücksichtigt werden. Dazu zählen eine einheitliche Security-Architektur über alle System-Plattformen hinweg, verteiltes Drucken sowie nicht zuletzt intelligente Routing-Algorithmen, um den Ausfall einer Hardware-Netzwerkkomponente für den Anwender transparent zu überbrücken.

Bei der Konfiguration der Entwicklungsumgebung sollte die gesamte Entwicklung des Systems auf einer einzigen Plattform erfolgen. Moderne C/S-Umgebungen unterstützen die Entwicklung für unterschiedliche Zielplattformen und trennen die Entwickler von der zugrunde liegenden Technologie. Weiterhin müssen frühzeitig die Standards für die Kommunikation zwischen Anwendern, Prozessen, Datenbanken und Rechnersystemen festgelegt und zusammengeführt werden.

Sonst kann es leicht geschehen, daß alte Designtechniken übernommen werden und beispielsweise GUI-Masken das "Look and Feel" von 3270-Applikationen haben, nur mit dem Unterschied, daß die PF-Tasten nun mit der Maus bedient werden. Bei dem Entwurf der Entwicklungsumgebung muß auch darauf geachtet werden, daß sich Produkte im Workstation- und LAN-Bereich rasch ändern. Die Migration zu neuen Technologien und Produkten ist deshalb schon zu Beginn zu planen. Gute Produktkenntnisse, die Zusammenarbeit mit dem Lieferanten und Abstinenz bei der Verwendung von Beta-Versionen helfen, hier unliebsame Überraschungen zu vermeiden.

Am schwierigsten ist aber die Konfiguration einer einheitlichen, standardisierten System-Management-Architekturplattform mit den nötigen Werkzeugen für den Betrieb von heterogenen, verteilten C/S-Informationssystemen. Heute benötigt noch beinahe jede proprietäre Hardwareplattform ihre eigenen System-Management-Werkzeuge und Verfahren.

Um verteilte Informationssysteme steuern zu können, sind Gateways zwischen den proprietären Werkzeugen einzuplanen. Oft sollten eigene System-Management-Schnittstellen in die Anwendungsarchitektur integriert werden, um die Verteilung in den Griff zu bekommen. Beispiele sind das Transaktions-Performancemanagement und das Versions-Management von Softwarekomponenten.

Technische Infrastruktur hat Vorrang

Begleitend zu der Designphase sollten bei C/S-Projekten funktionale und technische Prototypen entwickelt werden. Diese unterstützen die Demonstration der geänderten Geschäftsprozesse und zeigen die Art der Interaktion des Anwenders mit dem Informationssystem. Die Systemarchitekten können das Zusammenspiel der verwendeten Produkte überprüfen und dadurch Überraschungen während der Implementierung vermeiden.

In der Implementierungsphase ist vor den funktionalen Komponenten zuerst die technische Infrastruktur zu realisieren. Die Implementierung der Geschäftslogik setzt voraus, daß Entwicklungs-, Netzwerk- und Kommunikationsarchitektur sowie Zugriffsverfahren auf Datenbanken und GUI-Shells bereits vorhanden sind. Kritische Komponenten wie die Performance einer großen Datenbank sollten dabei vorrangig behandelt werden. Für die Implementierung der Geschäftsfunktionen hat sich die funktionsorientierte Segmentierung der Arbeitspakete als die beste Lösung erwiesen. Das heißt, daß ein Entwickler sowohl Client- als auch Server-Verarbeitungslogik für eine Funktion übernimmt.

Der Aufwand für die Testphase und die Einführung eines C/S-Systems ist normalerweise größer als bei monolithischen Systemen. Bei Planung der Testphase ist zu beachten, daß die Module kleiner sind, die Anzahl der Module ansteigt und es viele Interaktionen zwischen den Modulen gibt. Die Flexibilität von GUl-Benutzeroberflächen erlaubt dem Anwender zudem mehr Optionen bei der Bearbeitung eines Geschäftsfalles, was zu einer größeren Anzahl von Systemtest-Bedingungen führt.

Auch gibt es derzeit noch keine effektiven Testgeneratoren für GUI-Oberflächen. Außerdem müssen bei C/S-Systemen technische Testzyklen durchgeführt werden, die sicherstellen, daß bei einem Ausfall von Hardware oder Netzwerk keine Informationen verlorengehen, die Konsistenz der Daten erhalten bleibt und der Betrieb weitestmöglich aufrechterhalten wird. Ebenso sollte ein reibungsloser Restart/Recovery nach der Fehlerbehebung möglich sein.

Ähnliches gilt für die Einführung eines C/S-Systems in den Produktivbetrieb. Der Aufbau und Test der Produktionsnetzwerke, die Installation und Konfiguration der geographisch verteilten Rechner und die Verteilung der Prozesse und Daten im Netzwerk tragen zu einem erhöhten Aufwand in dieser Phase bei. In komplexen C/S-Projekten sollte als abschließender Integrationstest eine mehrwöchige Simulationsphase mit den Anwendern in der Produktionsumgebung durchgeführt werden.

Schulungsmaßnahmen sind unerläßlich

Für den erfolgreichen Betrieb von C/S-Systemen muß die Ausbildung der System-Management-Mitarbeiter rechtzeitig auf die neuen Architekturkonzepte ausgerichtet werden. Sie benötigen Schulungen, um den Umgang mit den neuen Architekturen, Methoden und Werkzeugen zu erlernen.

Bei geographisch verteilten Computer-Systemen, die über C/S-Anwendungen in ein integriertes Informatikkonzept eingebunden sind, müssen Maßnahmen zur lokalen Problembehandlung getroffen werden. Diese müssen am Tag der Systemfreigabe zur Verfügung stehen und einsatzbereit sein. Dazu gehören Werkzeuge zur Fehleranalyse, eine Logistik zur Verteilung und Installation von Software-Updates sowie Datensicherungs- und Restore-Möglichkeiten. Falls nicht überall Techniker vor Ort verfügbar sind, ist es wünschenswert, daß zumindest einige Benutzer Systemunterbrechungen selbständig oder in Zusammenarbeit mit einem zentralen Helpdesk beheben können.

Ein Beispiel für die erfolgreiche Durchführung eines komplexen C/S-Systems ist das Informationssystem für die Olympischen Winterspiele in Albertville. Das mehrsprachige System umfaßt Funktionen wie Teilnehmer- und Anlagenverwaltung, Ticket-Vergabe, Mitarbeitereinsatz-Planung sowie die Speicherung und Bereitstellung der Ergebnisse aller Wettbewerbe.

Darüber hinaus sind ein Informationssystem für die Öffentlichkeit und ein besonderes System für die Medien mit Electronic Mail integriert worden. Die Zielplattform bestand aus mehreren MVS-Servern, die mit über 1200 zum Teil direkt an der Skipiste installierten OS/2-Client-Computern verbunden waren. Als Entwicklungsumgebung wurde Foundation for Cooperative Processing eingesetzt.

Voraussetzung für den Erfolg einer solche komplexen C/S-Entwicklung ist die optimale Zusammenstellung von funktionalen und technischen Experten im Projektteam. Benötigt werden:

- relevante Erfahrung im C/S-Projektmanagement;

- Organisationswissen für die Gestaltung von ganzheitlichen Geschäftsprozessen;

- Erfahrungen im verteilten Architekturdesign;

- genaue Kenntnis der beteiligten Hard- und Software-Produkte sowie

- detailliertes Branchenwissen.

Die Zukunft gehört Client-Server

Die Zukunft der Informationsverarbeitung, so wage ich abschließend zu prognostizieren, wird entscheidend durch das Client/Server-Verarbeitungsmodell geprägt - dafür sprechen schon die Erfahrungen, die wir in zahlreichen Projekten auf internationaler Ebene gewinnen konnten. So wurde im Geschäftsjahr 1991 rund ein Drittel unseres weltweiten Jahresumsatzes durch Projekte mit einem C/S-Anteil realisiert. Bei etwa der Hälfte davon war das Client/Server-Modell projektentscheidend.

Für das laufende Geschäftsjahr 1992 erwartet Andersen Consulting, daß rund 80 Prozent der Projekte eine C/S-Komponente enthalten. Wiederum bei der Hälfte davon wird das C/S-Modell eine projektentscheidende Rolle spiele.

Was leistet ein C/S-System?

Client/Server-Architekturen nutzen die Möglichkeit, Computer unterschiedlicher Leistungsklassen und Zweckbestimmungen über verteilte Anwendungsarchitekturen miteinander zu verbinden. An der Bearbeitung einer Geschäftstransaktion sind danach mindestens zwei Computerprozesse - Client und Server - beteiligt, die unterschiedliche Aufgaben wahrnehmen. Client-Prozesse sind Besteller, Server-Prozesse sind Lieferanten von Services.

Die Kommunikation zwischen Client und Server basiert auf Transaktionen, wobei der Client die Transaktionen generiert und dem Server zur Verarbeitung überstellt. Typischerweise residieren Client- und Server-Prozesse auf unterschiedlichen Computern, wobei das Client-System die Steuerung der grafischen Benutzerschnittstelle sowie die lokale Verarbeitung und das Server-System die Funktion des Prozeß- und Daten-Servers übernimmt.