Kompatible Anwendungsprogrammierung nicht eindeuting klassifizierbar:

Herstellerneutrale Software eh er unerwünscht

22.09.1978

BERLIN (ee) - Am 4. Kongreßtag des IKD räumte Dr. Herbert Klimesch (Bayerische Staatskanzlei, München) in der Workshopreihe Xl die Argumente für eine herstellerneutrale Anwendungsprogrammierung beiseite und folgerte: "Wirtschaftlichkeit und Nutzung des technischen Fortschritts sprechen eher für als gegen eine herstellerneutrale Anwendungsprogrammierung". Spöttisch leitete Klimesch ein:

Betrachtet man das Nichtstun als wirtschaftlich besser als irgendeine Veränderung, so ist es in der Tat wirtschaftlicher, seine Programme auf eine ganz bestimmte Hardware- und Softwarekonstellation auszurichten. Konsequenterweise muß man allerdings:

þden Typ der Rechenanlage für immer beibehalten

þeine eingefrorene Version des Betriebssystems und des DB- und DC-Systems für immer verwenden,

þauf Umorganisationen verzichten

þfehlerlose Anwendungsprogramme schreiben und damit die Wartung vermeiden,

þauf jede Kooperation mit anderen Anwendern verzichten und keine Programme austauschen.

Jede Abweichung von dieser konservativen Haltung verursacht Kosten, die durch eine rechtzeitige Einhaltung gewisser Grundregeln zwar nicht völlig eingespart, jedoch stark gesenkt werden können.

Was ist herstellerneutrale Anwendungsprogrammierung?

Die Herstellerneutralität ist ein für die Werbewirksamkeit des Titels vorgeschobenes Kennzeichen. In Wirklichkeit soll über die Portabilität von Anwendungsprogrammen, Unabhängigkeit von Hardware, Basis-Software und Organisation gesprochen werden. Ein Anwendungsprogramm oder ein Paket von Anwendungsprogrammen ist dann systemneutral, wenn es ohne wesentliche Änderungen für alle interessierten Anwender auf jeder der üblichen Rechenanlagen in einer beliebigen Systemumgebung ablaufen kann.

Notwendig ist, daß die Anwendungsprogramme in einer genormten und auf den jeweiligen Rechenanlagen implementierten Programmsprache geschrieben sind, daß die Regeln der kompatiblen Schnittstellen zu DB- und DC-Systemen eingehalten werden, daß eine einheitliche Beschreibung der Programme existiert, daß die Organisation der Anwender äquivalent ist und daß das Datenmaterial nach einem übereinstimmenden Schema zur Verfügung steht.

Vor- und Nachteile der kompatiblen Anwendungsprogrammierung

Nicht in allen genannten Bereichen der Datenverarbeitung zeigen sich unmittelbare Auswirkungen der kompatiblen Anwendungsprogrammierung Vielfach sind die Wirkungen nicht klassifizierbar, sondern lediglich in der Tendenz vorhanden, und schließlich können auch Vor- und Nachteile einander gegenüberstehen, ohne ein deutliches Übergewicht für die eine oder andere Seite zeigen.

þAutomatisierungs-Soll

Da hier die Schwerpunkte durch den späteren Benutzer gesetzt werden, ergeben sich keine unmittelbaren Auswirkungen. Lediglich die Tatsache, daß infolge des verbesserten Programm-Austauschs und der erleichterten Anwendungs- Programmierung Automationsvorhaben in der Regel schneller durchgeführt werden können, bringt Vorteile für die Automatisierungspläne.

þFremdprogrammierung

Werden für ein bestimmtes Vorhaben geeignete Fremdmitarbeiter gesucht, so bedeutet sowohl die Spezialisierung auf ein bestimmtes Anwendungsgebiet, als auch auf spezielle Systemgegebenheiten ein Auswahlkriterium, das auf die Vergabe hemmend wirkt. Können sich alle Auftragnehmer auf eine systemneutrale Umgebung konzentrieren, so dürfte auch die Einarbeitung auf bestimmte Anwendungserfordernisse leichter möglich sein.

þProgrammiererausbildung

Kompatible Anwendungsprogrammierung verlangt vom Systemprogrammierer zusätzlich zur speziellen Systemumgebung auch die Kenntnis der kompatiblen Umsatzprogramme. Dagegen ist nach allen bisherigen Erfahrungen (zum Beispiel Erfahrungsbericht der Datenzentrale Baden-Württemberg) die Ausbildung der Anwendungsprogrammierer um ein Vielfaches vereinfacht. Auf dieser Basis kann die Ausbildung in der Anwendung selbst verbessert werden.

þProgrammentwicklung

Nachteilig für die Programmentwicklung ist, daß sowohl bei der genormten Programmiersprache als auch bei den kompatiblen Schnittstellen auf eine Reihe von speziellen Funktionen einzelner Systeme verzichtet werden muß. Infolge des Mangels einer kompatiblen Datenbeschreibungssprache müssen die Datenstrukturen sowohl kompatibel als auch nicht kompatibel beschrieben werden. Schließlich können bei der Programmerstellung auch Fehler im Umsetzprogramm auftreten und müssen zusammen mit dem Hersteller behoben werden.

Diesem Katalog von Nachteilen stehen aber auch Vorteile gegenüber Der Verzicht auf Funktionen macht die Anwendungsprogrammierung durchsichtiger Vor allen Dingen ist der Formalismus der kompatiblen Schnittstellen wesentlich einfacher zu handhaben als Aufrufe etwa des ADABAS oder des IMS. Erst die kompatible Programmierung erlaubt die gemeinschaftliche Entwicklung von Programmen ohne Festlegung auf eine einheitliche Hardware oder Systemsoftware. Der Mangel einer kompatiblen DDL soll in einer Arbeitsgruppe behoben werden, die ein herstellerneutrales Data-Dictionary-System konzipieren will.

þProgrammtest

Auf der einen Seite können Restfehler im Umsetzprogramm das Testen behindern, andererseits ist der einfache Formalismus der Schnittstelle von großem Vorteil für die Testarbeiten.

þProgrammaustausch

Ein Programmaustausch zwischen Anwendern, die in ihrer Hardware voneinander abweichen, ist fast nur möglich, wenn die Grundregeln der kompatiblen Anwendungsprogrammierung eingehalten worden sind Je näher sich die Programmiermethoden stehen, desto großer wird der Anwendungsmultiplikator der Programme.

þWartung

So lange vom Hersteller die Wartung und Fehlerfreiheit der Umsetzprogramme garantiert wird, ist die Wartbarkeit der Anwendungsprogramme ein Hauptvorteil der kompatiblen Anwendungsprogrammierung. Durch den einheitlichen Standard wird gewährleistet, daß kompatible Funktionen für immer bestehenbleiben, höchstens um neue Funktionen ergänzt werden.

þDie Verwendung von Anwendungsprogrammen

Während im Kompilieren zwischen genormter und ungenormter Sprache kaum Unterschiede bestehen, kann die Verwendung von kompatiblen Schnittstellen sowohl die Laufzeit der Programme geringfügig verlängern (Erfahrungen sprechen von maximal 5 Prozent) als auch den Hauptspeicher stärker in Anspruch nehmen. Demgegenüber steht allerdings der Anspruch der Hersteller, bei der Erstellung der Umsetzprogramme alle Besonderheiten des Systems restlos ausgenutzt zu haben und das Umsetzprogramm voll reentrant zur Verfügung zu stellen.

þDV-Betrieb

Als nachteilig für den DV-Betrieb könnte man allenfalls die Notwendigkeit bezeichnen, Umsetzprogramme für kompatible Schnitt stellen zu generieren und auf den neuesten Stand zu bringen. Vorteilhaft hingegen ist es daß durch die kompatible Anwendungsprogrammierung kein Zwang zu einer bestimmten Basis-Software gegeben ist, sondern die Auswahl nach dem vorhandenen Bedürfnis und der Leistungsfähigkeit getroffen werden kann, solange kompatible Schnittstellen realisiert sind. Damit können dann die gleichen Basis-Systeme für alle Anwendungen eingesetzt werden und amortisieren sich schneller. Die Systemprogrammierer werden durch diese gemeinsame Nutzung entlastet und müssen auch bei einer Umstellung auf eine andere Basis-Software nur jeweils ein neues System betreuen. Besonders wichtig ist, daß im Betrieb die Verantwortung zwischen dem Systemprogrammierer (mit der Unterstützung des jeweiligen Herstellers) und der Anwendungsentwicklung klar durch diese Schnittstellen abgegrenzt ist. Lediglich der DB- und DC-Administrator muß sich gegenwärtig noch sowohl in System- als auch Anwendungs-Fragen bewähren. Eine systemneutrale Datenbeschreibungssprache könnte auch hier Abhilfe schaffen.

þHardware-Umstellung

Bei einer Umstellung der Rechenanlage auf einen anderen Hersteller oder einen anderen Typ ist eine systemneutrale Anwendungsprogrammierung unbedingt von Vorteil. Die Umstellung der Anwendungsprogramme kann in einem Bruchteil der sonst notwendigen Zeit erfolgen und kann vor allen Dingen ohne die Hilfe der Programmierer durchgeführt werden, die mit der Anwendung vertraut sind.

þHardware-Erweiterung

Bei einer Erweiterung der Hardware um neue Rechenanlagen des gleichen Typs spielt die Kompatibilität nur eine geringfügige Rolle. Allerdings läßt sich die Übertragung bereits abgesicherter Programme leichter durchführen, wenn die Umstellung von vorneherein in Betracht gezogen wurde.

þEigenständigkeit der Anwendung

Durch die klare Abgrenzung der Verantwortlichkeit, durch die Unabhängigkeit von speziellen Funktionen und infolge der ständigen Offenheit gegenüber anderen Computerherstellern liefert die kompatible Anwendungsprogrammierung einen wesentlichen Beitrag zur Mündigkeit des Anwenders.