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.

4GL-Produkte graben konventionell Sprachen nicht das Wasser ab:


10.07.1987 - 

Fridliches Nebeneinander statt Verdrängungsprozeß

"Keinen neuen Wein in alten Schläuchen" lautet das oberste Gebot bei der Arbeit mit Sprachen der vierten Generation. Diese Systeme dürfen nicht an Maßstäben gemessen werden, die für ihre Vorgänger Gültigkeit hatten. Nach Ansicht von Karsten Dietze* werden 4GL-Produkte die Sprachen früherer Generationen mittelfristig nicht ersetzen, sondern neben und mit ihnen arbeiten.

So unterschiedlich und zahlreich wie die Softwareprodukte, die sich zur vierten Generation der Programmiersprachen rechnen, sind auch die Antworten, die man auf die Frage nach den typischen Merkmalen der vierten Generation hören oder lesen kann. Der kleinste gemeinsame Nenner ist die Schnelligkeit, mit der die Regeln erlernt und Anwendungen erstellt werden können.

Darüber hinaus läßt sich ein unverbindlicher Katalog von Mindestanforderungen an 4GL-Systeme zusammenstellen, der ihre weitgehende Identifikation mit Endbenutzersystemen erkennen läßt. Enthalten sind Masken- und Reportgeneratoren, Möglichkeiten zur tabellarischen und grafischen Datenaufbereitung, Modellbearbeitungen, sowie Textverarbeitungs- und Kommunikationseinrichtungen.

Sammelbecken für verschiedenartige Systeme

Als Hauptaufgabe der Sprachen der vierten Generation läßt sich die Auswertung von Informationen zur Unterstützung von Planungs-, Steuerungs- und Kontrollvorgängen nennen. Abgesehen davon versucht die vierte Generation, wie der Name schon sagt, sich gegenüber der dritten zu definieren und ist daher als Sammelbecken verschiedenartiger Produkte bislang in erster Linie ein Symbol für Fortschrittlichkeit mit variablem Inhalt.

Fortschrittlichkeit verarbeitet jedoch noch keine Daten, und genau da beginnen oft die Probleme mit 4GL-Produkten: Sie werden anhand von Schlagworten auf ihre Effizienz hin überprüft - und enttäuschen.

Zunächst allerdings herrscht eine optimistische Grundhaltung gegenüber den Sprachen der vierten Generation vor, wie an ihrem zunehmenden Einsatz deutlich wird. Der Trend führt weg von den schwerfälligen alten Programmiersprachen, hin zu den dynamisch-flexiblen Werkzeugen der vierten Generation.

Hintergrund dafür ist die Forderung nach mehr Transparenz und vermehrter Nutzung der DV durch einen erweiterten Kreis kompetenter User in den Unternehmen. Bei der Konzeption und Entwicklung von Anwendungen sollen die Fachabteilungen stärker mit einbezogen werden. Ziel ist es, das Entwicklungssystem aktiv zu beherrschen.

Das Management auf der unteren und vor allem der mittleren Führungsebene muß anhand selbsterstellter Ad-hoc-Anwendungen rasch und unkompliziert solide Entscheidungsgrundlagen schaffen können. Die spezialisierte und zeitaufwendige Tätigkeit des Programmierens soll vermehrt zu einer auch von DV-Laien ausgeübten routinemäßigen Nebenbeschäftigung werden. Die Sprachen der vierten Generation können das Vehikel dazu sein.

Die erwähnten Ziele lassen sich dann erreichen, wenn sich neben der Frage "Was ist wünschenswert?" auch die Frage "Was ist möglich?" ausreichend beantworten läßt. Ist das nicht der Fall, entstehen leicht Probleme, deren typische Begleiterscheinungen das Überraschungsmoment und die enttäuschten Erwartungen sind. Dies gilt beispielsweise, wenn Systeme als nicht "endbenutzergerecht" befunden werden, der Zeit- und Ressourcenaufwand höher als erwartet liegt oder die Einpassung der 4GL-Anwendungen in die reguläre Produktionsumgebung unbefriedigend ist.

Solche Erfahrungen dämpfen begreiflicherweise die Begeisterung

und führen, wenn sie nicht mit einem konstruktiven Ansatz überwunden werden, zu dem leider häufig beobachtbaren Saure-Trauben-Phänomen: 4GL-Systeme werden mit großem Enthusiasmus in Betrieb genommen, aber in der Folge nicht ausreichend genutzt und für unzulänglich erklärt, weil das Ausschöpfen ihrer Möglichkeiten tiefergehende Kenntnisse und Auseinandersetzung erforderte als geplant.

Die Sprachen der vierten Generation sind nicht frei von Nachteilen, mit denen ihre besonderen Vorzüge - Benutzerfreundlichkeit, Vielseitigkeit und Flexibilität - erkauft werden. Begeisterter und erfolgreicher Einsatz von Produkten der vierten Generation setzt ein generelles Umdenken bezüglich der Rolle von 4GL-Anwendungen an sich und detaillierte Information über die Möglichkeit der konkret ins Auge gefaßten Sprache voraus.

Produktivitätssteigerung mit Nachteilen erkauft

Ein Punkt, der regelmäßig Probleme aufwirft und daher als unbefriedigend empfunden wird, ist die Einpassung von 4GL-Anwendungen in den regulären Produktionsbetrieb. Beklagt werden einerseits übermäßige Belastung der Kapazitäten und lange -Antwort- beziehungsweise Verweilzeiten, andererseits eine mangelhafte Anpassung der 4GL-Anwendungen an die etablierten Standards für die Darstellung von Anforderungsprofilen, Programmierung, Dokumentation und Pflege.

Besonderheiten der vierten Generation in diesen Bereichen müssen bereits bei der Konzeption von Anwendungen beachtet werden, um rechtzeitig die vermeidbaren von den unvermeidbaren Problemen trennen zu können und den optimalen Einsatzrahmen für das gewählte 4GL-Werkzeug abzustecken.

Sprachen der vierten Generation sollen rasche, unkomplizierte und flexible Programmierung beziehungsweise Programmänderung im Sinne individueller Datenverarbeitung ermöglichen. Tatsächlich sind drastische Senkungen des Erstellungsaufwandes keine Besonderheit. Das liegt einerseits an der unkomplizierten Struktur der Sprachen, die sich nicht mit Datei- oder Speicher-Platzverwaltung, sondern fast ausschließlich mit der Ablauflogik ("was", nicht "wie") befassen, andererseits an der fast unbegrenzt variablen Gestaltung der Programme.

Zu den Nachteilen, um die eine solche Produktivitätssteigerung erkauft wird, gehört andererseits ein beträchtlicher systeminterner Verwaltungs-Overhead, der unter ungünstigen Voraussetzungen zu erheblichen Systembelastungen führen kann. Diese äußern sich nicht nur durch die mit der Verarbeitungsdauer zunehmende Lanasamkeit, mit der die 4GL-Anwendungen ausgeführt werden, sondern auch durch die Behinderung anderer parallel dazu auszuführender Verarbeitungen.

Abgesehen von den konkreten Auswirkungen wird diese kritische Eigenschaft auch deshalb als unangenehm empfunden, weil sie dem Image der 4GL-Systeme als Zeitsparer nicht entspricht und weil die unmittelbaren Ursachen für den Benutzer nicht klar erkennbar sind. Mit der Unkompliziertheit der Benutzeroberfläche nimmt gleichzeitig die Komplexität der in der Black-box ablaufenden Vorgänge zu. Dies ist ein Effekt, der nicht erst bei Sprachen der vierten Generation oder Endbenutzersystemen auftritt; er hat vielmehr die Weiterentwicklung der Programmiersprachen schon immer begleitet, und man muß ihn beim Einsatz von 4GL-Produkten mit einkalkulieren.

Um so sorgfältiger ist auf eine Performance-orientierte Entwicklung von 4GL-Anwendungen zu achten. Grundvoraussetzung dafür sind Praktische Erfahrungen mit dem verwendeten System, da wirkungsvolle Einsparungen an der Ausführungszeit nur vorgenommen werden können, wenn das Antwortverhalten einzelner 4GL-Befehle bei unterschiedlichen Voraussetzungen bekannt ist und in das Design der Anwendung eingeht.

Vorteile der alten und der neuen Programmiersprachen sollten in Kombination miteinander genutzt werden, wobei Kombination weder Gleichschaltung noch Konkurrenz bedeutet, sondern Ausnützen der Verschiedenheit. Sinnvolle Arbeitsteilung kann beispielsweise darin bestehen, daß datenintensive, wenig veränderliche Verarbeitungsschritte, wie die regelmäßige Bereitstellung eines auszuwertenden Datenbestandes, mit herkömmlichen Mitteln durchgeführt werden; die Sprache der vierten Generation hingegen führt die darauffolgende individuelle, auswertungsorientierte Verarbeitung aus.

Ziel der vierten Generation kann es kaum sein, ihre Vorgänger in absehbarer Zukunft vollständig zu ersetzen. Angestrebt ist vielmehr, mit ihnen in produktiver Koexistenz und Kooperation zu leben und von ihnen zu profitieren. Generationskonflikte treten auf, wenn die eigenständige Identität der 4GL nicht gewahrt, sondern am Maßstab etablierter DV-Strukturen gemessen wird, was sich am Beispiel der Verwendung von Standards immer wieder zeigt.

Standardvereinbarungen sind unerläßlich

Auch die vierte Generation braucht. Standardvereinbarungen für die Ausarbeitung von Leistungsprofilen, den Aufbau von Programmen und die Gestaltung von Dokumentationsmaterial. Der Versuch, 4GL-Anwendungen in diesen Punkten mit den gewohnten, ursprünglich für Programme früherer Generationen entwickelten Standards zu erfassen, liegt nahe.

Je umfassender aber die Gültigkeit von Standards im Unternehmen ist, desto höher wird auch die Wahrscheinlichkeit, daß sie zu unbeweglich sind, um sich an die dynamischveränderlichen 4GL-Anwendungen anpassen zu können. Im Bereich der vierten Generation werden Anwendungen vielfach" aus der Hüfte geschossen". Das erschwert nicht nur die Standardisierung, sondern läßt sie auch unerwünscht werden, weil sie unter anderem die Zeit kostet, die durch den 4GL-Einsatz ja gerade gespart werden soll.

Die Untauglichkeit der herkömmlichen Standards führt in der Praxis häufig zu ihrer ersatzlosen Streichung im Bereich der vierten Generation, deren großer Vorteil - die schnelle Anwendungsentwicklung und -änderung - dadurch preisgegeben wird. Das Resultat des Verzichts auf Standards sind Programmvorgaben, die einem Perpetuum mobile gleichen, permanente Softwarebaustellen, eine Unzahl sich gegenseitig aufhebender Änderungen.

Konventionelle Sprachen als Maßstab ungeeignet

Zur stromlinienförmigen Gestaltung von 4GL-Anwendungen sind 4GL-gerechte Standardvereinbarungen notwendig, die sich nicht an denen der dritten Generation messen, sondern dem dezentralen, individuellen und spontanen Charakter der vierten Generation Rechnung tragen. Im Umgang mit Sprachen der vierten Generation dürfen Methoden und Maßstäbe nicht die alten bleiben, weil sich die Software samt ihren Aufgaben verändert hat. Gerade hinsichtlich der Frage der Endbenutzereignung muß nun festgestellt werden, daß in der vierten Generation auch die Benutzer nicht die alten bleiben.

Das zum gegenwärtigen Zeitpunkt noch sehr theoretische Schlagwort der "Endbenutzerprogrammierung" weist bereits darauf hin, daß sich die Aufgaben des Endbenutzers und des Programmierers beim Einsatz von Informationssystemen der vierten Generation einander annähern. Der Dialog und die Zusammenarbeit zwischen DV- und Fachabteilung wird durch Sprachen der vierten Generation wesentlich vereinfacht.

Das liegt einerseits daran, daß die gut nachvonziehbaren Ausdrucksformen der 4GL-Systeme einer informierten Fachabteilung die Möglichkeit geben, mit konstruktiven Vorschlägen auf die Anwendungsgestaltung einzuwirken. Andererseits bewirkt die aufgabenorientierte Spezialisierung der einzelnen 4GL-Produkte, daß der Entwickler nicht mehr nur fachliche Anforderungen in Programme umsetzt, sondern eigene Kenntnisse der fachlichen Seite erwerben muß, um beratende Funktionen bezüglich des optimalen Einsatzes der 4GL-Werkzeuge übernehmen zu können.

Fachabteilung übernimmt mehr DV-Verantwortung

Die Verständigung zwischen DV- und Fachabteilung wird durch Sprachen der vierten Generation vereinfacht, ohne daß die Aufgabenbereiche deshalb ihre Konturen verlieren. Die Fachabteilung übernimmt im Rahmen der 4GL-Anwendung mehr DV-Verantwortung, die sogar geringfügige Modifikationen an Programmen bedeuten kann. Anwendungen, die über simple Standardanzeigefunktionen am Bildschirm hinausgehen, erfordern jedoch nach wie vor das Know-how von Spezialisten.

In diesem Sinne läßt sich zusammenfassend sagen, daß Expertenberatung ein entscheidender Faktor beim Einsatz von 4GL-Systemen ist. Anbieterversprechen führen immer wieder zu Mißverständnissen und Frustration, wenn sie nicht anhand der Praxis interpretiert werden. Kritisches Prüfen, unterstützt durch Detailwissen, das sich auf Erfahrung gründet, erhöht die Erfolgssicherheit bei der Auswahl einer Sprache der vierten Generation für geplante Problemlösungen in der Datenverarbeitung.