The Rational Unified Process® (RUP)
A Well Documented, Complete yet Complex Methodology
Thomas Meloche © 2002 Fellow, The Menlo Institute The Menlo Institute LLC 212 N. Fourth Ave Ann Arbor, MI 48104 www.menloinstitute.com (734) 665-1847
The Rational Unified Process ® The Unified Modeling Language ® Rational ® are registered by Rational Software Corporation.Rational Unified Process
Introduction In order to mitigate problems described previously in proprietary software development processes, base your process framework on open, published and supported standards. Two software development processes stand out as strong candidates for consideration: • • Extreme Programming (XP) The Rational Unified Process® (Unified Process)
Theseprocesses are well documented and publicly available. In this paper, we will briefly describe The Rational Unified Process® and highlight why it is so important and how it addresses specific shortcomings of proprietary development processes. The Rational Unified Process® The Rational Unified Process® is based on the integrated work of three primary methodologists, Ivar Jacobson, Grady Booch and JamesRumbaugh. These methodologists, aided by a large and extended methodologist community, were assembled by Rational Corporation to form a unified, cohesive and comprehensive methodology framework for the development of software systems. Their work, occurring over several years and based on existing, previously tested methodologies, have lead to significant standards in the development community,including the general acceptance of Use Cases and the Unified Modeling LanguageTM (UML). The Unified Process has three distinguishing characteristics. These characteristics are: • • Use-Case Driven - The process employs Use Cases to drive the development process from inception to deployment. Architecture-Centric - The process seeks to understand the most significant static and dynamic aspects in terms ofsoftware architecture. The architecture is a function of the needs of the users and is captured in the core Use Cases. Iterative and Incremental - The process recognizes that it is practical to divide large projects into smaller projects or mini-projects. Each miniproject comprises an iteration that results in an increment. An iteration may encompass all of the workflows in the process. Theiterations are planned using Use Cases.
Rational Unified Process
Four Process Phases The Unified Process consists of cycles that may repeat over the long-term life of a system. A cycle consists of four phases: Inception, Elaboration, Construction and Transition. Each cycle is concluded with a release, there are also releases within a cycle. Let’s briefly review the four phases ina cycle: • Inception Phase - During the inception phase the core idea is developed into a product vision. In this phase, we review and confirm our understanding of the core business drivers. We want to understand the business case for why the project should be attempted. The inception phase establishes the product feasibility and delimits the project scope. Elaboration Phase - During theelaboration phase the majority of the Use Cases are specified in detail and the system architecture is designed. This phase focuses on the "Do-Ability" of the project. We identify significant risks and prepare a schedule, staff and cost profile for the entire project. Construction Phase - During the construction phase the product is moved from the architectural baseline to a system complete enough totransition to the user community. The architectural baseline grows to become the completed system as the design is refined into code. Transition Phase - In the transition phase the goal is to ensure that the requirements have been met to the satisfaction of the stakeholders. This phase is often initiated with a beta release of the application. Other activities include site preparation, manual...