Este documento describe varios modelos de ciclo de vida de desarrollo de software, incluidos los modelos en cascada y en espiral. Explica las etapas típicas del ciclo de vida como análisis, diseño, codificación, pruebas y mantenimiento. Luego compara y contrasta diferentes enfoques de ciclo de vida como cascada puro, en V, por subproyectos, iterativo, por prototipos, evolutivo e incremental.