Como vimos anteriormente, existen muchos tipos de modelos para desarrollar software. Unos tienen ciertos beneficios, otros cuentan con otras características, y como no hay uno mejor que el otro, se tomó la idea de juntar lo mejor de todos para crear un proceso más completo.
Puede que a veces nos parezca algo de poca utilidad el utilizar estos procedimientos, pero la verdad es que sí son muy necesarios para poder crear un software completo, con todas las especificaciones y requerimientos, además de que sea funcional.
Caso de uso
Los casos de uso son la descripción que brinda el usuario con cliente al software que se va a desarrollar. Estos especifican qué es lo que se quiere tener en el proyecto o alguna funcionalidad específica. Generalmente el proyecto se basa mucho en estos casos de uso ya que son las especificaciones a seguir y ayudan a corregir errores más tarde.
Iterativo e incremental
El proceso unificado está compuesto por cuatro fases:
- Inicio
- Elaboración
- Construcción
- Transición
Cada una de estas fases es dividida a su vez en una serie de iteraciones que ofrecen como resultado un incremento del producto que añade y mejora las funcionalidades del proyecto desarrollado.
Centrado en la arquitectura
Al estar desarrollando un proyecto no se puede tener una idea de cómo será el producto al finalizarlo, por eso mismo no se puede tener un modelo que cubra con toda la arquitectura del software. Es por eso que se utilizan varios modelos que toman en cuenta las especificaciones, tecnologías a utilizar y las ideas para poder finalizar con éxito.
Proyecto Unificado de Rational
El RUP (por sus siglas en inglés) es un proceso de desarrollo de software creado por la empresa Rational Software, actualmente perteneciente a IBM.
Junto al modelo UML constituye la manera la metodología estándar más utilizada para el análisis, diseño, implementación y documentación de sistemas de software. No es un sistema con pasos firmemente establecidos, sino que se adaptan dependiendo las necesidades de cada quién acorde al proyecto a desarrollar.





