Historia
Boehm cerró la década de los 80 publicando en 1988 un modelo de ciclo de vida en espiral (Figura 5) que sustituye a la solución en fases del “modelo en cascada” con ciclos de experimentación y aprendizaje. El modelo incorpora un nuevo elemento en el desarrollo de software como es el “análisis de riesgos” y define cuatro actividades principales representadas por los cuatro cuadrantes de la figura:
• Planificación -> Determina objetivos, alternativas y restricciones
• Análisis de riesgo -> Evalúa alternativas, identifica y resuelve riesgos.
• Ingeniería -> Desarrollo y verificación del producto del siguiente nivel.
• Evaluación del cliente -> Valoración de los resultados y planificación de la siguiente fase.
Con cada iteración alrededor de la espiral (comenzando en el centro y siguiendo hacia el exterior), se van construyendo sucesivas versiones del software, cada vez más completas. Durante la primera vuelta de la espiral, en el primer cuadrante (superior izquierdo) se determinan objetivos, alternativas y restricciones; y en el segundo cuadrante (superior derecho) se analizan e identifican los riesgos (¿se dispone de personal?, ¿está preparado?, ¿existe mercado para el producto?, etc.). Si el análisis de los riesgos indica que existe incertidumbre en los requisitos se puede desarrollar un prototipo para su valoración, y también se pueden usar simulaciones y otros modelos para definir más el problema y refinar los requisitos.
En el cuadrante tercero (inferior derecho) se incorporan incrementalmente las etapas del ciclo de vida tradicional en cada ciclo de la espiral.
• Planificación -> Determina objetivos, alternativas y restricciones
• Análisis de riesgo -> Evalúa alternativas, identifica y resuelve riesgos.
• Ingeniería -> Desarrollo y verificación del producto del siguiente nivel.
• Evaluación del cliente -> Valoración de los resultados y planificación de la siguiente fase.
Con cada iteración alrededor de la espiral (comenzando en el centro y siguiendo hacia el exterior), se van construyendo sucesivas versiones del software, cada vez más completas. Durante la primera vuelta de la espiral, en el primer cuadrante (superior izquierdo) se determinan objetivos, alternativas y restricciones; y en el segundo cuadrante (superior derecho) se analizan e identifican los riesgos (¿se dispone de personal?, ¿está preparado?, ¿existe mercado para el producto?, etc.). Si el análisis de los riesgos indica que existe incertidumbre en los requisitos se puede desarrollar un prototipo para su valoración, y también se pueden usar simulaciones y otros modelos para definir más el problema y refinar los requisitos.
En el cuadrante tercero (inferior derecho) se incorporan incrementalmente las etapas del ciclo de vida tradicional en cada ciclo de la espiral.
Ventajas• Incorpora muchas de las ventajas de los otros ciclos de vida
• Conjuga la naturaleza iterativa de los prototipos con los aspectos controlados y sistemáticos del modelo clásico • Proporciona el potencial para el desarrollo rápido de versiones incrementales • Puede adaptarse y aplicarse a lo largo de la vida del software • Es un enfoque realista del desarrollo del software • Permite aplicar el enfoque de construcción de prototipos en cualquier momento para reducir riesgos • Reduce los riesgos antes de que se conviertan en problemáticos • Controla muy bien los riesgos y mientras más iteraciones se realicen, menos riesgos habrá • Monitoriza y controla los riesgos continuamente |
Desventajas• Puede resultar difícil convencer a algunos clientes de que el enfoque evolutivo es controlable
• Solo resulta aplicable para proyectos de gran tamaño • Supone una carga de trabajo adicional, no presente en otros ciclos de vida • Requiere una considerable habilidad para la evaluación y resolución del riesgo, y se basa en esta habilidad para el éxito • Si un riesgo importante no es descubierto y gestionado, indudablemente surgirán problemas • Es bastante complicado de realizar y su complejidad puede incrementarse hasta hacerlo impracticable • El modelo no se ha utilizado tanto como otros, por lo que tendrán que pasar años antes de que determine con certeza la eficacia de este modelo |