Logo Wissenstransfer Gerhard at CichnaDotCom

>> Wissensdatenbank / Grundlagen der industriellen Softwaretechnik

Softwareprozessmodell-Rahmenwerke

Rational Unified Process (RUP)

Der Rational Unified Process (RUP) ist ein industriell geprägtes Rahmenwerk für Softwareprozessmodelle, das von der Firma IBM entwickelt wurde. Wie in untenstehender Abbildung dargestellt, teilt der RUP den Softwareprozess in vier Phasen ein:

Phasen im RUP

In der Phase Inception, der Vorbereitungsphase des Projektes, liegt der Fokus auf dem Requirements Engineering, der Erarbeitung der Projektvision, einer ersten Risikoanalyse, dem Erstellen des Projektplans und dem Aufstellen des Projektbudgets.
In der Phase Elaboration werden die Anforderungen verfeinert und detailliert, ein Konzept für die System-Architektur entwickelt und beschrieben und gegebenenfalls mit dem Bau von ersten Prototypen begonnen. Ein wichtiges Ergebnis dieser Phase ist die Architekturbeschreibung, die als Vorgabe und Rahmen für die folgende Phase Construction dient.
In Construction findet der Großteil der Implementierungsaktivitäten statt. In dieser Phase wird hauptsächlich der Programmcode des Softwaresystems erzeugt. Darüber hinaus werden Softwaretests durchgeführt und behoben.
Die Phase Transition beinhaltet alle Aktivitäten, die nach Abschluss der Entwicklungsarbeiten bis hin zur abgeschlossenen Inbetriebnahme durchgeführt werden müssen. Unter anderem die Nutzerschulung, der Systemtest, die Integration in die Ausführungsumgebung und die Dokumentation fallen in diese Phase.

Organisation der Software Engineering Kernaktivitäten

Die linke Spate in untenstehender Abbildung enthält die im RUP als Disciplines (deutsch: Disziplinen) bezeichneten Software Engineering Kernaktivitäten. Zu jeder Disziplin benennt der RUP spezifische Rollen, Artefakte (Ergebnisse, Produkte), Aktivitäten (Arbeitsschritte, Aufgaben) und Workflows (Reihenfolge von Aktivitäten in Verbindung mit Artefakten und Rollen). Anders als im Wasserfallmodell sind die Software Engineering Kernaktivitäten einer Phase nicht streng separiert, sondern finden teilweise parallel oder eng verzahnt statt. Allerdings unterscheiden sich die Phasen im RUP durch den Anteil bzw. die Intensität, mit der die Aktivitäten durchgeführt werden. Das ist in der Abbildung mit den unförmigen Verläufen in den Zeilen dargestellt. So wird im RUP zum Beispiel Requirements Engineering von Beginn bis Ende betrieben, jedoch in den Phasen Inception und Elaboration besonders intensiv. Wohingegen die Intensität der Testaktivitäten im RUP eher mit zyklischer Intensität vorgehen.

Der Rational Unified Process unterstützt die evolutionäre Entwicklung durch die Möglichkeit, die einzelnen Phasen auch teilweise mehrfach hintereinander auszuführen. In untenstehender Abbildung wird das durch die letzte Zeile illustriert: E1 und E2 sind zwei Zyklen der Phase Elaboration, C1, C2 und CN sind Zyklen der Phase Construction und T1 und T2 Zyklen der Phase Transition. Ob und wie viele Zyklen durchgeführt werden, ist abhängig vom konkreten Softwareprojekt.

Abbildung: Rational Unified Process (RUP)