Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Cuerpo Acadmico
Grupo de
Desarrollo de
Proyectos de
Ingeniera
Ver. 2.0
Enero - 2016
1/16/16
CICLOS DE
VIDA DEL
SOFTWARE
1/16/16
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
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
CASCADA PURO
1/16/16
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
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
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
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
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
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
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
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
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
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
18
PROTOTIPOS
1/16/16
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
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
21
EVOLUTIVO
1/16/16
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
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
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
27
ESPIRAL
1/16/16
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
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
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
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
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
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
38