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.

23.08.1985 - 

Hochsprache als Gesamtlösung oder effizientes Hilfsmittel:

Zwei Philosophien bestimmen die Tool-Szene

Sprachen der vierten Generation zur effizienteren Programmentwicklung haben sich inzwischen weitgehend durchgesetzt. Mit der Akzeptanz von Hochsprachen wächst bei den Anwendern auch die Bereitschaft. sich mit den unterschiedlichen Grundphilosophien auseinanderzusetzen, die den einzelnen Softwareprodukten zugrunde liegen. Abhängigkeit vom Hersteller, Wartungsprobleme und hohe Folgekosten waren Themen bei einem Erfahrungsaustausch der Kommunen in Stuttgart.

Die Festlegung einer öffentlichen Verwaltung auf eine Sprache der vierten Generation ist aus haushaltsrechtlichen Gründen problematisch. Nicht nur die Installation der Hochsprache allein belastet das Budget des Käufers, sondern es fallen auch Neben- und Folgekosten an, deren Ausmaße anfangs nur schwer einzuschätzen sind. So ist beispielsweise der Einsatz einer "4th Generation Language" häufig mit einer dauerhaften Anmietung des dazugehörigen Datenbanksystems verbunden.

Die Verwaltung der Universität Düsseldorf überprüft derzeit, inwieweit sich unübersehbare Folgekosten in diesem Bereich vermeiden lassen. Es besteht die Forderung nach einer Programmier- und Abfragesprache der 4. Generation, mit der strukturierte und normgerechte Programme erstellt werden können, die mit den installierten Compilern und Datenverwaltungssystemen der Hochschule kompatibel sind (siehe Kasten).

Zudem kommt nur ein System in Frage, das die "4th-Generation-Language" in Cobol, PL/I oder Pascal umsetzen kann, die als Sprachen auf dem BS2000-Rechner der Universität zur Verfügung stehen (die Verwaltung verwendet Cobol).

Im Einsatz befindet sich derzeit eine Testinstallation des Werkzeugverbundes "Caesar" der EDV-Systementwicklung Volker Raschke, Berlin. Die Komponente "Genform" verarbeitet die umgangssprachlichen" Problemformulierungen mit Hilfe von Informationen über die Benutzerdatenstrukturen in metasprachliche Ausdrücke (Gencob-Formulare). Diese übersetzt der Generator "Gencob" in strukturierte und normgerechte Cobol-Quellen, die dann in herkömmlicher Weise weiterverarbeitet werden können.

Die generierten Cobol-Sourcen können an andere Nutzer weitergegeben und dort gewartet werden. Auch die an der Universität Düsseldorf generierten Programme wären nach Ablauf der Nutzungslizenz für den Generator mit einem Editor leicht zu pflegen.

In jede Stufe der Umsetzung kann der Programmierer aktiv eingreifen. So vermag er, Differenzen zwischen angestrebten Ergebnissen und den tatsächlichen Resultaten zu klären. Darüber hinaus können Probleme die sich in der "Genform"-Sprache nicht oder nur umständlich formulieren lassen, oftmals besser durch Eingriffe in die metasprachliche Formulierung und/oder in die Cobol-Source gelöst werden.

Diese Manipulationsfreiheit für den Programmierer ist jedoch ein Nachteil für den Benutzer aus der Fachabteilung. Er kann die Zwischenschritte für seine Zwecke nicht nutzen, muß aber wegen des vielstufigen Generierungsverfahrens verhältnismäßig lange auf sein Ergebnis warten. Bei komplexeren Anwendungen steigen beim Umsetzen der Hochsprache in das Cobol-Programm die Anforderungen an Rechenzeit.

Bei größeren Datenmengen führt die Effektivität des Maschinencodes jedoch bei der Anwendung zu insgesamt geringeren Laufzeiten als bei interpretativen Abfragesprachen.

Die Anforderungen der Hochschulverwaltung Düsseldorf an ein System der vierten Generation und die Erfahrungen mit dem Werkzeugverbund "Caesar" wurden zusammen mit Anwendungserfahrungen der Hochsprache "Natural" (Software AG, Darmstadt) auf der 22. Tagung ADV Bund/Länder/Kommunaler Bereich in Stuttgart vor rund 120 Teilnehmern erörtert. Die anschließende Diskussion erbrachte einen Vergleich der unterschiedlichen Philosophien, auf denen die beiden Produkte aufbauen:

- "Genform" ist unabhängig von Datenbanken und deren Softwareherstellern. "Natural" dagegen ist ohne das Datenbanksystem "Adabas" wenig sinnvoll; bedeutet also Abhängigkeit von einem Hersteller. Bei einem Preis/Leistungs-Vergleich muß auch der Preis für "Adabas" mit berücksichtigt werden.

- Beiden Produkten gemeinsam ist die weitgehende Unabhängigkeit von bestimmten Hardwareherstellern und Betriebssystemen. "Caesar" erzeugt Cobol-Code und ist daher unabhängig von Softwareherstellern.

- Über Art, Umfang und Folgen einer eventuellen Abhängigkeit vom Softwarehersteller erzielten die Diskussionsteilnehmer allerdings keinen Konsens. Zum einen stellten sie das Renommee des "Natural"-Herstellers heraus, zum anderen entstanden der Universität Düsseldorf seinerzeit unübersehbare Umstellungskosten durch den Ausstieg des zweifellos ebenso renommierten Hard- und Software-Herstellers AEG-Telefunken aus dem Großrechnergeschäft. Auch ungeachtet von Größe oder Marktanteil kann Abhängigkeit.

von Herstellern zu Folgekosten führen, wenn der Anwender auf ein anderes Tool oder eine andere Entwicklungsgeneration wechselt. Dies läßt sich nur vermeiden, wenn mit einem Werkzeug gearbeitet wird, das normgerechte beziehungsweise normierte Sprachen erzeugt.

- Es stellte sich heraus, daß, bei Applikationen, die sehr viel Individualverarbeitung erfordern, eine Realisierung nur mit den Sprachelementen der Hochsprache meist sehr aufwendig ist. Das führt in der Praxis dazu, daß neben der Hochsprache meist noch eine konventionelle Sprache für die Programmerstellung eingesetzt wird.

Im Laufe der Diskussion kristallisierten sich durch den direkten Vergleich auch unterschiedliche produktspezifische Eigenschaften der beiden Sprachen heraus:

- Bei nicht sehr komplizierten Abfragen und sinnvoller Anwendung sind die Einsparungen an Programmieraufwand bei beiden Hochsprachen beträchtlich (bis zu 90 Prozent). Allerdings liegen bei "Natural" die Ergebnisse kleiner Abfragen schneller vor; bei "Genform" muß zuerst ein Cobol-Programm generiert, übersetzt und gebunden werden. Bei umfangreichen DV-Problemen sind jedoch die compilierten Cobol-Programme von "Genform" effektiver. Bei komplexeren Problemen wächst auch bei "Natural" der Programmieraufwand erheblich: Beispielsweise ist er bei Plausibilitätsprüfungen etwa gleich hoch wie eine Cobol-Programmierung "von Hand".

- Beide Systeme sind mit bedingt für Fachabteilungen ohne DV-Wissen geeignet; ohne Kenntnis der Datenstrukturen kann der Benutzer mit ungeschickten Abfragen "großen Unsinn" produzieren. Bei "Genform" ist die Gefahr allerdings geringer, über eine solche Anweisung den Rechner für eine gewisse Zeit lahmzulegen.

*Wilfried Schmidt ist Abteilungsleiter D 2.2 - Datenverarbeitung der Verwaltung der Universität Düsseldorf.

Forderungen der Universitätsverwaltung Düsseldorf

an eine Sprache der vierten Generation

- Keine Einschränkung bezüglich Dateiformen und Datenbanken (SAM, ISAM, PAM: UDS, Sesam) und Zugriffsarten (sequentiell, indexsequentiell, direkt, relativ, über Sekundärschlüssel).

- Standardsoftware muß integrierbar sein (zum Beispiel von der Hochschul-lnformations-System GmbH, Hannover).

- Vermeidung von hohen Folgekosten (zum Beispiel Datenbanksystemmiete).

- Die Bindung an einen Software-Hersteller ist zu vermeiden. Die erstellten Programme sollten während der gesamten Nutzungsdauer von eigenen Mitarbeitern gepflegt werden können, auch wenn der Vertrag mit dem SW-Hersteller bereits ausgelaufen ist.

- Es sollte möglich sein, erstellte Programme oder Programmsysteme an andere Universitäten weiterzugeben, ohne daß den Empfängern hohe Folgekosten für ein Laufzeit- oder Pflegesystem entstehen.

- Leistungsfähigkeit und Komfort von vorhandenen dedizierten Abfrageprogrammen dürfen nicht unterschritten werden.

- Portabilität des Software-Werkzeuges auf andere Rechner.

- Integration mit weiteren Werkzeugen.