Este documento describe varios modelos de ciclo de vida de desarrollo de software, incluyendo el modelo en cascada y modelos evolutivos. El modelo en cascada consiste en fases secuenciales de requisitos, diseño, implementación, pruebas e integración, y mantenimiento. Si bien es el modelo más simple, tiene problemas como iteraciones costosas y dificultad para responder a cambios. Los modelos evolutivos buscan superar estos problemas mediante enfoques más flexibles e iterativos.