Rational Unified Process is a software development process that together with the UML are the most widely used standard methodology for analysis, implementation and documentation of object-oriented systems.
It is based on three main pillars:
- Use case driven Process: In RUP use cases are not only a tool for specifying system requirements. They also guide the design, implementation and testing. Are an integrator and a working guide, establishing traceability between artifacts generated throughout the project phases.
- Process centered around the architecture: The architecture involves the most significant static and dynamic aspects of the system, is related to decisions that indicate how it should be built the system and helps to determine in what order.
- Iterative and Incremental process: the strategy proposed in RUP is to have an iterative and incremental process where work is divided into smaller parts or mini projects. Allowing that the balance between use cases and architecture is achieved during each mini project and throughout the development process. Each mini project can be seen as an iteration (a more or less complete tour along all critical workflows) which produces an increase in the product.
The structure of the process is divided into five phases, which in turn are subdivided into iterations as shown in the following graph:
In each of the phases are carried out a number of activities, generating certain products or artifacts. These phases are described in more detail below:
- Start: It defines the business model and the project scope. The most important use cases are designed, and ultimately you get an overview of the system.
- Preparation: We analyze the problem domain, and the architecture is defined.
- Construction: Held the system implementation.
- Transition: The details are finalized. This includes complete documentation, training end users, and overall adjustment-related tasks, configuration, installation, and ease of use of the product.