Softwareentwicklung

Softwareentwicklung

Die Softwaretechnik (engl. software engineering) beschäftigt sich mit der Herstellung von Software, also der Entwicklung und dem Betrieb von Softwaresystemen und der Organisation und Modellierung der zugehörigen Datenstrukturen. Eine Definition von Helmut Balzert beschreibt das Gebiet als

Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige Entwicklung und Anwendung von umfangreichen Softwaresystemen.“ (Lit.: Balzert, S.36)

Softwaretechnik umfasst eine Vielzahl von Teilgebieten, die in ihrer Gesamtheit die Softwareentwicklung begleiten. Neben dem Entwickeln ist auch das Betreiben der Software Bestandteil der Softwaretechnik. Wichtig ist auch die experimentelle Untersuchung von Softwaretechnik, um ihren praktischen Nutzen zu messen und zu verbessern. Die aktuellen Entwicklungen des Fachgebiets werden in der Dokumentation des „Software Engineering Body of Knowledge“ (SWEBOK) beschrieben.

Inhaltsverzeichnis

Teilgebiete der Softwaretechnik

Da es aufwändig ist, komplexe Software zu erstellen und zu warten, erfolgt die Entwicklung von Software durch Softwareentwickler anhand eines strukturierten Planes. Dieser Plan (das Vorgehensmodell) unterteilt den Entwicklungsprozess in überschaubare, zeitlich und inhaltlich begrenzte Phasen. Die Software wird somit Schritt für Schritt fertiggestellt. Die Phasen sind während des ganzen Entwicklungsprozesses eng miteinander verzahnt.

Die Phasen und ihre Aufgabenstellungen sind in der folgenden Tabelle aufgeführt:

Kernprozesse

1. Planung

2. Analyse

3. Entwurf

4. Programmierung

5. Validierung und Verifikation

Unterstützungsprozesse

6. Anforderungsmanagement

7. Projektmanagement

8. Qualitätsmanagement

9. Konfigurationsmanagement

10. Dokumentation

Die oben genannten Teilschritte der Softwareentwicklung werden nicht zwangsläufig bei jedem Projekt komplett durchlaufen. Vielmehr werden einzelne Prozesse spezifisch für die jeweilige Anforderung gewählt. Dies ist aus Sicht der Kosten- und Verwaltungsreduzierung notwendig.

Kritik

Es ist umstritten, ob die Softwarekrise durch Softwaretechnik oder vielmehr durch robustere, strukturiertere Programmiersprachen, Datenmodellierungsansätze und Entwicklungswerkzeuge gelöst werden kann.

Siehe auch

Literatur

  • Helmut Balzert: Lehrbuch der Software-Technik. Bd.1. Software-Entwicklung. Spektrum Akademischer Verlag, Heidelberg 1996, 1998, 2001, ISBN 3-8274-0480-0.
  • J. Ludewig, H. Lichter: Software Engineering – Grundlagen, Menschen, Prozesse, Techniken. dpunkt.verlag, Heidelberg 2006, ISBN 3-89864-268-2.
  • Gustav Pomberger, Wolfgang Pree: Software Engineering. Hanser Fachbuchverlag, München 2004, ISBN 3-446-22429-7.
  • Ian Sommerville: Software Engineering. 7. Aufl. Addison-Wesley, München 2004, ISBN 0-321-21026-3.
  • Wolfgang Zuser, Thomas Grechenig, Monika Köhle: Software-Engineering mit UML und dem Unified Process, Zweite (überarbeitete) Auflage 2004 (1. Auflage 2001), Pearson Studium, München ISBN 3-8273-7090-6

Weblinks


Wikimedia Foundation.

Synonyme:

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

  • Softwareentwicklung — Programmierung; Engineeringarbeit; Implementation * * * Sọft|ware|ent|wick|lung, die: Verbesserung vorhandener od. Erarbeitung neuer Software …   Universal-Lexikon

  • Softwareentwicklung — Entwicklung eines Softwaresystems oder eines einzelnen Programms (⇡ Programmentwicklung); u.a. Gegenstand des ⇡ Software Engineering …   Lexikon der Economics

  • Agile Softwareentwicklung — Agile software development poster Agile Softwareentwicklung ist der Oberbegriff für den Einsatz von Agilität (lat. agilis: flink; beweglich) in der Softwareentwicklung. Je nach Kontext bezieht sich der Begriff auf Teilbereiche der… …   Deutsch Wikipedia

  • Modellbasierte Softwareentwicklung — Modellgetriebene Softwareentwicklung (englisch Model Driven Software Development, MDSD) ist ein Oberbegriff für Techniken, die aus formalen Modellen automatisiert lauffähige Software erzeugen.[1] Dabei werden domänenspezifische Sprachen (englisch …   Deutsch Wikipedia

  • Prototyp (Softwareentwicklung) — Dieser Artikel oder Abschnitt besteht hauptsächlich aus Listen, an deren Stelle besser Fließtext stehen sollte. Das Prototyping bzw. Prototypenbau ist eine Methode der Softwareentwicklung, die schnell zu ersten Ergebnissen führt und frühzeitiges… …   Deutsch Wikipedia

  • Vorgehensmodell zur Softwareentwicklung — Ein Vorgehensmodell zur Softwareentwicklung ist ein für die Softwareentwicklung angepasstes Vorgehensmodell bei der professionellen ( ingenieursmäßigen ) Anwendungsentwicklung. Es dient dazu, die Softwareentwicklung übersichtlicher zu gestalten… …   Deutsch Wikipedia

  • Modellgetriebene Softwareentwicklung — (englisch Model Driven Software Development, kurz MDSD) ist ein Oberbegriff für Techniken, die automatisiert aus formalen Modellen lauffähige Software erzeugen.[1] Dabei werden domänenspezifische Sprachen (englisch Domain Specific Languages, kurz …   Deutsch Wikipedia

  • Lokalisierung (Softwareentwicklung) — Lokalisierung steht in der Softwareentwicklung für die Anpassung von Inhalten (Bücher, Filmkunst, Homepages), Prozessen, Produkten und insbesondere Computerprogrammen (Software) an die in einem bestimmten geographisch oder ethnisch umschriebenen… …   Deutsch Wikipedia

  • Partizipative Softwareentwicklung — ist die Erstellung von Computerprogrammen unter Einbeziehung der späteren Benutzer. Dies hat unter anderem das Ziel die Ergonomie und die Usability des Softwareprodukts zu steigern. Partizipation kann auf unterschiedliche Art erfolgen. Die… …   Deutsch Wikipedia

  • Prototyping (Softwareentwicklung) — Prototyping bzw. Prototypenbau ist eine Methode der Softwareentwicklung, die schnell zu ersten Ergebnissen führt und frühzeitiges Feedback bezüglich der Eignung eines Lösungsansatzes ermöglicht. Dadurch ist es möglich, Probleme und… …   Deutsch Wikipedia


Share the article and excerpts

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

We are using cookies for the best presentation of our site. Continuing to use this site, you agree with this.