Está en la página 1de 38

Elaborado por:

Cuerpo Acadmico
Grupo de
Desarrollo de
Proyectos de
Ingeniera

Ver. 2.0
Enero - 2016

1/16/16

CICLOS DE VIDA DEL SOFTWARE

CICLOS DE
VIDA DEL
SOFTWARE

1/16/16

CICLOS DE VIDA DEL SOFTWARE

LINEAL
Las etapas son realizadas en forma lineal
(una tras otra).
Cada etapa se realiza una sola vez.
Es fcil dividir las tareas y prever los
tiempos
Cada etapa debe ser independiente y no
tener retroalimentacin.

1/16/16

CICLOS DE VIDA DEL SOFTWARE

LINEAL
Ventajas
Sencillez en su gestin
Administracin econmica
Para programas muy
pequeos
Desventajas
Usual para sistemas ABC
No apto para sistemas con
requerimientos de
retroalimentacin entre
etapas
1/16/16
CICLOS DE VIDA DEL SOFTWARE

CASCADA PURO
Propuesto por Wiston Royce en 1970, admite
iteraciones, contrario a la creencia de que es
un ciclo de vida secuencial como el lineal.
Despus de cada etapa se realizan
revisiones para comprobar si se puede pasar
a la siguiente.
Es un modelo rgido, poco flexible y con
muchas restricciones.
1/16/16

CICLOS DE VIDA DEL SOFTWARE

CASCADA PURO

1/16/16

CICLOS DE VIDA DEL SOFTWARE

CASCADA PURO
Ventajas
Planificacin sencilla
Elevado grado de calidad
Personal poco calificado
Adecuado para un producto con
funcionalidades conocidas
Desventajas
Se deben tener todos los requerimientos al
inicio
Es costosa y difcil la correccin de errores
Los resultados son visibles hasta el final del
1/16/16
CICLOS DE VIDA DEL SOFTWARE
7

CICLO EN V
Diseado por Alan Davis, contiene las
mismas fases que el ciclo en cascada. A este
se le agregaron 2 subetapas de
retroalimentacin entre las etapas de
anlisis y mantenimiento y entre las de
diseo y debugging.

1/16/16

CICLOS DE VIDA DEL SOFTWARE

CICLO EN V
Las ventajas y desventajas de este modelo
son las mismas del ciclo anterior, con el
agregado de los controles cruzados entre
etapas para lograr una mayor correccin.
Se puede utilizar en aplicaciones simples
que requieren de una confiabilidad muy alta.

1/16/16

CICLOS DE VIDA DEL SOFTWARE

SASHIMI
Es parecido al ciclo en
cascada puro, con la
diferencia de que en
este se pueden solapar
las etapas, con lo cual
se aumenta la
eficiencia ya que la
retroalimentacin entre
etapas se encuentra
implcita en el modelo.
1/16/16

CICLOS DE VIDA DEL SOFTWARE

10

SASHIMI
Ventajas
Ganancia de calidad en el producto final
No es necesaria una documentacin tan
detallada
til para aplicaciones desarrolladas en
capas
Desventajas
Difcil gestionar el inicio y fin de cada
etapa
Problemas de comunicacin
1/16/16

CICLOS DE VIDA DEL SOFTWARE

11

CASCADA C/ SUBPROYECTOS
Sigue el ciclo de
vida en cascada.
Cada una se divide
en subetapas
independientes que
se
pueden
desarrollar
en paralelo

1/16/16

CICLOS DE VIDA DEL SOFTWARE

12

CASCADA C/ SUBPROYECTOS
Ventajas
Se puede tener mas gente trabajando
de forma simultnea
Se reducen los tiempos de entrega del
producto
Desventajas
Pueden surgir dependencias entre las
subetapas
Ms difcil de administrar
1/16/16

CICLOS DE VIDA DEL SOFTWARE

13

ITERATIVO
Derivado del ciclo en cascada, busca
reducir el riesgo que surge entre las
necesidades del usuario y el producto final
por malos entendidos durante la etapa de
solicitud de requerimientos.
Es la iteracin del ciclo en cascada. Al final
de cada iteracin se entrega al cliente una
versin mejorada o con mayores
funcionalidades del producto.
Estas se repitenCICLOS
hasta
que el cliente
DE VIDA DEL SOFTWARE

1/16/16

14

ITERATIVO

1/16/16

CICLOS DE VIDA DEL SOFTWARE

15

ITERATIVO
Ventajas
til en proyectos en los que los
requerimientos no son claros.
til para aplicaciones medianas y
grandes.
Para aplicaciones en las que el usuario
no necesita de toda la funcionalidad del
sistema
Ideal para sistemas que se deben migrar
paulatinamente
1/16/16

CICLOS DE VIDA DEL SOFTWARE

16

PROTOTIPOS
Si no se conoce como desarrollar un
producto determinado las especificaciones
precisas, suele recurrirse a
especificaciones iniciales para hacer un
prototipo.
El objetivo es lograr un producto
intermedio, antes de realizar el producto
final, para conocer mediante el prototipo
como respondern las funcionalidades
previstas en el producto final.
1/16/16

CICLOS DE VIDA DEL SOFTWARE

17

PROTOTIPOS
Si no se conoce como desarrollar un
producto determinado las especificaciones
precisas, suele recurrirse a
especificaciones iniciales para hacer un
prototipo.
El objetivo es lograr un producto
intermedio, antes de realizar el producto
final, para conocer mediante el prototipo
como respondern las funcionalidades
previstas en el producto final.
1/16/16

CICLOS DE VIDA DEL SOFTWARE

18

PROTOTIPOS

1/16/16

CICLOS DE VIDA DEL SOFTWARE

19

PROTOTIPOS
Ventajas
Para el desarrollo de productos con
innovaciones importantes.
Productos con tecnologas nuevas o poco
usadas.
Apto para desarrollo de proyectos con
conocimiento a posteriori
Desventajas
Altamente costoso
Difcil para la administracin temporal
1/16/16

CICLOS DE VIDA DEL SOFTWARE

20

EVOLUTIVO
Este modelo acepta que los requerimientos
del usuario puedan cambiar en cualquier
momento.
Es difcil obtener todos los requerimientos
al inicio del proyecto, por diversas razones.
Este ciclo afronta el problema mediante
una iteracin de ciclos requerimientos
desarrollo evaluacin.
1/16/16

CICLOS DE VIDA DEL SOFTWARE

21

EVOLUTIVO

1/16/16

CICLOS DE VIDA DEL SOFTWARE

22

EVOLUTIVO
Ventajas
til cuando se desconocen la mayora de
requerimientos iniciales o no estn
completos.
Desventajas
Difcil determinar cuando se terminar el
proyecto
Difcil estimar el costo del proyecto.
1/16/16

CICLOS DE VIDA DEL SOFTWARE

23

INCREMENTAL
Se basa en la filosofa de construir
incrementando las funcionalidades del
programa.
Se hace mediante la construccin de
mdulos que cumplen las diferentes
funciones del sistema. Lo que permite
incrementar gradualmente las capacidades
del software.
Es una repeticin del ciclo en cascada
1/16/16
DE VIDA DEL SOFTWARE
aplicada a cadaCICLOS
funcionalidad
del sistema.

24

INCREMENTAL

1/16/16

CICLOS DE VIDA DEL SOFTWARE

25

INCREMENTAL
Ventajas
Construir un sistema pequeo es menos
riesgoso que construir un sistema
grande.
Como se desarrollan
independientemente las
funcionalidades es mas fcil revelar los
requerimientos del usuario.
Si se detecta un error grave solo se
deshecha la ultima iteracin
Facilita la labor con la filosofa Divide y
Vencers CICLOS DE VIDA DEL SOFTWARE
1/16/16
26

ESPIRAL
Es una variacin del prototipado, diseado
por Boehm en 1988. Se basa en una serie
de ciclos repetitivos para ir ganando
madurez en el producto final.
Toma los beneficios del incremental y de
prototipos, pero tiene mas en cuenta el
concepto de riesgo debido a las
incertidumbres e ignorancias en los
requerimientos al inicio del proyecto.
1/16/16

CICLOS DE VIDA DEL SOFTWARE

27

ESPIRAL

1/16/16

CICLOS DE VIDA DEL SOFTWARE

28

ESPIRAL
Ventajas
Se puede iniciar con un alto grado de
incertidumbre
Riesgo bajo de retraso por la deteccin
de errores.
Desventajas
Costo temporal que suma cada vuelta
de la espiral
Necesidad de la presencia y
comunicacin continua del cliente
1/16/16

CICLOS DE VIDA DEL SOFTWARE

29

ESPIRAL
Ventajas
Se puede iniciar con un alto grado de
incertidumbre
Riesgo bajo de retraso por la deteccin
de errores.
Desventajas
Costo temporal que suma cada vuelta
de la espiral
Necesidad de la presencia y
comunicacin continua del cliente
1/16/16

CICLOS DE VIDA DEL SOFTWARE

30

AGRUPAMIENTO (CLUSTER)
Los desarrollos orientados a objetos estn
basados en el producto, a diferencia de los
estructurados que estn basados en el
proyecto.
Para la cultura del proyecto se propone el
modelo de agrupamiento. En el que la fase
de generalizacin aparece combinada con
la fase de validacin.
El concepto clave es el agrupamiento que
es un conjuntoCICLOS
deDEclases
relacionadas con
1/16/16
VIDA DEL SOFTWARE
un objetivo comn.

31

AGRUPAMIENTO (CLUSTER)

1/16/16

CICLOS DE VIDA DEL SOFTWARE

32

REMOLINO
Definido por Rumbaugh en 1992, seala
que las metodologas de desarrollo, no
ofrecen una visin real del mismo, que es
mucho mas desordenada e implica
mltiples iteraciones.
El modelo en cascada asume solo una
dimensin de iteracin consistente en la
fase de proceso, pero pueden identificarse
otras dimensiones como:
1/16/16

CICLOS DE VIDA DEL SOFTWARE

33

REMOLINO
Amplitud.- Tamao del desarrollo.
Profundidad.- Nivel de abstraccin o
detalle.
Madurez.- Grado de complecin,
correccin y elegancia.
Alternativas.- Diferentes soluciones a un
problema.
Alcance.- En cuanto
a adjetivos del
CICLOS DE VIDA DEL SOFTWARE
sistema, ya que los requisitos cambian a

1/16/16

34

PINBALL
Propuesto por Ampler en 1994, la pelota
representa un proyecto
El jugador es el equipo de desarrollo
Se procede de forma iterativa a encontrar
clases, atributos, mtodos e
interrelaciones y definir colaboraciones,
herencia, agregacin y subsistemas.
Por ultimo se pasa a la programacin,
prueba e implantacin.
1/16/16
CICLOS DE VIDA DEL SOFTWARE

35

PINBALL
Hay dos formas de jugar:
Seguro -> Tecnologas y mtodos
probados
Al lmite -> Mayor riesgo, mas ventajas
En este ciclo de vida el factor ms
importante es la habilidad del equipo de
desarrollo.

1/16/16

CICLOS DE VIDA DEL SOFTWARE

36

FUENTE
Definido por Henderson Sellers y Edwards
en 1990.
Es el ms conocido en el desarrollo OO.
Presenta alto grado de iteracin y
solapamiento
En la base esta el anlisis de
requerimientos, a partir del cual va
creciendo el ciclo de vida, cayendo solo
para mantenimiento.
1/16/16
CICLOS DE VIDA DEL SOFTWARE

37

FUENTE

1/16/16

CICLOS DE VIDA DEL SOFTWARE

38

También podría gustarte