Studium, Ausbildung und Beruf

web uni-protokolle.de
 powered by
NachrichtenLexikonProtokolleBücherForenDienstag, 20. August 2019 

Softwaretechnik


Dieser Artikel von Wikipedia ist u.U. veraltet. Die neue Version gibt es hier.
Die Softwaretechnik (auch Softwaredesign Softwareentwurf englisch software engineering ) beschäftigt sich mit der standardisierten ingenieurmäßigen von Software und den damit verbundenen Prozessen.

Es gibt eine Vielzahl von Definitionen den Begriff Softwareengineering hier sei die aus Helmut Balzert : "Lehrbuch der Software-Technik" (Band 1 Spektrum Verlag ISBN 3-8274-0480-0 ) zitiert:

Softwareengineering ist "die zielorientierte Bereitstellung und systematische von Prinzipien Methoden und Werkzeugen für die arbeitsteilige ingenieurmäßige Herstellung und Anwendung von umfangreichen Software-Systemen."
Software-Engineering umfasst eine Vielzahl von Teilgebieten in ihrer Gesamtheit den gesamten Softwareentwicklungsprozess von Planung bis zum Testen und dem "Rollout" begleiten.

Inhaltsverzeichnis

Teilgebiete des Software-Engineering

Planungsphase Analysephase

Entwurfsphase
  • Objektorientierter Entwurf (OOD)
  • UML -Modellierung
Implementierungsphase Testphase
Qualitätsmanagement Dokumentation

Das Qualitätsmangement begleitet parallel den gesamten

Siehe auch: Wasserfallmodell

Vorgehensmodelle des Softwareentwicklungsprozesses

Die einzelnen Phasen der Softwareentwicklung sind getrennt voneinander zu betrachten und stellen idealisierte dar. In der Realität finden sich dynamische Vorgehensmodelle (engl. w:Software development process ) die die einzelnen Phasen - u.U. geringen Modifikationen - einmal (z.B. Wasserfallmodell ) oder meistens mehrmals durchlaufen (z.B. Spiralmodell). mehrmaligen Durchläufen erfolgt eine iterative Verfeinerung der Softwarekomponenten. Um die best practice oder 'optimalen' Vorgehensmodelle werden teilweise Glaubenskriege Zweifellos verhält es sich so dass je und eindimensionaler die Betrachtungsweise desto weniger hat mit der Praxis der Programming zu tun.

Weitere Modelle neben den schon genannten sind:

Nicht alle diese Modelle umfassen den Entwicklungszyklus!

Es existieren verschieden Bewertungsverfahren für den u.a. das Capability Maturity Model oder Spice

Kritik

Es ist umstritten ob der Entstehungsprozess Software so gut verstanden wird dass eine Herstellung" möglich ist: Kritiker argumentieren dass Software nichts anderes sei als "ausführbares Wissen". Wissen jedoch lässt sich nicht ingenieursmäßig herstellen sich etwa eine Brücke oder ein Hochhaus herstellen lässt) sondern wird in einem Prozess gefunden. Eine Richtung der Softwaretechnik ( Extreme Programming ) beschäftigt sich daher mit sehr flexiblen die die Kreativität des einzelnen Entwicklers betonen und Verwaltungsaspekte den Hintergrund treten lassen.

Kritiker argumentieren dass besonders die heftig Vorgehensmodelle ( Wasserfallmodell V-Modell etc.) und Modellierungssprachen ( UML ) in der Softwaretechnik- Wissenschaft den behelfsmäßigen unterstützenden ad-hoc-Charakter verdecken und Entwicklungsprozess unnötig bürokratisieren. Diese Methoden hemmen so Kritiker dadurch Kreativität und Problemlösungskapazität des Entwicklers.

Struktogramme und ähnliche Werkzeuge werden in der nur selten verwendet. Wenn dann für Ausschnitte dem Problem aber nicht für eine Modellierung des gesamten Projektes. In dem Bereich sich jedoch UML als praxistauglicher erwiesen und von Entwicklern häufig verwendet.

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

Siehe auch

Softwareentwicklung Entwurfsmuster Refactoring Softwarearchitektur

Weblinks



Bücher zum Thema Softwaretechnik

Dieser Artikel von Wikipedia unterliegt der GNU FDL.

ImpressumLesezeichen setzenSeite versendenSeite drucken

HTML-Code zum Verweis auf diese Seite:
<a href="http://www.uni-protokolle.de/Lexikon/Softwaredesign.html">Softwaretechnik </a>