RUP es una metodología de desarrollo de software iterativa e incremental. Se caracteriza por estar guiada por los casos de uso, centrarse en la arquitectura desde las primeras etapas y dividir el proceso en cuatro fases iterativas (Inicio, Elaboración, Construcción y Transición) donde se refinan los requisitos, la arquitectura y se implementan incrementos del producto. RUP ha evolucionado desde métodos previos como el de Jacobson y se ha convertido en un estándar adoptado por IBM.