Rational Unified Process (RUP) ist eine agile Softwareentwicklungsmethode von Rational, einer IBM-Abteilung. Es dient als Online-Mentor und bietet Richtlinien, Beispiele und Vorlagen für alle Phasen und Aspekte der Programmentwicklung. Die Entwicklung eines Projekts oder einer Software ist in vier Phasen unterteilt, wobei in jeder Phase verschiedene Aktivitäten stattfinden. RUP wird als iterativ oder repetitiv angesehen, da sich die Kernaktivitäten des Prozesses während des gesamten Projekts wiederholen. Die Komponenten können angepasst und die Zyklusphasen wiederholt werden, bis das Projekt oder die Software die Anforderungen erfüllt, wodurch es agil wird.
Dimensionen des rationalen einheitlichen Prozesses
RUP sollte aus zwei Dimensionen betrachtet werden: Zeit und Prozess.
Die Zeitdimension besteht aus vier Phasen:
Anfangsphase
In dieser Phase wird die Grundidee oder -struktur des Projekts festgelegt. Das Team trifft sich regelmäßig, um die Lebensfähigkeit, Eignung und Notwendigkeit zu überprüfen. Es stellt sicher, dass das Budget den erwarteten Kosten des Projekts entspricht.
Ausarbeitungsphase
Entwickler bewerten in dieser Phase die Softwarearchitektur und die Systemanforderungen. Dies umfasst die Überprüfung des Projektentwicklungsplans, die Entwicklung des Benutzerhandbuchs und die Erstellung von Prototypen zur Bewältigung von Risiken.
Konstruktionsphase
Diese Phase stellt den Aufbau des gesamten Softwaresystems einschließlich seiner Komponenten und Funktionen sicher. Abgesehen davon, dass der Großteil der Codierung in dieser Phase stattfindet, stellt das Team sicher, dass Kosten und Mittel kontrolliert werden und das vollständig fertiggestellte Softwaresystem geliefert wird.
Übergangsphase
Das Hauptziel dieser Phase ist die Übertragung des Produkts auf den neuen Benutzer. Probleme und Fehler treten mit ziemlicher Sicherheit auf und erfordern Änderungen. Die Übergangsphase stellt sicher, dass die Übertragung reibungslos verläuft.
Die Prozessdimension besteht aus sechs Phasen:
Unternehmensmodellierung
RUP stellt sicher, dass Benutzer und System ordnungsgemäß kommunizieren, indem eine universelle Sprache erstellt und Prozesse angeboten werden. Dies verringert die Ineffizienz in verschiedenen Bereichen.
Anforderungen:
Diese Phase beschreibt, was das System tun soll und welche Funktion der Benutzer und Entwickler in der ersten Phase hätten vereinbaren sollen.
Analyse und Design
Analyse und Design dienen als Blaupause des Prozesses und zeigen, wie das System realisiert wird. Es stellt sicher, dass es die Anforderungen erfüllt und alle seine Aufgaben ausführt.
Implementierung
Ziel dieser Phase ist es, das gesamte System aufzubauen und seine Komponenten zu testen und freizugeben.
Testen
Durch Testen wird die ordnungsgemäße Integration der Software und ihrer Komponenten überprüft. Es identifiziert Mängel und Probleme und stellt sicher, dass diese behoben werden.
Anwendung:
Dies umfasst das Freigeben eines Softwaresystems und das Ermöglichen, dass der Benutzer ohne Störungen mit dem System arbeitet.
RUP ähnelt im Konzept der extremen Programmierung darin, dass nur das Nützliche und Erforderliche produziert und der Entwicklungsplan während des gesamten Prozesses aktualisiert wird. Beide Methoden zielen darauf ab, ein System von Best Practices in der Softwareentwicklung zu entwickeln.