El modelo en espiral es un modelo de desarrollo de software iterativo que combina prototipos y desarrollo lineal secuencial. Se aplica a proyectos de mantenimiento, mejora y desarrollo de nuevos productos. Incluye fases de comunicación, planificación, análisis de riesgos, ingeniería, pruebas y evaluación con el cliente. Busca obtener requisitos mediante negociación ganar-ganar entre desarrolladores y clientes.