Rational Unified Process (RUP)
The Rational Unified Process (RUP) is an iterative software development framework developed by Rational Software – later acquired by IBM – and formalized in the late 1990s.
Although RUP is attributed to Rational Software, its development was led by three prominent figures in the field:
- Ivar Jacobson (co-creator of UML and a major influence on use-case–driven development)
- Grady Booch (known for the Booch method and object-oriented design)
- James Rumbaugh (creator of the OMT method and another UML co-author)
The three – known as the "three amigos" – were also instrumental in developing the Unified Modelling Language (UML), which RUP uses extensively for design and documentation. Jacobson later co-founded the SEMAT initiative, which sought a common kernel for describing practices across methods such as RUP.
RUP is a commercial variant of the broader Unified Process framework. It is an adaptable process, customizable to the needs of different projects and organizations.
RUP organizes development around three core principles:
- It is use-case driven (requirements are captured and traced as use cases).
- It is architecture-centric (a stable, validated architecture is established early and guides subsequent work).
- It is iterative and incremental (the product is built through repeated cycles, with business value delivered in each).
Risk management is a key concern, too. High-risk elements – particularly architectural unknowns – are addressed in early iterations rather than deferred.
Development is structured into four sequential phases, each comprising one or more time-boxed iterations:
- Inception: Define the scope and business case, identify major risks, and establish initial feasibility.
- Elaboration: Establish and validate the architecture, refine requirements, and produce a detailed project plan.
- Construction: Build the product iteratively through repeated implementation and testing cycles until it is ready for deployment.
- Transition: Deliver the product to end users, conduct beta testing, provide training, and address defects discovered in production.
Within each phase, work is distributed across six disciplines – business modelling, requirements, analysis and design, implementation, test, and deployment – though the emphasis on each shifts by phase. Elaboration, for example, is heavily weighted towards analysis and design, while construction concentrates on implementation and test.
RUP was widely adopted in large enterprises and government programmes during the 1990s and 2000s, and it was influential in establishing iterative development as a credible alternative to waterfall approaches in enterprise settings. It was, however, frequently criticized for being heavyweight and document-intensive, and requiring significant organizational investment to tailor and adopt.
As agile methods – particularly Scrum and Extreme Programming – gained popularity through the 2000s, RUP declined. A lighter variant, OpenUP, was subsequently developed to bring the core Unified Process concepts into closer alignment with agile values. Another contemporary response to RUP’s weight was ICONIX, a use-case-driven methodology that keeps a minimal UML subset and an explicit robustness-analysis step between use cases and design.