Escolar Documentos
Profissional Documentos
Cultura Documentos
n
d
e
r
e
q
u
i
s
i
t
o
s
y
P
r
o
t
o
t
i
p
a
d
o
Investigacin
Preliminar
Diseo bsico del Prototipo
Construccin prototipo
Verificacin y requerimientos
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Diseo
Tcnico
Programacin
y Prueba
Operacin y
Mantencin
Evaluacin
Modificacin
Diseo detallado. Rediseo del Prototipo y
documentacin para programacin y mantenimiento
Las especificaciones del diseo tcnico son
implementadas y probadas
Instalacin del sistema y modificaciones posteriores
E
s
p
e
c
i
f
i
c
a
c
i
n
d
e
r
e
q
u
i
s
i
t
o
s
y
P
r
o
t
o
t
i
p
a
d
o
Verificacin y requerimientos
Modificacin del Prototipo
PRODUCTO
DE
INGENIERA
Modelos de procesos generales
Modelo Evolutivo
Desventajas:
El diseo rpido del prototipo hace que los desarrolladores
utilicen herramientas que faciliten la rpida generacin de
cdigo, dejando a un lado aspectos de calidad (eficiencia,
fiabilidad, mantenibilidad del cdigo, etc.).
Probablemente no se tendr un cdigo ptimo
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Probablemente no se tendr un cdigo ptimo
Exige disponer de las herramientas adecuadas
Descoordinacin entre el desarrollo y la documentacin. El
desarrollo es tan rpido que a veces no se tiene tiempo
suficiente para producirla
Podemos obtener una arquitectura dbil y difcil de mantener.
Modelos de procesos generales
Desarrollo formal de sistemas
Tiene puntos en comn con le desarrollo en cascada pero ste se
basa en la transformacin matemtica formal de una
especificacin del sistema a un programa ejecutable.
La especificacin de requisitos de software se desarrolla mediante
una notacin matemtica.
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Las actividades de diseo, implementacin y pruebas de unidades
se reemplazan por un proceso de transformacin formal.
Definicin de
requisitos
Especificacin
formal
Transformacin
formal
Integracin y pruebas
del sistema
Modelos de procesos generales
Desarrollo formal de sistemas
Desventajas:
Las pruebas suelen ser largas y poco prcticas.
Se utiliza principalmente en dominios muy
especializados.
Requiere la supervisin de un experto.
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Requiere la supervisin de un experto.
No ofrece ventajas significativas si se compara con el
modelo en cascada y el evolutivo.
Modelos de procesos generales
Desarrollo basado en la reutilizacin
Se trata de utilizar diseos o cdigo (componentes
de software reutilizables) ya existentes que sean
similares al que se necesita para el nuevo proyecto.
Estos componentes se buscan y se modifican acorde
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
a lo requerido y se incorporan en el sistema.
Especificacin
de requisitos
Anlisis de
componentes
Modificacin
componentes
Diseo del sistema
con la reutilizacin
Validacin del
sistema
Desarrollo e
integracin
Modelos de procesos generales
Desarrollo basado en la reutilizacin
Cundo es conveniente? (Ventajas):
Reduce la cantidad de software a desarrollar.
Reduce costes y riesgos.
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Por lo general, conduce a una entrega ms rpida del
software.
Modelos de procesos hbridos
Modelo en Espiral
Es una combinacin del modelo en cascada y evolutivo
(Boehm88)
Es un modelo evolutivo del desarrollo, formado por un conjunto
de vueltas de espiral
En las primeras vueltas el SW es un modelo en papel, la
especificacin de un producto. An no funciona.
En las sucesivas vueltas, se desarrolla un prototipo.
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
En las sucesivas vueltas, se desarrolla un prototipo.
En la ltimas iteraciones se obtienen versiones completas del
producto.
Cada ciclo del espiral representa una fase del proyecto software
4 sectores por ciclo:
Definicin de Objetivos
Evaluacin y reduccin de riesgos
Desarrollo y Validacin
Planificacin
Modelos de procesos hbridos
Modelo en Espiral
Con este modelo obtenemos el producto final a partir de
piezas ms pequeas.
El nmero de actividades a realizar se incrementa
notablemente a medida que nos alejamos del centro de la
espiral. Las primeras son menos costosas
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
espiral. Las primeras son menos costosas
La evaluacin despus de cada fase permite cambios.
Incorpora el factor Riesgo es un modelo orientado a
riesgos
Tiene como objetivo vital pensar en las cosas que pueden ir
mal en el desarrollo del software y saber cmo resolverlas
PLANIFICACIN
Determine objetivos
Comunicacin con el
cliente/usuario
ANLISIS DE RIESGOS
Evale alternativas,
identifique y resuelva
riesgos
Anlisis de
Riesgos
Anlisis de
Riesgos
Anlisis de
Riesgos
Anlisis
de
Prototipo
Operacional
Prototipo
3
Prototipo
2
Proto
Modelos de procesos hbridos
Modelo en Espiral
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
de
Riesgos
EVALUACIN DEL CLIENTE
Planea la
siguiente fase
INGENIERA
Desarrolla y verifica
el siguiente nivel
del producto
3
2
Proto
tipo 1
Plan de requerimientos
Plan del ciclo de vida
REVISIN
Plan de
Desarrollo
Plan de Integracin
y Prueba
Concepto de
Operacin
Simulaciones y modelos
Requeri-
mientos de
SW
Validacin de
Requerimientos
Diseo
V &V
Servicio
Prueba de
Aceptacin
Prueba de
Integracin
Prueba de
Unidades
Codificacin
Diseo
Detallado
Diseo
del
Producto
Modelos de procesos hbridos
Modelo en Espiral - Fases
Planificacin
Comunicacin con el cliente
Determinar los objetivos
Determinar las alternativas de desarrollo
Analizar las restricciones de cada alternativa
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Anlisis de riesgos
Ver todos los puntos que pueden fallar
Evaluar las diferentes alternativas
Determinar y resolver o minimizar los riesgos
Identificacin de los riesgos para cada alternativa, as
como la manera de resolverlos
Modelos de procesos hbridos
Modelo en Espiral - Fases
Ingeniera
Desarrollo del producto
En cada iteracin el proyecto se va completando
Evaluacin del cliente
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Evaluacin del cliente
Revisin para ver si est de acuerdo, o no, con los
resultados obtenidos. Si todo va bien, se pasa a la
siguiente fase
En la revisin participan todas las personas y
organizaciones que tienen relacin con el producto
Se planifica la siguiente vuelta. Previsin de los recursos
necesarios
Modelos de procesos hbridos
Modelo en Espiral
Desventajas:
Es difcil establecer los hitos para determinar si podemos pasar
a la siguiente vuelta de espiral
La evaluacin de riesgos es una tarea compleja Se necesitan
expertos en evaluacin de riesgos
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Es difcil convencer a los clientes que un modelo evolutivo es
controlable
No se aconseja para proyectos que tienen pocos riesgos.
Demasiado coste
En definitiva, no es un modelo muy real ni claro.
Modelos de procesos hbridos
Modelo en Espiral
Cundo es conveniente? (Ventajas):
Cuando tenemos proyectos complejos, donde el
problema no est muy bien definido y conlleva una
serie de riesgos
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Proyectos dinmicos
Proyectos innovadores y ambiciosos
Modelos de procesos hbridos
Modelo Incremental
Es un tipo de modelo evolutivo es iterativo: permite a los
ingenieros desarrollar versiones cada vez ms completas
Combina elementos del modelo en cascada (aplicados
repetidamente) con la filosofa interactiva de la construccin de
prototipos
Cada secuencia lineal produce un incremento las entregas de
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Cada secuencia lineal produce un incremento las entregas de
los incrementos se definen al principio del proceso software
Cada entrega constituye un producto operacional.
Es til cuando el personal o los recursos no estn disponibles
hasta cierto tiempo dentro del proceso de desarrollo Se adapta
a entornos de alta incertidumbre
Modelos de procesos hbridos
Modelo Incremental
El diseo e implementacin del software se dividen en una
serie de incrementos los cuales se desarrollan uno a uno y se
van integrando hasta llegar al producto final.
Cada incremento es un subconjunto de funcionalidades del
sistema.
Las funcionalidades se agrupan por grado de importancia.
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Las funcionalidades se agrupan por grado de importancia.
Los servicios de prioridad ms alta son los que se entregan antes al
cliente.
Una vez se han identificado los incrementos, se desarrollan con el
modelo ms adecuado. Dependiendo de cmo estn de bien
definidos sus requisitos funcionales se va a utilizar un modelo en
cascada o un modelo evolutivo.
Modelos de procesos hbridos
Modelo Incremental
Ventajas:
El hecho de que el primer incremento recoja los
requisitos ms importantes y crticos hace que el
cliente obtenga un producto ms o menos til en las
primeras iteraciones.
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
primeras iteraciones.
Existe bajo riesgo de fallar por la participacin
continua del usuario.
Desventajas:
Conviene que los incrementos no sean muy grandes.
Es difcil obtener incrementos equilibrados.
Modelos de procesos
Otros
DRA (Desarrollo Rpido de Aplicaciones)
Proceso Unificado
Espiral WINWIN
Desarrollo concurrente
Tcnicas de 4 generacin
www.kybele.etsii.urjc.es
/
Ingeniera del Software I 2011/2012
Tcnicas de 4 generacin
Modelos para Desarrollo OO:
Modelo de Agrupamiento
Modelo fuente
Modelo remolino
Modelo Pinball, etc.