El documento describe varios modelos de desarrollo de software, incluyendo modelos en cascada, incrementales, evolutivos y un proceso unificado. Los modelos en cascada siguen un enfoque secuencial pero son difíciles de coordinar con el flujo real del proyecto. Los modelos incrementales y evolutivos son iterativos pero pueden resultar en prototipos de baja calidad. El modelo de espiral combina elementos de cascada y prototipos. El proceso unificado intenta integrar lo mejor de los diferentes modelos mediante etapas iterativas centradas en el cliente