RUP es un proceso de desarrollo de software iterativo e incremental que busca aumentar la productividad y calidad mediante el uso de mejores prácticas como la administración de requerimientos, arquitecturas basadas en componentes, modelamiento visual y verificación de calidad. RUP divide el proceso en fases de inicio, elaboración, construcción y transición, con hitos al final de cada una.