Wirtschaftslexikon - Enzyklopädie der Wirtschaft
lexikon betriebswirtschaft Wirtschaftslexikon lexikon wirtschaft Wirtschaftslexikon Suche im Wirtschaftslexikon
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
 
 
 

Software Engineering

I. Gegenstand: Software Engineering E. ist eine Disziplin, die sich mit der Entwicklung, der Wartung (Softwarewartung) und dem Einsatz von Software, insbes. von Softwaresystemen, befaßt. Software Engineering E. wird einerseits als wissenschaftliche Disziplin betrachtet, in der Praxis andererseits als ein Bündel von Prinzipien, Methoden und Werkzeugen für Softwareentwicklung, -einsatz und -wartung.
II. Einordnung: Die Zuordnung zu Wissenschaftsgebieten ist nicht eindeutig. - 1. Software Engineering E. wird als zur Wirtschaftsinformatik gehörig angesehen, da viele Problemstellungen typische betriebswirtschaftliche Fragen beinhalten (z. B. Softwarekosten, Projektmanagement) und ein Großteil der Softwaresysteme in Betrieben zum Einsatz kommt. Software Engineering E. ist i. a. auch Bestandteil der Wirtschaftsinformatik-Ausbildung. - 2. Software Engineering E. gilt als Teilgebiet der Praktischen Informatik (Informatik II 3), da andere Fragestellungen eine starke technische Ausrichtung haben (z. B. Softwaretechnologie, Softwarewerkzeuge).
III. "Softwarekrise" als Entstehungsursache: 1. Ausgangssituation: In den 60er Jahren war eine Explosion der Softwarekosten zu verzeichnen, die auf mangelndes Know-how und unzureichende Methoden für die Softwareentwicklung zurückgeführt wurde. Mit den schnellen Fortschritten der Hardwaretechnologie standen zwar leistungsfähige Computer zur Verfügung, so daß immer umfangreichere Aufgabengebiete computergestützt abgewickelt werden konnten; es fehlte aber eine adäquate Technologie auf der Softwareseite für die Entwicklung großer Systeme. Den Programmierern standen nur die Methoden für die Entwicklung kleiner Programme zur Verfügung. - 2. Folgen: Aufgrund der meist unsystematischen und ungeplanten Vorgehensweise waren Entwicklungskosten weder prognostizierbar noch kontrollierbar; Termine bei Softwareprojekten wurden i. d. R. überschritten. Die mangelhafte Zuverlässigkeit der Software führte dazu, daß ein Großteil der Programmierer mit Fehlersuche und Korrekturen beschäftigt war (Softwarewartung). Als typische Größenordnung für die Verteilung des Programmieraufwands gilt: ca. 30% Entwicklungsaufwand, 70% Wartungsaufwand. - 3. Begriffsprägung: Der Name Software Engineering E. wurde erstmals 1969 als Titel zweier Nato-Konferenzen verwendet; er sollte zum Ausdruck bringen, daß eine Abkehr von der unsystematischen Softwareentwicklung hin zu einer "ingenieurmäßigen" Vorgehensweise geboten war.
IV. Teilgebiete: 1. Softwareentwicklung: a) Softwareprojekte durchlaufen i. d. R. typische Phasen (software life cycle). Es gibt verschiedene Phasenmodelle; eine gängige Unterteilung ist z. B. die folgende:
(1) Problemanalyse;
(2) Anforderungsdefinition;
(3) Spezifikation;
(4) Entwurf (Entwurfsphase);
(5) Implementierung;
(6) Testen;
(7) Dokumentation;
(8) Softwareeinsatz;
(9) Softwarewartung.
Das Software Engineering E. befaßt sich mit den einzelnen Phasen und ihren Beziehungen zueinander. - b) Softwareprojekte werden in bestimmten Formen der Projektorganisation durchführt, die im Software Engineering E. untersucht werden. - c) Inhaltlich liegen starke Überschneidungen mit den "klassischen" Gebieten Systemanalyse und Projektmanagement in der Wirtschaftsinformatik vor; diese sind historisch bedingt, da sich das Software Engineering E. unabhängig von der Systemanalyse entwickelt hat. - 2. Planung und Kontrolle der Softwarekosten: In den Phasen des software life cycle fallen unterschiedliche Kosten an; Kostenschätzungsmodelle werden verwendet, um die Kosten eines Softwareprojekts zu prognostizieren; Meilensteine dienen u. a. zur Kostenkontrolle. - 3. Softwarequalitätssicherung beschäftigt sich v. a. mit Merkmalen der Softwarequalität sowie mit konstruktiven und analytischen Maßnahmen, die die Qualität gewährleisten sollen. - 4. Software-Technologie stellt den zentralen Kern dar. Zu unterscheidende grobe Ausrichtungen der Methoden, Prinzipien und Werkzeuge: a) Entwicklung von Softwaresystemen, auch als "Programmierung im Großen" bezeichnet; Ziel ist v. a. die Reduktion der Problemkomplexität eines großen Systems durch Anwendung von Abstraktionsprinzipien (Abstraktion) und Zerlegung in kleinere Bausteine (Modularisierung). Besonderes Gewicht wird auf die Unterstützung der Entwurfsphase im Software life cycle gelegt (Softwareentwurfsmethoden). - b) Programmentwicklung, im Software Engineering E. auch als "Programmierung im Kleinen" bezeichnet; Ziel ist die Unterstützung des Feinentwurfs und der Implementierung von Algorithmen und Daten des einzelnen Programms bzw. Moduls. Vgl. auch Programmierstil. - c) Werkzeuge: Zur Vereinfachung der Softwareentwicklung wird im Software Engineering E. angestrebt, die Aktivitäten in den Phasen des Software life cycle durch geeignete Softwarewerkzeuge zu unterstützen. Es gibt eine Vielzahl von Werkzeugen, die z. T. auf einzelne Phasen beschränkt, z. T. phasenübergreifend sind und z. T. auch alle Entwicklungsphasen überdecken (Softwareentwicklungsumgebungen). - 5. Software-Ergonomie: Mit der zunehmenden Verbreitung von Dialogsystemen und Bildschirmgeräten treten immer mehr Menschen mit Software an ihrem Arbeitsplatz direkt in Kontakt. Die Ergonomie von Softwaresystemen hat sich deshalb zu einem wichtigen Forschungszweig entwickelt.
V. Praxis: Die grundlegenden Prinzipien und Methoden des Software Engineering E. setzen sich allmählich durch. Insbes. kommen verstärkt Softwarewerkzeuge zum Einsatz, die auf den Grundideen des Software Engineering E. aufbauen und den Entwicklungsprozeß, teilweise automatisieren (CASE).

 

<< vorheriger Begriff
nächster Begriff>>
Software
software engineering environment system (SEES)

 

Diese Seite bookmarken :

 
   

 

  Weitere Begriffe : Rat für gegenseitige Wirtschaftshilfe (RGW) | Umwandlungsgesetz (UmwG) | Maschine | Berufsaufbauschule | Preisfolger
wiki wirtschaft

Thematische Gliederung | Unser Projekt | Impressum