El creador del modelo en espiral
fue Barry Boehm, ideó y promulgó un modelo desde un enfoque distinto al
tradicional en Cascada: El Modelo Evolutivo Espiral. Su Modelo de Ciclo de Vida
en Espiral tiene en cuenta fuertemente el riesgo que aparece a la hora de
desarrollar software.
Es
un modelo de proceso de software evolutivo donde se conjuga la naturaleza de
construcción de prototipos con los aspectos controlados y sistemáticos del
modelo lineal y secuencial. Proporciona el potencial para el desarrollo rápido
de versiones incrementales del software que no se basa en fases claramente
definidas y separadas para crear un sistema.
Se
comienza mirando las posibles alternativas de desarrollo, se opta por la de
riesgo más asumible y se hace un ciclo de la espiral. Si el cliente quiere
seguir haciendo mejoras en el software, se vuelve a evaluar las distintas
nuevas alternativas y riesgos y se realiza otra vuelta de la espiral, así hasta
que llegue un momento en el que el producto software desarrollado sea aceptado
y no necesite seguir mejorándose con otro nuevo ciclo.
En
el modelo espiral, el software se desarrolla en una serie de versiones
incrementales. Durante las primeras iteraciones la versión incremental podría
ser un modelo en papel o un prototipo, durante las últimas iteraciones se
producen versiones cada vez más completas del sistema diseñado.
EL
modelo en espiral se divide en un número de actividades de marco de trabajo,
también llamadas regiones de tareas. Cada una de las regiones están compuestas
por un conjunto de tareas del trabajo llamado conjunto de tareas que se adaptan
a las características del proyecto que va a emprenderse en todos los casos se
aplican actividades de protección.
Tipos
El modelo
espiral tuvo varias modificaciones que son:
- Modelo Original de Boehm.
- Modelo Típico de Seis Regiones.
- Modelo WINWIN.
Modelo original de Boehm
- Cada vuelta se divide en 4 sectores:
- Planeación: determinación de los objetivos, alternativas y restricciones
- Análisis de riesgo: análisis de alternativas e identificación/resolución de riesgos
- Ingeniería: desarrollo del producto hasta "el siguiente nivel".
- Evaluación: valoración por parte del cliente de los resultados obtenidos.
- El movimiento de la espiral, ampliando con cada iteración su amplitud radial, indica que cada vez se van construyendo versiones sucesivas del software, cada vez más completas.
- Uno de los puntos más interesantes del modelo, es la introducción al proceso de desarrollo a las actividades de análisis de los riesgos asociados al desarrollo y a la evaluación por parte del cliente de los resultados del software.
Modelo típico de seis regiones
Las regiones de tareas que componen este modelo son:
- Comunicación con el cliente: las tareas requeridas para establecer comunicación entre el desarrollador y el cliente
- Planificación: las tareas requeridas para definir recursos, el tiempo y otras informaciones relacionadas con el proyecto. Son todos los requerimientos.
- Análisis de riesgos: las tareas requeridas para evaluar riesgos técnicos y otras informaciones relacionadas con el proyecto.
- Ingeniería: las tareas requeridas para construir una o más representaciones de la aplicación.
- Construcción y adaptación: las tareas requeridas para construir, probar, instalar y proporcionar soporte al usuario.
- Evaluación del cliente: las tareas requeridas para obtener la reacción del cliente según la evaluación de las representaciones del software creadas durante la etapa de ingeniería e implementación durante la etapa de instalación.
Modelo winwin
El modelo en espiral WINWIN de
Boehm, define un conjunto de actividades de negociación al principio de cada
paso alrededor de la espiral. Más que una simple actividad de comunicación con
el cliente se definen las siguientes actividades:
- Identificación del sistema o subsistemas clave de los directivos.
- Determinación de las condiciones de victoria de los directivos.
- Negociación de las condiciones de victoria de los directivos para reunirlas en un conjunto de condiciones para todos los afectados
Ventajas
- El modelo en espiral puede adaptarse y aplicarse a lo largo de la vida del software de computadora.
- Como el software evoluciona a medida que progresa el proceso, el desarrollador y el cliente comprenden y reaccionan mejor ante riesgos en cada uno de los nivele evolutivos.
- El modelo en espiral permite a quien lo desarrolla aplicar el enfoque de construcción de prototipos en cualquier etapa de evolución del producto.
- El modelo en espiral demanda una consideración directa de los riesgos técnicos en todas las etapas del proyecto y si se aplica adecuadamente debe reducir los riesgos antes de que se conviertan en problemas.
- En la utilización de grandes sistemas ha doblado la productividad.
Desventajas
- Resulta difícil convencer a grandes clientes de que el enfoque evolutivo es controlable.
- Debido a su elevada complejidad no se aconseja utilizarlo en pequeños sistemas.
- Genera mucho tiempo en el desarrollo del sistema.
- Modelo costoso.
- Requiere experiencia en la identificación de riesgos.
Características
- Es considerado como un modelo evolutivo ya que combina el modelo clásico con el diseño de prototipos.
- Contiene una nueva etapa que es el análisis de riesgos, no incluida anteriormente.
- Este modelo es el indicado para desarrollar software con diferentes versiones actualizadas como se hace con los programas modernos de PC´s.
- La ingeniería puede desarrollarse a través del ciclo de vida clásico o el de construcción de prototipos.
- Este es el enfoque más realista actualmente.
No hay comentarios:
Publicar un comentario