Benutzer:Double81/Bücher/Softwaretechnik

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Unsere Buchzusammenstellung arbeitet zurzeit nur sehr eingeschränkt (für Details siehe die Mediawiki-Projektseite: PDF-Funktionalität). Eine quelloffene Alternative ist MediaWiki2LaTeX.

Buch-Icon Dies ist ein gespeichertes „Wikipedia-Buch“ Bücherregal ]

[ Buch übernehmen ]   [ Gedrucktes Buch bestellen ]

Softwaretechnik

[Bearbeiten | Quelltext bearbeiten]

Softwaretechnik

[Bearbeiten | Quelltext bearbeiten]

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.

Teilgebiete der Softwaretechnik

[Bearbeiten | Quelltext bearbeiten]

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.

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

Wikibooks: Softwaretechnik – Lern- und Lehrmaterialien


Softwaretechnik
Planung
Anforderungserhebung
Lastenheft
Pflichtenheft
Aufwandsschätzung (Softwaretechnik)
Analyse
Auswertung (Informatik)
Mock-up
Vorgehensmodell zur Softwareentwicklung
Prozessanalyse
Systemanalyse
Strukturierte Analyse
Softwarearchitektur
Strukturiertes Design
Objektorientierte Analyse und Design
Unified Modeling Language
Fundamental Modeling Concepts
Programmierung
Normierte Programmierung
Strukturierte Programmierung
Objektorientierte Programmierung
Funktionale Programmierung
Modultest
Integrationstest
Softwaretest
Anforderungsmanagement
Projektmanagement
Risikomanagement
Projektplanung
Qualitätsmanagement
Capability Maturity Model
Spice (Norm)
Incident Management
Problem-Management
Softwaremetrik
Statische Code-Analyse
Software-Ergonomie
Konfigurationsmanagement
Versionsverwaltung
Veränderungsmanagement
Releasemanagement
Application-Management
Dokumentation
Software-Dokumentationswerkzeug
Gebrauchsanleitung
Geschäftsprozess
Verfahrensdokumentation

Softwaretechnik