Rational Unified Process

Rational Unified Process (RUP) is a software development process for object-oriented models. It is also known as the Unified Process Model. It is created by Rational corporation and is designed and documented using UML (Unified Modeling Language). This process is included in IBM Rational Method Composer (RMC) product. IBM (International Business Machine Corporation) allows us to customize, design, and personalize the unified process.

RUP is proposed by Ivar Jacobson, Grady Bootch, and James Rambaugh. Some characteristics of RUP include use-case driven, Iterative (repetition of the process), and Incremental (increase in value) by nature, delivered online using web technology, can be customized or tailored in modular and electronic form, etc. RUP reduces unexpected development costs and prevents wastage of resources.

Phases of RUP :
There are total five phases of life cycle of RUP:

  1. Inception –
    • Communication and planning are main.
    • Identifies Scope of the project using use-case model allowing managers to estimate costs and time required.
    • Customers requirements are identified and then it becomes easy to make a plan of the project.
    • Project plan, Project goal, risks, use-case model, Project description, are made.
    • Project is checked against the milestone criteria and if it couldn’t pass these criteria then project can be either cancelled or redesigned.
  2. Elaboration –
    • Planning and modeling are main.
    • Detailed evaluation, development plan is carried out and diminish the risks.
    • Revise or redefine use-case model (approx. 80%), business case, risks.
    • Again, checked against milestone criteria and if it couldn’t pass these criteria then again project can be cancelled or redesigned.
    • Executable architecture baseline.
  3. Construction –
    • Project is developed and completed.
    • System or source code is created and then testing is done.
    • Coding takes place.
  4. Transition –
    • Final project is released to public.
    • Transit the project from development into production.
    • Update project documentation.
    • Beta testing is conducted.
    • Defects are removed from project based on feedback from public.
  5. Production –
    • Final phase of the model.
    • Project is maintained and updated accordingly.