Produktivitäts- und Zeitgewinn durch 4GT-Systeme:

Mainframe-Technologie erhöht PC-Attraktivität

12.05.1989

*Gerhard Hill ist im Bereich Product Marketing bei der Software AG Darmstadt zuständig für die PC-Produkte.

Die hohe Leistungssteigerung von PCs in den letzten Jahren (höhere Taktfrequenz, 32-Bit-Bus, größere Haupt- und Plattenspeicher) sowie der starke Preisverfall wirft die Frage auf: Können PCs als kostengünstiger Ersatz und/oder Ergänzung für Mainframes dienen?

PC und Mainframe haben jeweils ihre unterschiedlichen Stärken. Der Mainframe wird hauptsächlich wegen seiner Schnelligkeit beim "Datenschaufeln" (Daten lesen/schreiben und sortieren) sowie der Fähigkeit, sehr viele Benutzer zu bedienen (was aber leicht zu schlechten Antwortzeiten führt), geschätzt.

Der PC hingegen glänzt mit der Möglichkeit sehr komfortabler Bedieneroberflächen und der Unabhängigkeit von anderen Benutzern (was meist sehr schnelle, zumindest aber gleichbleibende Antwortzeiten garantiert). Das heißt also für die Beantwortung der oben gestellten Fragen: Um eine optimale Nutzung sowohl des Mainframe als auch des PC zu erreichen, sollten beide jeweils so eingesetzt werden, daß ihre Stärken voll zum Tragen kommen. Was heißt das konkret?

Der Mainframe ist nach wie vor die bessere Lösung, wenn viele Benutzer auf sehr großen Datenbeständen arbeiten. Geht es aber darum, daß ein Benutzer für seine Aufgaben besonders viel CPU-Zeit benötigt, dann ist oft eine Lösung auf einem PC oder einer Workstation vorzuziehen. Zu diesen CPU-intensiven Programmen gehören grafische Systeme und statistische Auswertungen, aber auch Software-Entwicklung. Beim letzten Punkt fallen insbesondere Compilieren und Binden ins Gewicht. Diese Funktionen zählen durch die entstehenden Wartezeiten zu den unproduktivsten. Wird nämlich ein Compiler auf einem Mainframe benutzt, so ist die tatsächliche Wartezeit für den Programmierer, bis er sein compiliertes und gebundenes Programm testen kann, um ein Vielfaches höher als die eigentliche CPU-Zeit. Dies erklärt sich aus der Tatsache, daß der Benutzer beim Mainframe die Ressourcen (CPU, Platten, Hauptspeicher) mit vielen anderen teilen muß und deshalb nicht die volle Leistung zur Verfügung hat.

Beim PC hingegen gibt es nur einen Benutzer pro CPU, so daß sich die Wartezeit im wesentlichen nur aus reiner CPU- und Plattenzugriffszeit ergibt. Dies führte dazu, daß PCs als Arbeitsstation für die Anwendungsentwicklung sowohl für den Bediener (= Anwendungsentwickler) als auch für das Unternehmen eine ausgesprochen günstige Alternative darstellen.

Voraussetzung ist aber, daß sich das, was am PC entsteht, überhaupt am Mainframe verwenden läßt. Hier werden zunehmend PC-Versionen von Mainframe-Entwicklungswerkzeugen und -Umgebungen angeboten. Ziel: Entwicklung und Test von Mainframe-Applikationen auf dem PC, Einsatz später auf dem Mainframe. Der Grund: Produktivitätsgewinn. Worin liegt dieser begründet? Da ist zum einen die leichtere, schnellere, komfortablere Bedienung des PC und der PC-Software. Nur um im Programmeditor eine Seite zurückzublättern, muß der Benutzer beim PC nicht mehrere Sekunden warten.

Durch die Window-Technik am PC lassen sich mehrere Objekte schnell vergleichen oder gleichzeitig bearbeiten. Zum anderen stehen dem Benutzer die gesamten Ressourcen des PC zur Verfügung, was zu schnellen Antwort- und Compilierungszeiten führt. Hinzu kommt, daß bei Einsatz mehrerer PCs als Entwicklungsstation die einzelnen Programmierer in voneinander unabhängigen Umgebungen arbeiten und testen. Die jeweiligen Programmtests beeinflussen sich nicht, was unproduktive Zeiten vermeiden hilft. Bricht ein Programm vorzeitig ab und "reißt' womöglich noch die Entwicklungsumgebungen herunter, sind beim Mainframe die Kollegen vorübergehend zum Nichtstun verurteilt. Wer kennt nicht die Notwendigkeit, aus diesem Grund mindestens ein "Test-CICS" für die Entwicklung vorzuhalten.

Alles in allem sind also von einem Auslagern der Anwendungsentwicklung vom Mainframe auf den PC Produktivitäts- und Zeitgewinne zu erwarten, wenn einige Voraussetzungen erfüllt sind (siehe Kasten).

Die Produktivitätsgewinne durch Anwendungsentwicklung auf dem PC können zwar beträchtlich sein, sind aber mit denen, die durch den Einsatz der Technologie der 4. Generation (4GT-Systeme) erreicht werden können, nicht zu vergleichen. Allein der Einsatz von kompletten Entwicklungsumgebungen der 4. Generation auf einem Mainframe führen in der Regel schon zu höheren Produktivitätsgewinnen als die Auslagerung konventioneller Tools auf den PC. Diese Gewinne begründen sich auf folgende Eigenschaften von 4GT-Systemen:

- Integrierte Entwicklungsumgebung. Alle Entwicklungsfunktionen liegen in einer gemeinsamen, einheitlichen, Oberfläche (zum Beispiel Editor, Compiler), dadurch kein zeitraubender Wechsel zwischen verschiedenen Umgebungen und Werkzeugen. Kein Erlernen unterschiedlicher Befehle.

- Transparenz der Anwendungsprogramme gegenüber Datenhaltung und TP-System. Programme, die in 4GT-Systemen entwickelt wurden, enthalten keinerlei DB- oder DC-spezifische Informationen (zum Beispiel CICS-Aufrufe, Datenbanktyp). Alle Zugriffe auf Daten und Bildschirm sind als einfache 4GL-Statements implementiert, die vom 4GT-Runtime-System umgesetzt werden. Dies hat mehrere Vorteile:

- die Programme sind portabel (unterschiedliche Datenbanken, DC-Systeme, Betriebssysteme);

- der Entwickler braucht kein systemspezifisches Know-how, also weniger Lernaufwand;

- die Programme sind wesentlich kürzer, dadurch schneller entwickelt, enthalten weniger Fehler und sind wartungsfreundlicher. Durch den Einsatz solcher 4GT-Systeme auf PCs ergeben sich weitere Produktivitätsgewinne durch die oben beschriebenen Vorteile, die die PCs bieten (Komfort, schnelle Antwortzeiten).

Weil das 4GT-System die Entwicklungsumgebung darstellt, ist es nicht notwendig, eine komplette Mainframe-Umgebung auf dem PC nachzubilden. 4GT-Systeme verfügen meistens über Funktionen, um Daten direkt zwischen PC und Mainframe auszutauschen (unter Umgehung eines konventionellen File-Transfers). Auf diesem Weg ist die kooperative Nutzung von Mainframe- und PC-Ressourcen kein Problem mehr.

So können zum Beispiel die verschiedenen User-Views der Datenbanken nach wie vor im Mainframe-Data-Dictionary zentral und redundanzfrei gespeichert werden und werden bei Bedarf direkt auf einen Entwicklungs-PC übernommen. Dazu ist dann kein aufwendiges Entladen und Übertragen in Zwischendateien notwendig. Das gleiche gilt entsprechend für Programme, die vom PC zum Mainframe übertragen und dort eingesetzt werden sollen.

Ein besonderer Effekt ergibt sich für Berater und Softwarehäuser - ist es doch möglich, mit einem recht bescheidenen finanziellen Aufwand eine Mainframe-adäquate Entwicklungsumgebung bereitzustellen. Das bedeutet:

- Mit geringem Ausstattungsaufwand können Mainframe-Anwendungen entwickelt werden. Bei Kundenprojekten verringert sich die Anwesenheitszeit vor Ort.

- Die so entwickelten Anwendungen sind portabel; sie können sowohl auf PCs eingesetzt werden (dort wurden sie schließlich entwickelt) als auch auf unterschiedlichen Mainframes (nicht auf ein bestimmtes TP-System beschränkt).

- Die Anwendungen sind, da sie mit einem 4GT-System entwickelt wurden, leicht wartbar.

- Auch kleinere Softwarehäuser können jetzt ohne Anschluß an ein Mainframe-Rechenzentrum Standardanwendungen für Mainframes schreiben und vermerkten.

- Die Mainframe-Anwendungen können auf einem PC demonstriert werden (wichtig für Messen und Kundentermine).

Wenn nun schon ein 4GT-System auf dem PC existiert, warum sollen dann nicht Applikationen auch dort eingesetzt werden? Generell ist dies möglich. Es gibt eine ganze Reihe von Einsatzmöglichkeiten für solche lokal ablaufenden Applikationen. Da sie mit einem auf Mainframe und PC identischen System entwickelt wurden, kann sogar jederzeit und kurzfristig von PC auf Mainframe umgestellt werden (oder umgekehrt). Ein auf dem PC verfügbares 4GT-System kann also auch für den Einsatz in der Produktion Gewinne bringen (zum Beispiel durch Entlastung des Mainframe).

Voraussetzungen für den Erfolg

- Mainframe- und PC-Entwicklungsumgebung müssen in ihrer Funktionalität identisch sein, Damit ist kein zusätzlicher Lernaufwand erforderlich und Programme, die vom PC auf den Mainframe übernommen werden, brauchen in keiner Weise nachbearbeitet zu werden.

- Die PC-Entwicklungsumgebung muß möglichst vollständig sein, damit eine komplette Applikation nicht nur programmiert und compiliert, sondern auch vollständig getestet werden kann.