Rational Unified Process

Slides:



Advertisements
Ähnliche Präsentationen
1 Gerardo Navarro Suarez BPM Suite. 2 Quelle: camunda Services GmbH Das Warum hinter Activiti Problem bestehender BPMS: Starker Fokus auf das Business.
Advertisements

Risiko-Management im Projekt
Submodell Softwareentwicklung (SE)
Das V - Modell - Überblick
V - Modell Anwendung auf große Projekte
Phasen und ihre Workflows
Henkelmann Rico Schmailzl Toni-Felix
Die Softwarelebenszyklen
Das „Vorgehensmodell“
V-Modell XT - Ein Überblick
<<Presentation Title>>
Software Projekte1. 2 Vorlesungsinhalte Projektdefinition Softwarekrise Wann ist ein Projekt erfolgreich / gescheitert? Warum scheitern Projekte?
IT-Projektmanagement
Software-Lebenszyklus
Beispiele für Vorgehensmodelle
LE LM 9 - LO6 Beispiel für iterativ inkrementelles Vorgehen: der RUP
Universität Stuttgart Institut für Kernenergetik und Energiesysteme I nstitut für K ernenergetik und E nergiesysteme Rational Unified Process (RUP) - Definitionen.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Der Rational Unified Process - Einführung Inhalt Prozessmodelle Der Rational Unified.
Risikomanagement Inhalt Ziele und Motivation
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Beispiel 2: Iterative-Inkrementelle Vorgehensmodelle Annahmen: Anforderungen sind unvollständig.
Prozessmodelle als Teil des Management-Prozesses
Beispiel: Wasserfallmodell als einfaches Phasenmodell
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Agile Software Entwicklung mit dem RUP Agile Softwareentwicklung Best Practice bei.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme LE P MuSofT Erkundungsumgebung Entwicklung eines komponentenbasierten Systems WS 03/04.
RUP-Elemente (Schlüsselkonzepte)
Prozessmodelle Inhalt Prozessmodell im Management Prozess
Das V - Modell - Überblick
Rational Unified Process (RUP) - Definitionen
Prozeßstruktur des ISO 9001/9004 Prozeßmodells
Software Risk Evaluation Method (SRE)
eXtreme Programming (XP)
Projektplan: Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University.
Vorgehensmodelle Motivation Softwaretechnik Beispiel
Anpassung des RUP an ein konkretes Projekt - 1
Was wir gelernt haben: SE-Methoden zur Reduktion der Komplexität
Vorgehensmodelle: Schwergewichtige Modelle
Das Wasserfallmodell - Überblick
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Weitere Vorgehensmodelle Der Rational Unified Process RUP –bei IBM.
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering WS 2006 / 2007Folie 1 Agile Vorgehensweisen Hintergrund –in den letzten Jahren hat.
Entwickeln mit Methode. Wilhelm Klein, März 2010 Entwickeln mit Methode WARUM? Projektunterricht mit Realisierung Dinge müssen fertig werden Fehler früh.
Das Redaktionssystem der APA
Architekturen und Techniken für computergestützte Engineering Workbenches.
Cooperation unlimited © Zühlke Juni 2009 Hansjörg Scherer Folie 1 Cooperation unlimited TFS als BackEnd für Visual Studio und Eclipse.
Software entwickeln statt Feuer löschen
Agenda 13: Begrüßung & Einführung in das Thema
Unified Process (UP), Rational UP (RUP)
Wilhelm Klein, März 2010 Entwickeln mit Methode Projekt Manager Projektplanung Steuerung und Kontrolle Bereitstellung (Hardware und Software) Qualitätssicherung.
Seminar: Entwicklung verteilter eingebetteter Systeme WS05/06 Betreuer: Info:
Ihr Entwicklungs-Partner mit Nearshore-Kompetenz Stuttgart, INFOBEST Romania SRL.
Innovator Die Komponenten.
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
Enterprise Achitect (Sparx Systems) Marius Rudolf
Systementwicklung Vorgehensmodelle am Beispiel des RUP
Rational Unified Process
Application Lifecycle Management Day 25. August 2008 Erfolgreiche Software- Entwicklung in Offshore-Projekten mit Microsoft Team Foundation Server Thomas.
Rational Unified Process
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Kurze Rekapitulation aus der Einführungsvorlesung Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 20. Oktober 2011.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
Praxiserfahrungen aus Projekten
© Till Hänisch, 2002 BA Heidenheim Vorgehensmodelle Wie entsteht Software ?
Seminararbeit Release Management von Web-Systemen Minh Tran Lehrstuhl für Software Engineering RWTH Aachen
Technologietag Baugruppentest Wege der Standardisierung im Funktions- und EOL-Test Markus Koetterl National Instruments Germany GmbH.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
Systems Requirements & Achitectur ENG 2 & ENG 3 Training Kunde,
Software-Delivery auf Knopfdruck IBM Cloud & DevOps.
Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I) Historisch Kulturelle Informationsverarbeitung Hauptseminar:
Systemanalyse BA Heidenheim 2002.
Prozessmodell
 Präsentation transkript:

Rational Unified Process Franz-Josef Herpers Rational Unified Process Einführung

Projekte mit Dilbert

Software-Projekte in der Realität 16% aller Projekte scheitern 53% aller Projekte sind nicht in Time bzw. Budget 31% aller Projekte sind erfolgreich [Quelle: Chaos Report der Standish Group] seit 1994 laufende Studie

Warum scheitern Software-Projekte? Anforderungsmanagement als Ad-Hoc-Angelegenheit Unpräzise Kommunikation Schwache Architektur Unkontrollierbare Komplexität Inkonsistenzen zwischen Anforderungen, Design und Implementierung Unzureichende Tests Subjektive, nicht messbare Projektstatus Kein Fokus auf Projektrisiken Unkontrollierte Änderungsmechanismen Unzureichende Automatisierung

Prozessmodelle gegen das Scheitern Wasserfallmodell Spiralmodell V-Modell Rational Unified Process (RUP)

Wasserfallmodell sequentielle Projektphasen, am Ende jeder Phase steht Dokument (dokumentengetrieben), top-down-Vorgehen, wenig Management-Aufwand/einfach, Benutzerbeteiligung nur in Definitionsphase Verifikation = Überprüfung der Übereinstimmung zwischen einem Software-Produkt und seiner Spezifikation (Wird ein korrektes Produkt entwickelt?) Validierung = Überprüfung der Eignung bzw. des Werts eines Produkts bezogen auf seinen Einsatzzweck (Wird das richtige Produkt entwickelt?) Rückkopplungen werden auf angrenzende Stufen begrenzt, um teure Überarbeitungen über mehrere Stufen zu vermeiden

V-Modell Fügt dem Wasserfallmodell die systematische Qualitätssicherung hinzu Historie Entwickelt von der IABG (Industrieanlagen-Betriebsgesellschaft) i.A. des BMVg

Spiralmodell evolutionär, risikogetrieben Barry Boehm '86

Was ist der RUP? Methode Prozess Produkt iterativ risikogetrieben architekturzentriert Use-Case-getrieben Prozess klar definiert (wer, was, wie, wann) klar strukturiert (Lebenszyklus, Meilensteine) Produkt stellt anpassbares Prozess-Framework zur Verfügung zur Unterstützung der Softwareentwicklung Das Wie im Prozess wird hauptsächlich durch Methode festgelegt(?) Was ist Architektur? (=>Kap. 7 und Kruchten2000a) - Skelettstruktur des Systems - Building Blocks (Subsysteme, Komponenten) und Schnittstellen - Architekturmechanismen wie Garbage Collection, Persistenz, Messaging

Historie RUP

Die drei Amigos Booch OOSE OMT Grady Booch Ivar Jacobson James Rumbaugh OMT = Object Modeling Technique OOSE = OO Software Engineering Booch OOSE OMT

UML - Entwicklung März 2003: UML 1.5 2001: UML 1.4 UML 2.0 WG UML 1.5 kleinere Veränderungen UML 2.0 WG - erwartet im Sommer 2003 - verbesserter Modellaustausch - verbesserte Unterstützung MDA - verbesserte Unterstützung Echtzeitmodellierung (RT) - verbesserte Unterstützung Geschäftsprozessmodellierung (BPM) z.B. Erweiterung Aktivitätsdiagramme (z.B. mehrere Anfangszustände)

Einflüsse und Historie RUP Der RUP wurde nicht von heute auf morgen eingeführt, sondern hat sich entwickelt Man sieht die Einflüsse auf RUP halbjährlich neue Versionen Objectory Process entwickelt 1987 in Schweden von Jacobson aufgrund seiner Erfahrungen bei Ericsson wurde in Jacobsons Firma Objectory AB zum Produkt 1995 Fusion Objectory und Rational Rational: iterative Entw. u. Architekturbegriff Objectory: Prozessstruktur u. Use Cases

Rational und RUP Aufkauf aller Amigos Aufkauf ergänzender Firmen UML-Entwicklung Entwicklung RUP Kauf von Rational durch IBM (2002)

Die Methode RUP

Best Practices Anforderungsmanagement Use-Case-getrieben Vorteil: a) Mittel zur Kommunikation der Afos mit Kunden b) Projektmitglieder können beim Design, der Implementierung und beim Test sowie dem Schreiben der Handbücher sehr nahe an den Afos arbeiten Use Component Architectures - Funktionale Dekomposition trennt zwar Daten von Funktionen, aber dafür sind in der Regel alle Funktionen betroffen, wenn sich die Art der Datenspeicherung ändert (S. 41 Kroll/Kruchten 2003) - Bei komponentenbasierter Architektur sind Funktionen und Daten in einer Komponente zusammengefasst - Kommunikation zwischen Komponenten erfolgt über die Schnittstellen, nur diese muss man kennen (Wartbarkeit interner Komponentenstruktur!!, Kapselung als Schlagwort) - WebServices als Internet-enabled Komponenten Qualitätsmanagement durch Iteration frühes Testen möglich! Regressionstest (Tests existierender SW, um sicher zu gehen, dass keine neuen Fehler eingebaut wurden) Testen gleich nach der Implementierung Quality by Design => Generieren von Testcode aus dem Design heraus (frühes Nachdenken über Tests) Der Kosten wegen ist Automatisierung nötig insbesondere bei Regressionstests Reviews der Artefakte nach der Erstellung Qualität ist nicht nur eine Aufgabe des Testteams, sondern jedes Projektmitglieds Control Changes Änderungen positiv sehen. Moderne SW-Systeme sind nämlich zu komplex, als dass man sie im ersten Wurf richtig spezifizieren könnte. Die Änderungen müssen aber kontrolliert werden, wenn ein Projekt fertig werden soll. Auch Änderungen in fortgeschrittnen Projektphasen sind problematisch. Ziel muss es sein, die Kosten zu minimieren und die Freiheit Änderungen einzubauen zu maximieren. Es gibt dabei verschiedene Typen von Änderungen, die je nach Projektphase unterschiedliche Kosten verursachen Änderungstypen: - Änderungen an Geschäftsprozessen - Änderungen an Architektur - Änderungen am Design und Implementierung - Änderungen am Projektumfang Manage the changes - Have procedures in place for approving whether to introduce a change (Change Control Boards) - Be able to assess the impact of change (Req-Traceability!!) - Minimize the cost of change (Tools, automatische Synchronisierung zwischen Code und Design)

Iterativ-inkrementelles Vorgehen Ergebnis einer Iteration: ein Stück aus- führbare Software (Inkrement) Jede Iteration ist zielorientiert (Funktionen, Risiko) Jede Iteration setzt auf der vor- hergehenden auf (Evolution, Verfeinerung) Frühe Iteration legen den Fo- kus stärker auf Anforderungen, spätere auf das Testen Iteration = Arbeitseinheit, 'Miniprojekt' Focus auf ausführbarer Software! Risiken: 1) Keine Erfahrung in der Entwicklung mit .NET 2) Noch unklar, wie die Integration mit einem Legacy-System funktionieren soll 3) Erfahrung mit Stammkunden, dem immer noch Requirements nach Beta-Release einfallen 4) Schnittstelle zu Legacy-System könnte Performance-Probleme aufwerfen Risikominimierung: (Wegwerf-)Prototyp zum Test Risikovermeidung: Schnittstelle aus Projectscope rausnehmen 5) Projektteam ist unerfahren in der Entwicklung mit RUP 6) Evtl. zieht sich die Entw. in neues Kalenderjahr => Kunde kann sie nicht im alten Jahr abrechnen 7) Eine Entwickler-Position ist nach 2 Wochen immer noch unbesetzt 8) Bestimmte Anforderungen werden in Construction-Phase immer noch nicht erfüllt!

Warum Iterationen I?

Warum Iterationen II? Leichtere Anpassung an sich ändernde Anforderungen Integration ist kein "Big Bang" am Ende des Projekts Risiken lassen sich durch früheres Erkennen minimieren Mittel für das Management taktische Änderungen am Produkt vorzunehmen Wiederverwendung wird erleichtert Fehler können über mehrere Iterationen gefunden werden Bessere Verwendung des Projektpersonals Teammitglieder lernen im Projektverlauf Der Entwicklungsprozess selbst wird im Projektverlauf verbessert und verfeinert

Der Prozess RUP

The Big Picture Dynamische Struktur - statische Struktur

Dynamische Struktur: Phasen Inception Elaboration Construction Transition LCO LCA IOC PR Phasen = Lebenszyklus des Projekts Struktur = Dimension, Lebenszyklus, zeitliche Dimension LCO = Lifecycle Objective Milestone LCA = Lifecycle Architecture Milestone IOC = Initial Operational Capability Milestone PR = Product Release Milestone Vision Basis- Architektur Funktionalität Freigabe Meilensteine

Inception Abstecken des Projektumfangs (mit Stakeholdern) Vision erstellen Akzeptanzkriterien festlegen Systemumfang festlegen Identifikation der kritischen Use-Cases Architekturskizze evtl. Prototyp (Proof of Concept) Kostenschätzung und Planung Einschätzung und Minimierung der Geschäftsrisiken Projektumgebung festlegen (Prozess, Tools) Meilenstein: Lifecycle Objective Milestone (LCO) Stakeholder = Teilhaber Stakeholder ======== Alle am Projekt Interessierten: - direkt Betroffene (Benutzer) - indirekt Betroffene (Kunden, Öffentlichkeit) - Entwickler - Firmenleitung - Aufsichtsorgane (Datenschutz, Revision) Oft im Projektlenkungssausschuss alle vertreten Die Kriterien für den LCO-Meilenstein ergeben sich aus den Punkten Bsp. für 2 Iterationen in der Inception-Phase: E-Akte => Workflow

Elaboration Verfeinerung der Anforderungen und der Vision Basis-Architektur (Verfeinerung Skizze) Design Implementierung (evolutionärer Prototyp) Validierung (v.a. gegen Anforderungen) Minimierung v.a. der technischen Risiken Konfiguration der Softwareentwicklungstools Planung der Entwicklungsphase (Iterationen!) Lifecycle Architecture Milestone (LCA) evtl. auch Wegewerfprototypen um Trade-Offs, Wiederverwendung und Machbarkeit zu testen/demonstrieren (Risikominimierung)

Construction Minimierung der Entwicklungskosten Parallelisierung der Entwicklungsarbeiten (CM!) Iterative Entwicklung eines auslieferbaren Release fehlende Use Cases/Afos ermitteln und beschreiben Vervollständigung Analyse/Design Implementierung Integration und Testen (gegen Anforderungen) Initial Operational Capability Milestone (IOC)

Transition Erstellen der finalen Version der Software Auslieferung der Software an den Kunden Product Release Milestone (PR)

Phasen und Iterationen enden mit einem Meilenstein enden mit einem Release (da Iterationsende = Phasenende) Ziele durch feste Meilensteine vorgegeben Iterationen enden mit einem ausführbaren Release zielorientiert (Risiken minimieren, Use Case(s) realisieren) Iterationsziele werden NICHT vom Prozess vorgegeben, sondern projekt-individuell sind in die Phasen eingebunden (0...N Iterationen/Phase) sind relativ kurz

Wie viele Iterationen?

Statische Struktur: Schlüsselelemente Workers (Das Wer?) Activities (Das Wie?) Artifacts (Das Was?) Workflows (Das Wann?)

Übersicht Schlüsselelemente

Workers and Activities

Typen von Workers Analyst Developer Tester Manager s. Kap. 15-18 Kroll/Kruchten 2003

Alle Artefakte außer der SW selbst sind nur Unterstützung! Artifact (Artefakt) Modell Modellelement Dokument Source Code Executables Trade-Off zwischen Kosten der Erstellung und Wartung von Artefakten und dem späteren Gewinn daraus. Typischerweise wächst der Gewinn mit zunehmender Komplexität des Projekts Modell => Report Projektkomplexität - komplizierte Stakeholder-Beziehungen - verteiltes Team - Kosten der Qualitätsthemen wachsen - Software ist kritisch für das Geschäft des Kunden Guideline sollte keine Entschuldigung sein, essentielle Artefakte wie Vision, Afo-Doku, Design-Doku usw. nicht zu erstellen. Vielmehr sollte es immer um den ROI gehen. Metapher: RUP als Buffet. Essen sollte man nur die Lieblingsgerichte, alles schafft man eh nicht Alle Artefakte außer der SW selbst sind nur Unterstützung! Sind Sie im Zweifel, ob Sie ein Artefakt erstellen sollen, erstellen Sie es nicht!

Artefakte und Phasen

Workflows Core Workflows Core Supporting Workflows Detailed Workflows

Core Workflows Business Modeling Requirements Analysis & Design Verbindung zw. Business und System (Business Use Cases, Business Object Model) Requirements Das Was des Systems (UC, Actors, UC-Beschreibung) Analysis & Design Das Wie des Systems (Design & Analysis Model) Implementation Das System selbst Test Die Qualität des Systems Deployment Die Auslieferung/Abnahme des Systems Design The design model consists of design classes structured into design packages and design subsystems with well-defined interfaces, representing what will become components in the implementation. It also contains descriptions of how objects of these design classes collaborate to perform use cases. Design Purpose To transform the requirements into a design of the system to-be. To evolve a robust architecture for the system. To adapt the design to match the implementation environment, designing it for performance Implementation purpose to define the organization of the code, in terms of implementation subsystems organized in layers, to implement classes and objects in terms of components (source files, binaries, executables, and others), to test the developed components as units, and to integrate the results produced by individual implementers (or teams), into an executable system. Testing purpose To verify the interaction between objects. To verify the proper integration of all components of the software. To verify that all requirements have been correctly implemented. To identify and ensure defects are addressed prior to the deployment of the software.

Core Supporting Workflows Project Management Framework für das Management von SW-Projekten Praktische Leitfäden für Planung, Staffing, Ausführung und Monitoring Framework für Risikomanagement Configuration and Change Management Kontrolle über zahlreichen Prozessartefakte Environment Konfiguration des Prozesses und der Tools Project Management (iteratives Planen!) traditionell: top-down und product breakdown => Produktstruktur und zu erstellende Artefakte müssen zu Beginn des Projekts antizipiert werden, obwohl man fast noch nichts über das Produkt weiss iterativ: process breakdown (Phasen und Iterationen) Cycle-Phase-Iteration-Build-Time-Boxing Projektplan = Phasenplan dazu ein Plan pro Iteration

Beispiel Core Workflow

Beispiel Detailed Workflow Activities => Steps

Workflows und Phasen

Weitere Prozesselemente Guidelines Templates Tool mentors Reports Checkpoints Concepts Roadmaps

Übersicht aller Elemente

RUP im Vergleich

V-Modell und RUP - V-Modell gibt es in deutsch und englisch, den RUP nur in englisch - V-Modell ist frei verfügbar

RUP und andere Modelle CMM CMMI RUP Process Framework XP Wasserfall Formalität Agilität RUP Process Framework Wasserfall: Few risks, sequential, late integration and testing Agilität: Little documentation, light process Formalität: Well-documented, Traceability, CCB Iterativ: risk-driven, continous integration and testing CMM und CMMI vgl. Kapitel 3 Light RUP Konfiguration Durchschnittl. RUP Konfiguration Formale RUP Konfiguration Iterativ

Das Produkt RUP

RUP-Plattform RUP Knowledge Center RUP-Diskussionsforen RUP Exchange Get Started Guides andere Ressourcen RUP-Diskussionsforen RUP Exchange Plugin-Austausch Rational University Training Consulting Services Rational Process Workbench Eigene Plugins entwickeln Tailoring von RUP Kopplung mit Rational Rose extra zu lizensieren Development Kit RUP-Plugins Small RUP RUP for .NET RUP for J2EE RUP-Builder Installation von Plugins Konfiguration der RUP-Webseite Webbasierte, durchsuchbare Wissensbasis Guidelines Tool mentors Beispiele SoDA-Templates Word-Templates MS-Project-Pläne Die webbasierte anpassbare und leicht wieder publizierbare Form des RUP ist Gold wert und sollte nicht unterschätzt werden. Tailoring des RUP - Konfiguration - Instanziierung - Anpassung Konfiguration des RUP 1. Erstellen der RUP Prozesskonfiguration 2. Erstellen der Prozessviews Konfiguration - RUP Process Component - RUP Library - RUP Base - RUP Plug-In A RUP Plug-In is a set of "precompiled" RUP Process Components, ready to be "linked" into a RUP Base to create one or more RUP Configurations. => RUP Builder, RUP Exchange Process Views werden auch im RUP Builder erstellt weitere Personalisierung auch über MyRUP (that is the Web browser used to browse RUP) Anpassung von RUP-Templates ist auch möglich Instanziierung RUP Development Case Projekt-Webseite (you may want to use the Project Web Template that comes with the RUP product as a starting point, Alternative: Rational ProjectConsole, which is a Rational Suite componentthat will automatically extract information from Rational tools and third-party tools to build a project Web site for you with information about all current artifacts. Anpassung - Thin RUP Plug-Ins (changing content files for existing process elements) => RUP Organizer - Structural RUP Plug-Ins (changing process elements and their relationships) => RUP Modeler RUP Process Workbench - RUP Organizer - RUP Modeler (add-in to Rational XDE and works in conjunction with RUP Organizer

Das RUP-Framework

Rational Tool Suite Rational RequisitPro Rational ClearQuest => Requirements Management Rational ClearQuest => Change Management Rational TestStudio => Automated Testing Rational Rose => Visual Modeling und viele andere..... Testing Tools bei Veerhegen S. 64/65

RUP bei Rational/IBM heute Alles Rational Initiativen Unified Lifecycle Unified Lifecycle tools are delivered through the Rational Suite® product family. The industry's first end-to-end life-cycle management solution provide a comprehensive software development platform for analysts, system architects, software developers, quality assurance engineers, Webmasters, and real-time software developers. Unified Change Management Unified Change Management is Rational's "best practices" process for managing change from requirements to release. Eng mit den Rational Tools Clear Case und Clear Quest Rational Development Accelerators Rational Development Accelerators enable development teams to jumpstart their application development process through reuse standards, reusable frameworks and enhanced automation designed to increase the flexibility and predictability of development projects. Reusable Asset Specification (toolunabhängig) As part of this initiative, we are delivering tools that extend the capabilities of the core Rational solution. These integrated tools focus on helping you manage and apply reusable assets so that you gain maximum leverage from your precious organizational and technical knowledge. Rational Development Accelerators also include sample and reference assets, which provide examples to help make best practices tangible, and provide a path towards systematic reuse of software assets. Finally, Rational Development Accelerators incorporate the standards and process guidance to extend the Rational solution to include reuse and related architecture subjects. By accelerating your adoption and application of Rational tools and process, you will be able to build solutions faster. Quality by design The Quality by Design initiative from Rational makes it easier to continuously detect and repair software problems during the development process, from early design and through every iteration. Several Rational products support this initiative, Rational QualityArchitect, Rational TestManager, Rational PurifyPlus RealTime, Rational PurifyPlus Family and Rational Test RealTime. Rational Unified Software Project Management Unified Software Project Management (USPM) is a Rational-wide initiative to help customers effectively deploy, plan, execute and monitor software engineering projects. - select and deploy best practices (RUP, Rational Workbench) - plan and execute iterative Development (Rational RequisitePro® creates project tasks from your requirements, and Rational ClearQuest ProjectTracker creates To-Do lists (activities) from those same tasks. ) - measure progress and quality (Rational ProjectConsole, available as part of the Rational Suite Team Unifying Platform, enables you to easily quantify current project status with objective metrics, graphically presented.) - collaborate and communicate project information (The USPM initiative enhances team communication with a dynamically-generated project Web site via Rational ProjectConsole.) Rational Suite Extensibility Each application has its own API for retrieving stored information. Until now, customers, Independent Software Vendors (ISVs), and system integrators have needed to use a separate API to gain programming access to each tool in Rational Suite. The vision of Rational Suite Extensibility (RSE) is to provide unified access to Rational Suite through a common API (Application Program Interface).