Softwareprozess
Grundlegende Aktivitäten eines Softwareprozesses
- Softwarespezifikationen
- Software-Entwicklung
- Softwarebestätigung
- Softwareentwicklung
Wasserfall-Modell
Das Wasserfallmodell ist ein Beispiel für einen plangesteuerten Softwareprozess. Zumindest alle Prozessaktivitäten sollten geplant und geplant werden, bevor mit der Softwareentwicklung begonnen wird
Kriterien für die Auswahl eines Wasserfallmodells
- Projekte, deren Anforderungen sich während der Entwicklungszeit nicht oder nur wenig ändern
- Analysieren Sie Projekte, bei denen der Designer mit der Anwendungsdomäne besser vertraut ist
- Elemente, die nicht einfach ausprobiert werden können und scheitern
- Projekte mit einer relativ stabilen Benutzerumgebung
inkrementelles Modell
Die Idee der inkrementellen Entwicklung: Zuerst eine erste Implementierung entwickeln, dann Feedback von Benutzern einholen und über mehrere Versionen hinweg weiterentwickeln, bis das erforderliche System vorliegt.
Inkrementelles Modell: Gemäß der Spezifikation der Anforderungsskala wird das System entsprechend der Funktion in mehrere Subsysteme zerlegt. Beginnen Sie mit der Entwicklung der Funktionen eines Subsystems, stellen Sie es nach Entwurf, Implementierung, Integration und Test zur Verwendung bereit, entwickeln Sie dann weitere Subsysteme und fügen Sie diese dann dem vorhandenen System hinzu, um nach und nach ein vollständiges System zu bilden, das alle Funktionen ausführen kann. Jedes Inkrement oder jede Version des Systems umfasst einen Teil der vom Benutzer benötigten Funktionalität
Vorteil
- Reduzierte Kosten für die Umsetzung von Anforderungsänderungen
- Erhalten Sie schnell Feedback von Kunden
- Durch die frühzeitige Lieferung können Kunden so schnell wie möglich von der Software profitieren
Mangel
- Der Prozess ist unsichtbar, was für Manager nicht förderlich ist, den Fortschritt zu erfassen
- Die Systemstruktur wird allmählich degenerieren
Bedingungen für die Auswahl eines inkrementellen Modells
- Projekte mit mittlerem und hohem Risiko
- Benutzer sind bereit, sich während des gesamten Entwicklungsprozesses am Projekt zu beteiligen
- große Softwaresysteme. Langer Entwicklungszyklus (mehr als ein Jahr)
Integration und Konfiguration
Vorteil
- Reduzieren Sie den Entwicklungsaufwand
- Kosten senken
- Risiko reduzieren
Mangel
- Kann die tatsächlichen Bedürfnisse der Kunden nicht vollständig erfüllen
- Möglicher Kontrollverlust über die Systementwicklung
- Weil Komponenten möglicherweise von Drittanbietern stammen
Prozessreifemodell
- Anfangslevel
- Verwaltete Ebene
- definierte Klasse
- Quantitative Managementebene
- Optimierungsgrad