MODELO ESPIRAL



ESPIRAL.JPG
EL Modelo Espiral, propuesto en 1988 por Barry Boehm, reconoce la naturaleza iterativa del desarrollo y combina actividades de desarrollo con gestión de riesgo, para minimizar y controlar el riesgo. Cada ciclo o iteración del espiral se divide en cuatro fases: determinar objetivos, alternativas y restricciones; evaluar alternativas, identificar y resolver los riesgos; desarrollar, verificar el producto del próximo nivel y planificar las siguientes fases.
El modelo espiral es en cierto sentido semejante al Modelo Iterativo pues maneja cuatro iteraciones o ciclos. Comienza con los requisitos y un plan inicial de desarrollo (incluye presupuesto, restricciones y alternativas para personal, diseño y ambiente de desarrollo). Se evalúan riesgos del proyecto y se construye prototipos de las alternativas. Luego se escribe un documento con el "concepto de las operaciones" que describe la funcionalidad del sistema en un nivel alto, desde el punto de vista del usuario. Este es el producto de la 1° iteración. A partir de este documento se especificación los requisitos del software, los cuales son validados, éstos son el producto de la 2° iteración. En la 3° iteración se hace un plan de desarrollo, se produce el diseño, que es verificado y validado. en la 4° iteración se hace un plan de integración y prueba, se genera el software y se realizan las pruebas.
En cada iteración se hace un análisis de riesgo de las alternativas según los requisitos y restricciones, y se construyen prototipos para analizar las alternativas y seleccionar una. Estos prototipos pueden ser simples maquetas en papel, prototipos de interfaz de usuario o simulaciones del sistema, dependiendo del riesgo a evaluar, según el ciclo en el proceso y del tipo de aplicación.

LEL - LISTA DE SÍMBOLOS




Nombre/s del Símbolo
Tipo
1
Actividad / Regiones de tareas
Objeto
2
Análisis del riesgo / Analizar el riesgo
Verbo
3
Área de incertidumbre / Incertidumbre
Objeto
4
Cliente
Sujeto
5
Código
Objeto
6
Concepto de operación
Objeto
7
Desarrollar, verificar el producto del próximo nivel
Verbo
8
Determinar objetivos, alternativas y restricciones
Verbo
9
Diseño del producto software
Objeto
10
Diseño detallado
Objeto
11
Dimensión angular
Objeto
12
Dimensión radial
Objeto
13
Equipo de desarrollo
Sujeto
14
Evaluar alternativas, identificar y resolver riesgos
Verbo
15
Gestión de riesgos
Verbo
16
Implementación
Verbo
17
Iteración / Ciclo
Objeto
18
Líder de proyecto
Sujeto
19
Plan de contingencia
Verbo
20
Plan de desarrollo
Objeto
21
Plan de integración y prueba
Objeto
22
Plan de requisitos
Objeto
23
Planificar las siguientes fases
Verbo
24
Producto / producto software
Objeto
25
Prototipo
Objeto
26
Prototipo operativo
Objeto
27
Prueba de aceptación
Verbo
27
Prueba de integración / Integración y pruebas
Verbo
28
Prueba unitaria
Verbo
29
Requisito del software
Objeto
30
Revisión
Verbo
31
Riesgo
Objeto
32
Riesgo alto
Estado
33
Riesgo bajo
Estado
34
Riesgo medio
Estado
35
Simulación, modelo y prueba de comparación
Objeto
36
Validación del diseño
Verbo
37
Validación de los requisitos del software / Validación de requisitos
Verbo
38
Verificación del diseño
Verbo
39
Versión incremental / Incremento
Objeto

Cantidad Total de Símbolos
39




Símbolo Nº: 1

Tipo: Objeto
Nombre/s
Actividad / Regiones de tareas
Noción
Impacto

Símbolo Nº: 2

Tipo: Verbo
Nombre/s
Análisis del riesgo / Analizar el riesgo
Noción
Impacto

Símbolo Nº: 3

Tipo: Objeto
Nombre/s
Área de incertidumbre / Incertidumbre
Noción
Impacto

Símbolo Nº: 4

Tipo: Sujeto
Nombre/s
Cliente
Noción
Impacto

Símbolo Nº: 5

Tipo: Objeto
Nombre/s
Código
Noción
Impacto

Símbolo Nº: 6

Tipo: Objeto
Nombre/s
Concepto de operación
Noción
  • Documento que describe la funcionalidad del producto software a un nivel alto de abstracción.
  • Es elaborado desde el punto de vista del cliente.
  • Es confeccionado durante la primera iteración.
Impacto

Símbolo Nº: 7

Tipo: Verbo
Nombre/s
Desarrollar, verificar el producto del próximo nivel
Noción
Impacto

Símbolo Nº: 8

Tipo: Verbo
Nombre/s
Determinar objetivos, alternativas y restricciones
Noción

  • Actividad en la que se definen objetivos específicos de la iteración.
  • Sirve para establecer el contexto de desarrollo y decidir qué parte del mismo se abordará durante ese ciclo.
Impacto

Símbolo Nº: 9

Tipo: Objeto
Nombre/s
Dimensión angular
Noción
  • Es un mecanismo de control del avance.
  • Mide el progreso de cada ciclo de la espiral.
Impacto
  • Si indica que no está completo el proceso, no se pasa a un nuevo ciclo.
  • Se lo utiliza para medir el avance del producto.

Símbolo Nº: 10

Tipo: Objeto
Nombre/s
Dimensión Radial
Noción
  • Es un mecanismo de control de costo del proyecto.
  • Es un valor siempre creciente.
Impacto
  • Se lo utiliza para medir el costo incurrido hasta el momento.

Símbolo Nº: 11

Tipo: Objeto
Nombre/s
Diseño del producto software
Noción
Impacto

Símbolo Nº: 12

Tipo: Objeto
Nombre/s
Diseño detallado
Noción
Impacto
  • Se lo utiliza para desarrollar el código.

Símbolo Nº: 13

Tipo: Sujeto
Nombre/s
Equipo de desarrollo
Noción
Impacto

Símbolo Nº: 14

Tipo: Verbo
Nombre/s
Evaluar alternativas, identificar y resolver riesgos
Noción
Impacto

Símbolo Nº: 15

Tipo: Verbo
Nombre/s
Gestión de riesgos
Noción
Impacto
  • Para cada riesgo se intenta minimizar la probabilidad de ocurrencia y/o el impacto.
  • Si no es posible reducirlo, se el seguimiento del riesgo.
  • Se elabora el Plan de contingencia.

Símbolo Nº: 16

Tipo: Verbo
Nombre/s
Implementación
Noción
Impacto

Símbolo Nº: 17

Tipo: Objeto
Nombre/s
Iteración / Ciclo
Noción
  • Período en el cual se lleva a cabo el desarrollo del producto software.
  • Se repite numerosas veces hasta terminar el desarrollo de las funcionalidades detalladas en el Plan de requisitos.
  • Representa progreso en el transcurso del proyecto.
Impacto

Símbolo Nº: 18

Tipo: Sujeto
Nombre/s
Líder de proyecto
Noción
  • Responsable de garantizar el éxito en la construcción del producto.
Impacto

Símbolo Nº: 19

Tipo: Verbo
Nombre/s
Plan de contingencia
Noción
Impacto
  • Se identifican posibles medidas a aplicar frente a la aparición de cada riesgo
  • Se eligen las medidas adecuadas asociadas a cada riesgo
  • Se establecen los recursos necesarios para llevarlas a cabo
  • Se determinan las responsabilidades del equipo de desarrollo

Símbolo Nº: 20

Tipo: Objeto
Nombre/s
Plan de desarrollo
Noción
Impacto

Símbolo Nº: 21

Tipo: Objeto
Nombre/s
Plan de integración y prueba
Noción
Impacto

Símbolo Nº: 22

Tipo: Objeto
Nombre/s
Plan de requisitos
Noción
Impacto

Símbolo Nº: 23

Tipo: Verbo
Nombre/s
Planificar las siguientes fases
Noción
  • Actividad donde se especifica detalladamente las tareas, tiempos y recursos asociados a la próxima fase del desarrollo del producto software
  • Es llevada a cabo por el líder de proyecto
Impacto

Símbolo Nº: 24

Tipo: Objeto
Nombre/s
Producto / Producto software
Noción
Impacto

Símbolo Nº: 25

Tipo: Objeto
Nombre/s
Prototipo
Noción
Impacto
  • Se lo confecciona para minimizar el riesgo
  • Se lo utiliza para desarrollar funcionalidades del producto
  • Puede evolucionar
  • Puede ser desechado

Símbolo Nº: 26

Tipo: Objeto
Nombre/s
Prototipo operativo
Noción
Impacto


Símbolo Nº: 27

Tipo: Verbo
Nombre/s
Prueba de aceptación
Noción
Impacto

Símbolo Nº: 28

Tipo: Verbo
Nombre/s
Prueba de integración
Noción
Impacto

Símbolo Nº: 29

Tipo: Verbo
Nombre/s
Prueba unitaria
Noción
Impacto

Símbolo Nº: 30

Tipo: Objeto
Nombre/s
Requisito del software
Noción
Impacto

Símbolo Nº: 31

Tipo: Verbo
Nombre/s
Revisión
Noción
Impacto
  • Se revisa el incremento desarrollado durante el ciclo anterior
  • Se definen los planes correspondientes a la próxima iteración
  • Se determinan los recursos necesarios para el próximo ciclo

Símbolo Nº: 32

Tipo: Objeto
Nombre/s
Riesgo
Noción
  • Evento que perjudica el normal desarrollo del producto
  • Pone en peligro la continuidad del proyecto
  • Es detectado por el líder de proyecto
Impacto

Símbolo Nº: 33

Tipo: Estado
Nombre/s
Riesgo alto
Noción
Impacto

Símbolo Nº: 34

Tipo: Estado
Nombre/s
Riesgo bajo
Noción
Impacto

Símbolo Nº: 35

Tipo: Estado
Nombre/s
Riesgo medio
Noción
Impacto

Símbolo Nº: 36

Tipo: Objeto
Nombre/s
Simulación, modelo y prueba de comparación
Noción
  • Es una representación simplificada de la realidad diseñada para representar, conocer o predecir propiedades del producto
  • Se la realiza si se detecta incertidumbre
  • Es conducida por el líder de proyecto
Impacto
  • Se lo utiliza para evaluar el impacto de un riesgo
  • Se lo usa para establecer estrategias de minimización del riesgo

Símbolo Nº: 37

Tipo: Verbo
Nombre/s
Validación del diseño
Noción
Impacto

Símbolo Nº: 38

Tipo: Verbo
Nombre/s
Validación de los requisitos del software / Validación de requisitos
Noción
Impacto

Símbolo Nº: 39

Tipo: Verbo
Nombre/s
Verificación del diseño
Noción
Impacto

Símbolo Nº: 40

Tipo: Objeto
Nombre/s
Versión Incremental / Incremento
Noción
Impacto

Bibliografía

  • Boehm, Barry W. “A Spiral Model of Software Development and Enhancement”. 1988
  • Boehm, Barry W. “Software risk management: Principles and Practices”. 1991.
  • Pressman, Roger S. “Ingeniería del Software: Un enfoque práctico. Quinta edición”. McGraw – Hill. 2001. pp. 24-26.
  • Sommerville, Ian. “Ingeniería del software. Séptima edición”. Prentice Hall.


Autores:
Ardanaz, Silvana
Perez, Natalia
Soldati, Laura