Was ist Rational Unified Process oder RUP?
Die Grundlagen von RUP
Im Grunde dreht sich bei Rational Unified Process® (RUP®) alles um erfolgreiche Softwareentwicklung. Es gibt drei
zentrale Elemente, die RUP definieren:
-
Philosophien und Prinzipien für eine erfolgreiche Softwareentwicklung.
Diese Philosophien und Prinzipien sind die Grundlage, auf der RUP entwickelt wurde. Einen Überblick über die
RUP-Philosophie finden Sie in den Abschnitten Wichtige Prinzipien und Prozessgrundlagen.
-
Ein Framework mit wiederverwendbarem Methodeninhalt und Prozessbausteinen.
Definiert und kontinuierlich verbessert von Rational Software definiert die RUP-Familie der Methoden-Plug-ins ein
Methoden-Framework, mit dem Sie eigene Methodenkonfigurationen und angepasste
Prozesse erstellen können.
-
Die grundlegende Methoden- und Prozessdefinitionssprache.
Allem zugrunde liegt ein UMA-Metamodell. Dieses Modell stellt eine Sprache für das Beschreiben von Methodeninhalt und Prozessen bereit. Diese neue
Sprache wurde zur Vereinheitlichung unterschiedlicher Methoden- und Prozess-Engineering-Sprachen, wie z. B. der
SPEM-Erweiterung zu UML für Softwareprozess-Engineering, der für RUP v2003, Unified Process, IBM Global Services
Method verwendeten Sprachen und IBM Rational Summit Ascendant, entwickelt.
Die RMC-Plattform (Rational Method Composer)
RUP hat sich im Laufe vieler Jahre Entwicklungsarbeit zu einer leistungsstarken Plattform für Prozess-Engineering mit
dem Namen Rational Method Composer (RMC) weiterentwickelt. Mit RMC sind Teams in der Lage, einen konsistenten Prozess
zu definieren, zu konfigurieren, anzupassen und anzuwenden. Die Schlüsselelemente der Plattform sind im Folgenden
aufgeführt:
-
Tools für Methodenbereitstellung
RUP wird Anwendern als interaktive Website in standardisierter Browser-Technologie zur Verfügung gestellt. Die
folgenden Tools werden für die Bereitstellung von RUP verwendet:
-
Die RUP-Website, auf der Sie sich momentan befinden.
Eine RUP-Website ist eine mit Rational
Method Composer veröffentlichte Prozesspräsentation, die für Ihr Projekt konfiguriert und an Ihre
speziellen Anforderungen angepasst ist. Die Website wird mit dynamisch generierten HTML-Seiten erstellt, die
Sie mit RMC in Form mehrerer RUP-Websites veröffentlichen können, die jeweils eine konfigurierte und angepasste
Prozessdefinition darstellen.
-
Diverse Navigationstools für Web-Browser
Mit den Applets des RUP-Browsers ist es möglich, über eine Reihe von Standard-Web-Browsern unter Verwendung von
zusätzlichen Navigations-Applets dynamisch auf die RUP-Website zuzugreifen.
-
Konfigurationstool für Methoden
Rational Method Composer (RMC) unterstützt eine differenzierte
Konfiguration des Inhalts während der Veröffentlichung, um den variierenden Anforderungen unterschiedlicher
Projekte und Endbenutzer gerecht zu werden. Mit seiner Plug-in-Technologie ermöglicht Ihnen Method Composer,
Methoden- und Prozesserweiterungen einzufügen. Außerdem können Sie Varianten von Prozessen konfigurieren, die je
nach Benutzervorgaben unterschiedlich veröffentlicht werden.
-
Ein Umschlagplatz für Prozesserweiterungen
Der RUP-Abschnitt auf der Website
developerWorks®: Rational® ist ein Ort, an dem Prozessentwickler in der Softwareentwicklungsgemeinde ihre
Methodenerweiterungen als konsumierbare Plug-ins austauschen können, und eine reichhaltige Quelle mit
Methodenerweiterungen für den Projektleiter.
-
Tool für Methoden-Authoring
Basierend auf der Plattform Eclipse ist Rational
Method Composer (RMC) speziell für die Verwaltung von Methodeninhalten und Prozess-Authoring bestimmt und mit
Funktionen wie formular- und strukturbasiertem Authoring, Inhalts-Browsing, Inhaltssuche und Import und Export von
Methodeninhalten ausgestattet. Method Composer stellt außerdem Mechanismen für eine schnelle Zusammenstellung von
Prozessen unter Verwendung von Prozessmustern und wiederverwendbaren Methodenelementen bereit. RMC unterstützt die
Erstellung von Methoden-Plug-ins, leistungsstarken Hilfsmitteln für die Erweiterung und Änderung vorhandenen
Inhalts und die Vereinfachung von Management und Pflege von Methodeninhalten und Prozessen.
Wer sollte RUP verwenden?
Wenn Sie sich auf Ihre Fähigkeiten zur Entwicklung und zum Deployment von Software stützen müssen, die kritisch für den
Erfolg Ihrer Organisation ist, kann RUP Ihnen helfen. Das Produkt RUP wurde primär für zwei Zielgruppen entwickelt:
-
Softwareentwickler, die in einem Projektteam arbeiten, einschließlich der Stakeholder dieser
Softwareentwicklungsprojekte.
-
Prozessentwickler, insbesondere Softwareprozessentwickler und Manager.
Softwareentwickler finden in den in RUP definierten
Rollen Anleitung zu dem, was von ihnen verlangt wird. Jedem, der an einem Software-Engineering-Projekt mit RUP
beteiligt ist, wird mindestens eine der in RUP definierten Rollen zugeordnet. Jede Rolle hat gewisse Aufgaben und
Arbeitsergebnisse, für die sie verantwortlich ist. Außerdem werden Anleitungen gegeben, wie diese Rollen
zusammenarbeiten. Dazu werden Aktivitäten
beschrieben, die erforderlich sind, um den konfigurierten Prozess umzusetzen (dies wird als Bereitstellungsprozess bezeichnet).
Prozessentwickler finden Anleitungen zum Definieren, Konfigurieren, Anpassen und Implementieren von Engineering-Prozessen. Die RUP-Produktfamilie umfasst eine Reihe
von Tools, die das Definieren, Konfigurieren und Anpassen des Engineering-Prozesses ermöglichen und vereinfachen.
Mit RUP werden diverse Sichten für die verschiedenen Gruppen von Softwareentwicklern bereitgestellt.
Sollten Sie RUP für Ihr Projekt konfigurieren?
Eines der Kernverfahren in RUP ist die iterative und inkrementelle Entwicklung. Behalten Sie dieses Verfahren beim
Einstieg in RUP immer im Hinterkopf. In RUP wird nicht versucht, alles auf einmal zu tun. Wählen Sie einen Ansatz, bei
dem Sie RUP implementieren, erlernen und verwenden, der selbst iterativ und inkrementell ist.
Beginnen Sie mit der Bewertung Ihres vorhandenen Prozesses und wählen Sie ein oder zwei Schlüsselbereiche aus, die Sie
verbessern möchten. Setzen Sie RUP zunächst ein, um diese Bereiche zu verbessern, und nehmen Sie dann in späteren
Iterationen oder Entwicklungszyklen nach und nach Verbesserungen in anderen Bereichen vor.
Rufen Sie die folgenden Links auf, wenn Sie mehr zu diesen Themen erfahren möchten:
Warum sollte man RUP verwenden?
RUP bietet einem Softwareentwicklungsanwender eine standardisierte und doch konfigurierbare Prozessumgebung. Diese
Prozessumgebung zeichnet sich durch Folgendes aus:
Im Grunde ist RUP eine Sammlung von Software-Engineering-Verfahren, die fortlaufend
verbessert werden, um Veränderungen bei den branchenüblichen Verfahren Rechnung zu tragen.
Wenn Sie Stakeholder in einem Softwareentwicklungsprojekt sind, bringt Ihnen
RUP nahe, was von der Entwicklung erwartet werden kann. RUP enthält ein Terminologieglossar und eine
Wissensenzyklopädie, die Ihnen dabei helfen, Ihre Anforderungen effektiv an das Softwareentwicklungsteam zu
kommunizieren.
Für einen Softwareentwicklungsanwender ist diese Prozessumgebung eine zentrale und allgemein
gültige Prozessdefinition, die von allen Mitgliedern des Softwareentwicklungsteams verwendet werden kann und zu einer
klaren und unmissverständlichen Kommunikation zwischen Teammitgliedern beitragen kann. Auf diese Weise können Sie von
Ihnen erwartete Rolle im Projektteam ausfüllen, wenn klar definiert ist, welches Ihre Zuständigkeiten sind. Als
allgemeine Software-Engineering-Referenz stellt RUP ein reichhaltiges Angebot von Anleitungen zu
Softwareentwicklungsverfahren zur Verfügung, die unerfahrene wie erfahrene Anwender gleichermaßen als wertvolle Quelle
empfinden werden. Selbst wenn Sie ein "Einzelkämpfer" sind, werden Sie RUP als hilfreichen Mentor empfinden, der Ihnen
beim Entwickeln von Weltklassesoftware hilft.
Wenn Sie Manager oder Teamleiter sind, bietet RUP Ihnen einen Prozess, mit dem Sie effektiv
mit Ihren Mitarbeitern kommunizieren können und die Planung und Steuerung ihrer Arbeiten entsprechend verwalten können.
Als Prozessentwickler erhalten Sie mit RUP eine solide
Architekturgrundlage und reichhaltiges Material, aus dem Sie Ihre Prozessdefinition erstellen und diese Grundlage wie
gewünscht konfigurieren und erweitern können. Sie sparen damit enorm viel Zeit und Aufwand ein, der bei sonst beim
Erstellen einer solchen Prozessdefinition ohne Vorlage anfallen würde.
Wann sollte man RUP verwenden?
RUP kann sofort bei Beginn eines neuen Softwareprojekts eingesetzt und auch in nachfolgenden Entwicklungszyklen, lange
nachdem das ursprüngliche Projekt beendet ist, weiterverwendet werden. Die Art und Weise, in der RUP verwendet wird,
muss jedoch je nach
Anforderungen variiert werden. Es gibt verschiedene Aspekte zu berücksichtigen, die bestimmen, wann und wie die
verschiedenen Teile von RUP verwendet werden:
Wo kann man mehr über RUP erfahren?
Die folgenden Quellen können Ihnen helfen, sich schneller in RUP einzuarbeiten:
-
Diverse Veröffentlichungen verschiedener Autoren:
-
The Rational Unified Process, An Introduction, Second Edition. [KRU00]
-
The Rational Unified ProcessMade Easy, A Practitioners Guide to the RUP. [KRO03]
-
The Unified Software Development Process. [JAC98]
-
Software Project Management: A Unified Framework [ROY98]
-
Diverse White
Paper zu verschiedenen Verfahren, die in RUP empfohlen werden.
-
Viele Artikel auf der Website The Rational Edge, einem
Onlinemagazin (e-zine).
-
Die Website developerWorks®-Rational-Website
zu RUP.
-
Rational University bietet praxisorientiertes Prozesstraining.
-
IBM/Rational
Beratungsservices, die Mentoring und Unterstützung durch technische Spezialisten bieten, die in der
Implementierung und Umsetzung von RUP sehr erfahren sind.
|