Software-Krise

Software-Krise

Die Softwarekrise bezeichnet ein Mitte der 1960er-Jahre auftretendes Phänomen: Erstmals überstiegen die Kosten für die Software die Kosten für die Hardware. In der Folge kam es zu den ersten großen gescheiterten Software-Projekten.

Inhaltsverzeichnis

Anfänge

Man erkannte, dass die bisher genutzten Techniken mit dem Umfang und der Komplexität der Software nicht Schritt gehalten hatten. Auf einer NATO-Tagung 1968 in Garmisch-Partenkirchen, Deutschland, wurde das Problem diskutiert und als Reaktion der Begriff des Software Engineering geprägt.

Eine der ersten gesicherten Erwähnungen der Softwarekrise findet sich in Edsger W. Dijkstras Dankesrede zum Turing Award The Humble Programmer (deutsch: „Der bescheidene Programmierer“, EWD340) die er 1972 hielt und die im Communications of the ACM Magazin veröffentlicht wurde.

Er beschreibt darin die Ursache der Softwarekrise wie folgt:

“[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.”

„[Die Hauptursache für die Softwarekrise liegt darin begründet,] dass die Maschinen um einige Größenordnungen mächtiger geworden sind! Um es ziemlich einfach auszudrücken: Solange es keine Maschinen gab, stellte die Programmierung kein Problem dar; als wir ein paar schwache Computer hatten, wurde Programmierung zu einem kleineren Problem und nun da wir gigantische Computer haben, ist die Programmierung ein ebenso gigantisches Problem.“

Edsger Dijkstra: The Humble Programmer (PDF, 473Kb)

Wie schon aus Dijkstras über 35 Jahre alten Ausführungen zu erkennen ist, kann die Softwarekrise auch heute nicht als beendet betrachtet werden: Die Komplexität der Software-Systeme steigt weiter und damit die Probleme, auch wenn es in der Modernisierung und Strukturierung des Software-Entwicklungsprozesses große Fortschritte gab.

Die Softwarekrise geht auf das Problem zurück, dass selbst einfache Programme mit einer Länge von unter 500 Programmcode-Zeilen derart komplex aufgebaut sein können, dass sie mathematisch sehr schwer beschreibbar und aufgrund der hohen Zahl von Permutationen (also der Vielzahl von Software-Zuständen) schwer testbar sind.

Merkmale

Die Kosten bei der Entwicklung und dem Testen von Software können mit der Entwicklungszeit exponentiell steigen. Dadurch wird es schwierig, Termine bei der Softwareentwicklung einzuhalten; der Zeitdruck erhöht sich, Programmfehler treten häufiger auf. Unzufriedene Anwender, schlechte Wartung durch Ressourcenknappheit und die Unmöglichkeit, Anforderungen einzuhalten, können die Folgen sein.

Ursachen

Neben den prinzipiellen Ursachen der Softwarekrise, tragen auch Probleme der Qualitätssicherung zum Scheitern von Softwareprojekten bei. So entsteht Zeitdruck, wenn von fachfremdem Personal Termine vorgegeben werden. Mangelnde Qualitätssicherung, schlechte oder übertriebene Projektorganisation sind genau so verantwortlich für das Missraten von Projekten wie die ungenügende Einbeziehung des Anwenders oder Kunden. Auch die unzureichende oder überdimensionierte Standardisierung kann wesentlich dazu beitragen.

Lösungsansätze

Dieser Artikel oder Abschnitt ist nicht hinreichend mit Belegen (Literatur, Webseiten oder Einzelnachweisen) versehen. Die fraglichen Angaben werden daher möglicherweise demnächst gelöscht. Hilf Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst. Bitte entferne erst danach diese Warnmarkierung.

Die Konzepte der objektorientierten Programmierung, aspektorientierten Programmierung sowie verschiedene Entwicklungsprozesse sollen die Auswirkungen der gestiegenen Komplexität mildern. Ein verstärkter Rückgriff auf erprobte Komponenten und Softwarebibliotheken nutzt bereits geleistete Entwicklungsarbeit effizienter. Der Einsatz von Code-Generatoren und modellgetriebener Softwareentwicklung (ersetzen die Fehlerklasse der zufälligen Fehler durch leichter zu findende systematische Fehler) sowie das von Donald Knuth vorgeschlagene Literate programming sind weitere Möglichkeiten.

Auch für Anwender gibt es Ansätze, die Qualität der eingesetzten Software zu erhöhen. Stärkere Orientierung an offenen Standards beispielsweise ermöglicht einen leichteren Wechsel zwischen Anbietern und das Kombinieren der jeweils besten Implementierungen zu einem gegebenen Problem. Zudem sollte vor jedem Wechsel auf eine neue Softwareversion geprüft werden, was genau der dadurch gewonnene Nutzen ist. Oftmals enthalten neue Versionen Fehler, die noch nicht bekannt sind und die sich durch einfaches Abwarten umgehen lassen. Dies betrifft unter anderem Standardsoftware wie Office-Anwendungen, deren Funktion erprobt ist und deren Anforderungen sich nicht mehr ändern.

Des Weiteren ist mangelnde Kommunikation zwischen Programmierern und Nutzern eine nicht zu vernachlässigende Quelle von unzureichenden Produkten. Gute Kommunikation kann das Risiko von Fehlentwicklungen reduzieren und minimiert die Auswirkungen von schlecht erfassten Anforderungen zu Projektbeginn.

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Software-Krise — Software Krise,   gegen Ende der 1980er Jahre entstandener Begriff für die immer komplexer und damit fehleranfälliger werdende Software sowie für die Tatsache, dass immer mehr Software benötigt wurde und die vorhandene Software die Möglichkeiten… …   Universal-Lexikon

  • Software Engineering —  das, (Software Technik, Software Technologie), Teilgebiet der Informatik, das sich mit Methoden und Werkzeugen für das ingenieurmäßige Entwerfen, Herstellen und Implementieren von Software befasst. Das Software Engineering entstand Ende der… …   Universal-Lexikon

  • Software AG — Rechtsform Aktiengesellschaft ISIN DE0003304002 Gründung …   Deutsch Wikipedia

  • Starfighter-Krise — Lockheed F 104G „Starfighter“ Die Starfighter Affäre war eine politische Affäre in der Bundesrepublik Deutschland, die sich aufgrund der Umstände der Beschaffung der Lockheed F 104 „Starfighter“ entwickelte. Inhaltsverzeichnis 1 Geschichte …   Deutsch Wikipedia

  • Deutsche Bank —   Deutsche Bank AG Staat Deutschland Sitz Frankfurt am Main Rechtsform …   Deutsch Wikipedia

  • Man of Steel — Supermanstatue auf dem Vorplatz des Massac County Gerichtsgebäudes in Metropolis, Illinois Superman ist der Name einer Comicfigur, die in den 1930er Jahren von den beiden US Amerikanern Jerry Siegel und Joe Shuster geschaffen wurde. Die Figur… …   Deutsch Wikipedia

  • Supermann — Supermanstatue auf dem Vorplatz des Massac County Gerichtsgebäudes in Metropolis, Illinois Superman ist der Name einer Comicfigur, die in den 1930er Jahren von den beiden US Amerikanern Jerry Siegel und Joe Shuster geschaffen wurde. Die Figur… …   Deutsch Wikipedia

  • Cordoba (Argentinien) — Córdoba Basisdaten Vollständiger Name: Córdoba de la Nueva Andalucía Fläche: 562 km2 Lage …   Deutsch Wikipedia

  • Darmstadt 98 — SV Darmstadt 98 Voller Name Sportverein Darmstadt 1898 e.V. Gegründet 22. Mai 1898 Stadion …   Deutsch Wikipedia

  • FC Olympia Darmstadt — SV Darmstadt 98 Voller Name Sportverein Darmstadt 1898 e.V. Gegründet 22. Mai 1898 Stadion …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”