Information Technology Reference
In-Depth Information
nicht an einen bestimmten Rechner gebunden waren. Er war
sich bewusst, dass das Implementieren einer solchen Spra-
che eine große Herausforderung sei. Daher bemerkte er: Er
nehme keinerlei Rücksicht auf die praktische Durchrechnung
der Programme .
Das Bemerkenswerteste am Plankalkül war wohl, dass
die Sprache mit verschiedenen Datentypen arbeiten konnte.
Durch einige wenige Befehle waren Programme möglich, die
sich nicht mit Zahlen, sondern mit anderen Daten beschäf-
tigten. Ein vergleichbares Programm in Maschinensprache
hätte ein Vielfaches des Codes gebraucht, nur um klarzustel-
len, dass auch andere Datentypen verwendet werden können.
Die ersten erfolgreichen höheren Programmiersprachen, die
nach dem Plankalkül entwickelt wurden, waren FORTRAN,
ALGOL, COBOL und LISP.
Wurde durch Hoppers und Aiken 1944 erstmals der Weg
zur Softwareerstellung als unabhängiger Produktionsschritt
geebnet, so führte im Jahre 1969 der Druck der US-Regulie-
rungsbehörde dazu, dass Hardware und Software endgültig
als zwei unabhängige Produktbereiche angesehen wurden. Im
Dezember 1968 kündigte IBM an, dass es ab dem nächsten
Jahr seine Softwareprodukte unabhängig von der Hardware
verkaufen werde. Die US-Regulierungsbehörde wollte mit
ihrem Druck den Markt für Software, den IBM durch seine
Rechner dominierte, für andere Softwarehersteller öffnen.
Damit wurde der Weg für Firmen geschaffen, die sich aus-
schließlich auf Software spezialisieren konnten. Ein neuer
Markt entstand, der im Laufe der Zeit den eigentlichen Hard-
warebereich an Kapitalkraft bei Weitem übersteigen sollte.
Die Bezeichnung „Software“ selbst wurde als Begriff erst-
mals 1958 von dem Statistiker John Wilder Tukey benutzt.
Ab Mitte der 1960er-Jahre überstiegen bei fast allen Sys-
temen die Kosten für die Software erstmals die Kosten für
die Hardware. Die Programme wurden immer komplexer und
ihr Erstellungsaufwand wuchs kontinuierlich. In der Folge
kam es auch zu den ersten großen gescheiterten Softwarepro-
jekten. Man erkannte, dass die bisher genutzten Techniken
nicht adäquat genug waren, um mit dem Umfang und der
Komplexität der Software Schritt zu halten.
Auf einer NATO-Tagung 1968 in Garmisch-Partenkirchen,
Deutschland, wurde das Problem diskutiert und erstmalig der
Begriff des Software-Engineering geprägt. Eine der ersten
gesicherten Erwähnungen des Begriffs der Softwarekrise
indet sich in Edsger W. Dijkstras Dankesrede zum Turing
Award The Humble Programmer (deutsch: „Der bescheidene
Programmierer“), die er 1972 hielt. Hierin beschrieb er die
Ursache der Softwarekrise wie folgt:
Diese Problematiken waren der Anlass, sich intensiv mit
dem Prozess der Softwareentwicklung auseinanderzusetzen
und ihn systematisch zu erforschen. Zunächst begann man,
die Software zu charakterisieren. Man unterscheidet heute
zwischen Systemsoftware, die für die grundlegenden Funk-
tionen des Computers erforderlich ist (Betriebssysteme usw.),
systemnahe Software, die den Bereich zwischen Betriebs-
system und Anwendungssoftware abdeckt (z. B. Datenbank-
Verwaltungswerkzeuge, Programmierwerkzeuge usw.) und
Anwendungssoftware, die den Benutzer bei der Ausführung
seiner Aufgaben unterstützt.
Danach begann man den Verlauf des sog. Software-Zyk-
lus , d. h. die einzelnen Phasen (Entwicklungsstadien) eines
Softwareproduktes, von seiner Konzeption bis zu seiner
Außerdienststellung (Software-Lebenszyklus) zu analysie-
ren. Hierauf aufbauend wurden verschiedene Vorgehens-
modelle zur Softwareentwicklung und zur Softwareplege
entwickelt. Die Vorgehensmodelle dienen zur Steuerung
einer Softwareentwicklung von der Konzeption bis zum
Einsatz im Echtbetrieb und spalten einzelne Aktivitäten auf
verschiedene Phasen auf. Eines der ältesten Modelle für die
Phase der Softwareerstellung ist das Wasserfallmodell , das
eine starre Abfolge der einzelnen Phasen annimmt. Weiter-
entwicklungen wie das Spiralmodell sehen hingegen Itera-
tionen vor, d. h. ein und derselbe Arbeitsschritt (z. B. die
Analyse) wird mehrmals durchlaufen und die Ergebnisse
des Arbeitsschrittes pro Durchlauf verfeinert und verbes-
sert.
Daneben wurden auch neue Programmierparadigmen
und damit einhergehend, neue Programmiersprachen ent-
wickelt. Hierzu gehören u. a. die funktionale Programmie-
rung, bei der Programme ausschließlich aus Funktionen und
Funktionsapplikationen bestehen und die zugehörenden
funktionalen Sprachen, die logische (prädikative) Program-
mierung, bei der ein zu lösendes Problem in einem logi-
schen Kalkül speziiziert und anschließend vom System ein
Lösungsweg selbstständig gefunden wird sowie die objekt-
orientierte Programmierung, die zurzeit mit JAVA stark ver-
breitet ist.
Jedoch ist festzuhalten, dass, trotz verschiedenster An-
sätze, die Softwarekrise weiterhin im Allgemeinen als unge-
löstes Problem der Informationstechnik gilt. Immer wieder
passieren Pannen, die Menschen das Leben gekostet oder
Unmengen von Geld verschlungen haben.
So verfehlte 1962 der Venus-Mariner-Flugkörper sein Ziel
und ging verloren. Kosten dieses Fehlers betrugen18,5 Mio. $.
Der Grund für diese Panne war der Folgende:
Während des Fluges einer Venussonde führte der Steuer-
computer folgendes Statement aus:
[The major cause of the software crisis is] that the machines have
become several orders of magnitude more powerful! To put it quite
bluntly: as long as there were no machines, programming was no
problem at all; when we had a few weak computers, programming
became a mild problem, and now we have gigantic computers,
programming has become an equally gigantic problem.
DO 3 I = 1.3
CONTINUE
 
 
Search WWH ::




Custom Search