../../icons/Logo.png


Verlauf der Softwareentwicklung

Nachfolgend werden Entwicklungsmodelle hinsichtlich des Verlaufs über den Lebenszyklus des Softwareprodukts betrachtet. Phasenmodelle beschreiben Aktivitäten über den Lebenszyklus.

Der Begriff Phasen der Softwareentwicklung wird mehrdeutig verwendet:

Bei linearen Modellen der Softwareentwicklung fallen beide Begriffe zusammen. Spätestens seit dem Aufkommen von inkrementellen und evolutionären Modellen ist diese Identität nicht mehr haltbar.

Hier wird eine Phase als ein Zeitabschnitt im Lebenszyklus eines Softwareprodukts verstanden.

In jeder Phase werden eine Menge von Aktivitäten durchgeführt. Vielfach wird die Phase nach der überwiegend durchgeführten Aktivität benannt. Der statische Aspekt beschreibt, in welcher Folge welche Aktivitäten durchgeführt werden können bzw. dürfen.

Ein Phasenmodell teilt den Verlauf der Erstellung eines Softwareprodukts in mehrere Phasen. Die Dauer und die Ergebnisse, die während einer Phase erarbeitet werden, lassen sich planen. Die Ziele einer Phase werden Meilensteine genannt. Derartige Prozesse werden auch als "Milestone Driven Process" bezeichnet.

Beispiel: Der Rational Unified Process

Der Rational Unified Process [13] (RUP) modelliert beispielsweise ein Phasenmodell. Er beschreibt aber nicht nur Phasen, sondern auch Aktivitäten. Er kennt vier Phasen:

Inception
Formulierung einer Vision
Elaboration
Erarbeitung konkreter Ziele
Construction
Erstellung des Produkts
Transition
Übergabe und Pflege des Produkts

Die Aktivitäten sind:

Business Modelling
Formulierung von Geschäftszielen
Requirements
Bestimmung der geforderten Funktionalität des Produkts
Analysis and Design
Entwurf der Komponenten und deren Anforderungen
Implementation
Erstellung der Komponenten
Test
Integration und Test der Komponenten
Deployment
Test, Auslieferung und Installation des Produkts

Phasen_im_RUP.png

Bild 16: Aktivitäten in den Phasen des RUP

In Bild 16 ist dargestellt, wie sich Aktivitäten über die Phasen in einem (Beispiel-)Softwareprojekt verteilen.

Im RUP versteht man unter Iteration

Der RUP beschreibt den Lebenslauf eines Softwareprodukts im Großen. Es wird nicht auf die Entwicklung von Subsystemen oder Komponenten eingegangen.

Referenzen