RUP and its Phases
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 is total of five phases of the life cycle of RUP:
- Inception –
- Communication and planning are the main ones.
- Identifies the scope of the project using a use-case model allowing managers to estimate costs and time required.
- Customers’ requirements are identified and then it becomes easy to make a plan for the project.
- The project plan, Project goal, risks, use-case model, and Project description, are made.
- The project is checked against the milestone criteria and if it couldn’t pass these criteria then the project can be either canceled or redesigned.
- Elaboration –
- Planning and modeling are the main ones.
- A detailed evaluation and development plan is carried out and diminishes the risks.
- Revise or redefine the use-case model (approx. 80%), business case, and risks.
- Again, checked against milestone criteria and if it couldn’t pass these criteria then again project can be canceled or redesigned.
- Executable architecture baseline.
- Construction –
- The project is developed and completed.
- System or source code is created and then testing is done.
- Coding takes place.
- Transition –
- The final project is released to the public.
- Transit the project from development into production.
- Update project documentation.
- Beta testing is conducted.
- Defects are removed from the project based on feedback from the public.
- Production –
- The final phase of the model.
- The project is maintained and updated accordingly.
- It provides good documentation, it completes the process in itself.
- It provides risk-management support.
- It reuses the components, and hence total time duration is less.
- Good online support is available in the form of tutorials and training.
- Team of expert professional is required, as the process is complex.
- Complex and not properly organized process.
- More dependency on risk management.
- Hard to integrate again and again.