SlideShare una empresa de Scribd logo
EL PROCESO DE DESARROLLO
DEL SOFTWARE
No existe un proceso de software
universal que sea efectivo para
todos los contextos de
proyectos de desarrollo.
ACTIVIDADES
FUNDAMENTALES DE TODOS
LOS PROCESO DE SOFTWARE
 Especificación de software
 Diseño e Implementación
 Validación
 Evolución
ALGUNOS MODELOS DE
PROCESO DE SOFTWARE
 Codificar y corregir
 Modelo en cascada
 Desarrollo evolutivo
 Desarrollo formal de sistemas
 Desarrollo basado en reutilización
 Desarrollo incremental
 Desarrollo en espiral
CODIFICAR Y CORREGIR
(CODE-AND-FIX)
ETAPAS
 Codificar parte del software
 Corregir errores, agregar
funcionalidad o nuevos elementos.
UTILIZACIÓN
 Desarrollo de software tarea unipersonal.
 El problema es claramente comprendido
 El programador es el usuario de la
aplicación.
 La aplicación es simple según estándares
actuales
DESVENTAJAS
 No se planifica ni se controla.
 Después de una serie de cambios:
 La estructura del código se hace más y
más complicada
 Los cambios siguientes son más y más
difíciles.
 Los resultados son menos confiables.
DESVENTAJAS
 El software no satisface las necesidades ni
las expectativas del cliente.
 La calidad no es adecuada.
 Productos terminados fuera de plazo y
presupuesto.
 Cambios estructurales del software son casi
imposibles.
CASCADA
Se popularizó en la década de los 70 y
guía la mayor parte de la práctica actual.
El proceso es una “cascada” de fases,
donde el producto de una fase es la
entrada de la siguiente.
Cada fase se compone de una serie de
actividades que deben realizarse en
paralelo.
DESCRIPCIÓN
Este modelo admite hacer iteraciones,
durante las modificaciones en el
mantenimiento se puede ver por ejemplo la
necesidad de cambiar algo en el diseño, lo
cual significa que se harán los cambios
necesarios en la codificación y se tendrán
que realizar de nuevo las pruebas, si se tiene
que volver a una de las etapas anteriores al
mantenimiento hay que recorrer de nuevo el
resto de las etapas.
FASES MODELO CASCADA
Cada fase tiene como resultado documentos que deben ser
aprobados por el usuario.
Una fase no comienza hasta que
termine la fase anterior y
generalmente se incluye la corrección
de los problemas encontrados en
fases previas.
En la práctica, este modelo no es
lineal, e involucra varias iteraciones e
interacción entre las distintas fases de
desarrollo.
VENTAJAS
 La planificación es sencilla.
 La calidad del producto resultante es alta.
 Permite trabajar con personal poco cualificado.
 Con este modelo se tiene un seguimiento de
todas las fases del proyecto y de su
cumplimiento.
DESVENTAJAS
 Necesidad de tener todos los requisitos al
principio.
 Si se han cometido errores en una fase es
difícil volver atrás.
 No se tiene el producto hasta el final
 Si se comete un error en la fase de análisis no
lo descubrimos hasta la entrega, gasto inútil de
recursos.
DESVENTAJAS
 El cliente no verá resultados hasta el final,
con lo que puede impacientarse .
 No se tienen indicadores fiables del
progreso del trabajo
 Es comparativamente más lento que los
demás y el coste es mayor también.
Tipos de proyectos para los
que es adecuado
 Aquellos con todas las
especificaciones desde el principio
(reingeniería).
 Desarrollo de un tipo de producto que
no es novedoso.
 Proyectos complejos que se
entienden bien desde el principio.
VARIACIONES DEL MODELO
EN CASCADA
CICLO DE VIDA EN V
Propuesto por Alan Davis, tiene las mismas
fases que el cascada pero se considera el nivel
de abstracción de cada una. Una fase además
de utilizarse como entrada para la siguiente,
sirve para validar o verificar otras fases
posteriores.
Ciclo de vida en V
VARIACIONES DEL MODELO
EN CASCADA
 CICLO DE VIDA TIPO SASHIMI
Se permite un solapamiento entre fases. Por
ejemplo, sin tener terminado del todo el
diseño se comienza a implementar. Una
ventaja es que no necesita generar tanta
documentación debido a la continuidad del
mismo personal entre fases.
DESVENTAJAS
CICLO DE VIDA TIPO SASHIMI
 Más difícil controlar el progreso del
proyecto debido a que los finales de fase
ya no son un punto de referencia claro.
 Al hacer cosas en paralelo si hay
problemas de comunicación pueden surgir
inconsistencias
ESTRUCTURA
 Ciclo de vida tipo sashimi
ESTRUCTURA
CICLO DE VIDA TIPO SASHIMI
La fase de ``concepto'' consiste en definir los
objetivos del proyecto, beneficios, tipo de
tecnología. El diseño arquitectónico es el de
alto nivel, el detallado el de bajo nivel.
VARIACIONES DEL MODELO
EN CASCADA
 CICLO DE VIDA EN CASCADA CON
SUBPROYECTOS
Al realizar el diseño arquitectónico, el sistema se
divide en varios subsistemas independientes
entre sí, estos se pueden desarrollar por separado
y en consecuencia en paralelo con los demás.
Cada uno tendrá seguramente fechas de
terminación distintas. Una vez terminados todos
se integran y se prueba el sistema en conjunto. La
ventaja es tener a más gente trabajando en
paralelo de forma eficiente. El riesgo es que
existan interdependencias entre los subproyectos
VARIACIONES DEL MODELO
EN CASCADA
 CICLO DE VIDA EN CASCADA
INCREMENTAL
Se va creando el sistema añadiendo pequeñas
funcionalidades. Cada uno de los pequeños
incrementos es parecido a lo que ocurre dentro de
la fase de mantenimiento. La ventaja es que no es
necesario tener todos los requisitos en un
principio. El inconveniente es que los errores en la
detección de requisitos se encuentran tarde.
ESTRUCTURA
 Ciclo de vida
en cascada
incremental
VARIACIONES DEL MODELO
EN CASCADA
 CICLO DE VIDA EN CASCADA CON
REDUCCIÓN DE RIESGOS
Uno de los problemas del ciclo de vida en
cascada es que si se entienden mal los
requisitos esto sólo se descubrirá cuando
se entregue el producto. Para evitar este
problema se puede hacer un desarrollo
iterativo durante las fases de análisis y
diseño global
DESARROLLO
CICLO DE VIDA EN CASCADA CON
REDUCCIÓN DE RIESGOS
 Preguntar al usuario.
 Hacer diseño global que se desprende del
punto 1.
 Hacer un prototipo de interfaz de usuario,
entrevistas con los usuarios, etc y volver
con ello al punto 1 para identificar más
requisitos o corregir malentendidos.
 El resto es igual al ciclo de vida en
cascada.
DESARROLLO ITERATIVO
INCREMENTAL
Forma de reducir la repetición del trabajo
en el proceso de desarrollo y dar
oportunidad de retrasar la toma de
decisiones en los requisitos hasta adquirir
experiencia con el sistema.
Es una combinación del Modelo de
Cascada y Modelo Evolutivo.
DESARROLLO ITERATIVO
INCREMENTAL
Bajo este modelo se entrega software “por
partes funcionales más pequeñas” , pero
reutilizables, llamadas incrementos. Cada
incremento se construye sobre aquel que ya
fue entregado.
DESARROLLO ITERATIVO
INCREMENTAL
Este es un modelo del tipo evolutivo, donde se
permiten y esperan probables cambios en los
requisitos en tiempo de desarrollo; se admite
margen para que el software pueda evolucionar.
Aplicable cuando los requisitos son
medianamente bien conocidos pero no son
completamente estáticos y definidos.
DESARROLLO ITERATIVO
INCREMENTAL
La Descripción del Sistema es esencial
para especificar y confeccionar los
distintos incrementos hasta llegar al
Producto global y final. Las actividades
concurrentes (Especificación, Desarrollo
y Validación) sintetizan el desarrollo
pormenorizado de los incrementos, que
se hará posteriormente.
DESARROLLO ITERATIVO
INCREMENTAL
Durante el desarrollo de cada
incremento se puede utilizar el modelo
de cascada o evolutivo, dependiendo
del conocimiento que se tenga sobre
los requisitos a implementar.
VENTAJAS
 No se espera hasta el fin del desarrollo para
utilizar el sistema.
 Se pueden aclarar requisitos conforme se
entrega el sistema.
 Se disminuye el riesgo de fracaso de todo el
proyecto, ya que se puede distribuir en cada
incremento.
 Las partes más importantes del sistema son
entregadas primero, por lo cual se realizan más
pruebas en estos módulos y se disminuye el
riesgo de fallos.
DESVENTAJAS
 Cada incremento debe ser pequeño para
limitar el riesgo (menos de 20.000 líneas).
 Cada incremento debe aumentar la
funcionalidad.
 Es difícil establecer las correspondencias
de los requisitos contra los incrementos.
 Es difícil detectar las unidades o servicios
genéricos para todo el sistema.

Más contenido relacionado

La actualidad más candente

Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyecto
Johita Guerrero
 
Tabla comparativa- metodologías de desarrollo
Tabla comparativa-  metodologías de desarrolloTabla comparativa-  metodologías de desarrollo
Tabla comparativa- metodologías de desarrollo
itsarellano
 
Modelos de Ciclo de Vida del Software [Ventajas y Desventajas]
Modelos de Ciclo de Vida del Software [Ventajas y Desventajas]Modelos de Ciclo de Vida del Software [Ventajas y Desventajas]
Modelos de Ciclo de Vida del Software [Ventajas y Desventajas]
Cloud Rodriguez
 
Modelos para el desarrollo de software V3
Modelos para el desarrollo de software V3Modelos para el desarrollo de software V3
Modelos para el desarrollo de software V3
Marco Guerrero
 
1. ciclo de_vida_de_software
1. ciclo de_vida_de_software1. ciclo de_vida_de_software
1. ciclo de_vida_de_software
Miguel Castro
 
Ciclo de vida del software
Ciclo de vida del softwareCiclo de vida del software
Ciclo de vida del software
arealisherrera
 
Modelo De Desarrollo Evolutivo
Modelo De Desarrollo EvolutivoModelo De Desarrollo Evolutivo
Modelo De Desarrollo Evolutivo
camilosena89
 
Seleccion de tecnicas de ingenieria de software
Seleccion de tecnicas de ingenieria de softwareSeleccion de tecnicas de ingenieria de software
Seleccion de tecnicas de ingenieria de software
Ingris Argueta
 

La actualidad más candente (20)

Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyecto
 
Tabla comparativa- metodologías de desarrollo
Tabla comparativa-  metodologías de desarrolloTabla comparativa-  metodologías de desarrollo
Tabla comparativa- metodologías de desarrollo
 
Modelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiralModelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiral
 
Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de software
 
Modelos de Ciclo de Vida del Software [Ventajas y Desventajas]
Modelos de Ciclo de Vida del Software [Ventajas y Desventajas]Modelos de Ciclo de Vida del Software [Ventajas y Desventajas]
Modelos de Ciclo de Vida del Software [Ventajas y Desventajas]
 
Modelos de software ventajas y desventajas
Modelos de software ventajas y desventajasModelos de software ventajas y desventajas
Modelos de software ventajas y desventajas
 
Tipos de ciclo de vida
Tipos de ciclo de vidaTipos de ciclo de vida
Tipos de ciclo de vida
 
Modelos para el desarrollo de software V3
Modelos para el desarrollo de software V3Modelos para el desarrollo de software V3
Modelos para el desarrollo de software V3
 
1. ciclo de_vida_de_software
1. ciclo de_vida_de_software1. ciclo de_vida_de_software
1. ciclo de_vida_de_software
 
Metodologias todas
Metodologias todasMetodologias todas
Metodologias todas
 
Ciclo de vida del software
Ciclo de vida del softwareCiclo de vida del software
Ciclo de vida del software
 
Ciclo de vida_clasicos_y_paradigma_tradicional_de
Ciclo de vida_clasicos_y_paradigma_tradicional_deCiclo de vida_clasicos_y_paradigma_tradicional_de
Ciclo de vida_clasicos_y_paradigma_tradicional_de
 
Presentacion Ciclo de vida- Ingenieria del software
Presentacion Ciclo de vida- Ingenieria del softwarePresentacion Ciclo de vida- Ingenieria del software
Presentacion Ciclo de vida- Ingenieria del software
 
Modelo De Desarrollo Evolutivo
Modelo De Desarrollo EvolutivoModelo De Desarrollo Evolutivo
Modelo De Desarrollo Evolutivo
 
Ingeniería de Software
Ingeniería de Software Ingeniería de Software
Ingeniería de Software
 
Modelos de desarrollo rápido de software
Modelos de desarrollo rápido de softwareModelos de desarrollo rápido de software
Modelos de desarrollo rápido de software
 
Seleccion de tecnicas de ingenieria de software
Seleccion de tecnicas de ingenieria de softwareSeleccion de tecnicas de ingenieria de software
Seleccion de tecnicas de ingenieria de software
 
Modelos de Desarrollo de Software - INF162 - 2017
Modelos de Desarrollo de Software - INF162 - 2017Modelos de Desarrollo de Software - INF162 - 2017
Modelos de Desarrollo de Software - INF162 - 2017
 
Tipos de ciclos de vida
Tipos de ciclos de vidaTipos de ciclos de vida
Tipos de ciclos de vida
 
Metodologías emergentes
Metodologías emergentesMetodologías emergentes
Metodologías emergentes
 

Similar a Ciclos de-vida-proceso-de-desarrollo-del-software

Tiposdeciclosdevida 110822211401-phpapp01
Tiposdeciclosdevida 110822211401-phpapp01Tiposdeciclosdevida 110822211401-phpapp01
Tiposdeciclosdevida 110822211401-phpapp01
Ralph Ralph
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiral
juanksi28
 
Investigacion de modelos
Investigacion de modelosInvestigacion de modelos
Investigacion de modelos
emilii17061991
 
Modelos de-desarrollo-del-software1
Modelos de-desarrollo-del-software1Modelos de-desarrollo-del-software1
Modelos de-desarrollo-del-software1
104573
 
Actividad 18
Actividad 18Actividad 18
Actividad 18
maryfer97
 
Modelos del ciclo de vida
Modelos del ciclo de vidaModelos del ciclo de vida
Modelos del ciclo de vida
Deguerrerouno
 
Modelos del ciclo de vida
Modelos del ciclo de vidaModelos del ciclo de vida
Modelos del ciclo de vida
Deguerrerouno
 
03 unidad i modelos de ing soft
03 unidad i   modelos de ing soft03 unidad i   modelos de ing soft
03 unidad i modelos de ing soft
victdiazm
 

Similar a Ciclos de-vida-proceso-de-desarrollo-del-software (20)

Presentacion modelo casacada_ modelo_v
Presentacion modelo casacada_ modelo_vPresentacion modelo casacada_ modelo_v
Presentacion modelo casacada_ modelo_v
 
Ciclo de vida de un sistema de información
Ciclo de vida de un sistema de información Ciclo de vida de un sistema de información
Ciclo de vida de un sistema de información
 
Tiposdeciclosdevida 110822211401-phpapp01
Tiposdeciclosdevida 110822211401-phpapp01Tiposdeciclosdevida 110822211401-phpapp01
Tiposdeciclosdevida 110822211401-phpapp01
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiral
 
Modelos de Ing de soft
Modelos de Ing de softModelos de Ing de soft
Modelos de Ing de soft
 
Modelos de software
Modelos de softwareModelos de software
Modelos de software
 
Modelos de Ciclos de Vida
Modelos de Ciclos de VidaModelos de Ciclos de Vida
Modelos de Ciclos de Vida
 
Investigacion de modelos
Investigacion de modelosInvestigacion de modelos
Investigacion de modelos
 
Investigacion de modelos
Investigacion de modelosInvestigacion de modelos
Investigacion de modelos
 
Modelo de desarrollo de software
Modelo de desarrollo de softwareModelo de desarrollo de software
Modelo de desarrollo de software
 
Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de software
 
Modelos de-desarrollo-del-software1
Modelos de-desarrollo-del-software1Modelos de-desarrollo-del-software1
Modelos de-desarrollo-del-software1
 
Ciclo devida
Ciclo devidaCiclo devida
Ciclo devida
 
Actividad 18
Actividad 18Actividad 18
Actividad 18
 
Modelo de desarrollo del software
Modelo de desarrollo del softwareModelo de desarrollo del software
Modelo de desarrollo del software
 
Modelos de software
Modelos  de  softwareModelos  de  software
Modelos de software
 
Modelos del ciclo de vida
Modelos del ciclo de vidaModelos del ciclo de vida
Modelos del ciclo de vida
 
Modelos del ciclo de vida
Modelos del ciclo de vidaModelos del ciclo de vida
Modelos del ciclo de vida
 
03 unidad i modelos de ing soft
03 unidad i   modelos de ing soft03 unidad i   modelos de ing soft
03 unidad i modelos de ing soft
 
cuadro-modelos-de-ciclos-de-vida-del-software.docx
cuadro-modelos-de-ciclos-de-vida-del-software.docxcuadro-modelos-de-ciclos-de-vida-del-software.docx
cuadro-modelos-de-ciclos-de-vida-del-software.docx
 

Más de UCC

Más de UCC (9)

UML
UMLUML
UML
 
Manual de fracciones parciales
Manual de fracciones parcialesManual de fracciones parciales
Manual de fracciones parciales
 
Sustitucion trigonometrica solucionados
Sustitucion trigonometrica solucionadosSustitucion trigonometrica solucionados
Sustitucion trigonometrica solucionados
 
Método de integrales trigonométrica
Método de integrales trigonométricaMétodo de integrales trigonométrica
Método de integrales trigonométrica
 
Metodos integración
Metodos integraciónMetodos integración
Metodos integración
 
Teoria conceptos de probabilidad
Teoria conceptos de probabilidadTeoria conceptos de probabilidad
Teoria conceptos de probabilidad
 
Geometria analitica charles_h_lehmann
Geometria analitica charles_h_lehmannGeometria analitica charles_h_lehmann
Geometria analitica charles_h_lehmann
 
Convocatoria vi encuentro_local_semilleros_investigaciã²n_2013
Convocatoria vi encuentro_local_semilleros_investigaciã²n_2013Convocatoria vi encuentro_local_semilleros_investigaciã²n_2013
Convocatoria vi encuentro_local_semilleros_investigaciã²n_2013
 
Comobuscar gooogle
Comobuscar gooogleComobuscar gooogle
Comobuscar gooogle
 

Último

Último (10)

Virus informático (tipos y opciones para prevenir)
Virus informático (tipos y opciones para prevenir)Virus informático (tipos y opciones para prevenir)
Virus informático (tipos y opciones para prevenir)
 
Documento colaborativo. Solución del caso GA1-240201526-AA6-EV01.pdf
Documento colaborativo. Solución del caso GA1-240201526-AA6-EV01.pdfDocumento colaborativo. Solución del caso GA1-240201526-AA6-EV01.pdf
Documento colaborativo. Solución del caso GA1-240201526-AA6-EV01.pdf
 
trabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docxtrabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docx
 
infografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de softwareinfografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de software
 
MODULO BASICO DE WORD - I CICLO.DOC.DOC.
MODULO BASICO DE WORD - I CICLO.DOC.DOC.MODULO BASICO DE WORD - I CICLO.DOC.DOC.
MODULO BASICO DE WORD - I CICLO.DOC.DOC.
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
 
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA  DE TRABAJO DE CREACION DE TABLAS EN WORDFICHA  DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
 
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
 
Los desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMsLos desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMs
 

Ciclos de-vida-proceso-de-desarrollo-del-software

  • 1. EL PROCESO DE DESARROLLO DEL SOFTWARE No existe un proceso de software universal que sea efectivo para todos los contextos de proyectos de desarrollo.
  • 2. ACTIVIDADES FUNDAMENTALES DE TODOS LOS PROCESO DE SOFTWARE  Especificación de software  Diseño e Implementación  Validación  Evolución
  • 3. ALGUNOS MODELOS DE PROCESO DE SOFTWARE  Codificar y corregir  Modelo en cascada  Desarrollo evolutivo  Desarrollo formal de sistemas  Desarrollo basado en reutilización  Desarrollo incremental  Desarrollo en espiral
  • 4. CODIFICAR Y CORREGIR (CODE-AND-FIX) ETAPAS  Codificar parte del software  Corregir errores, agregar funcionalidad o nuevos elementos.
  • 5. UTILIZACIÓN  Desarrollo de software tarea unipersonal.  El problema es claramente comprendido  El programador es el usuario de la aplicación.  La aplicación es simple según estándares actuales
  • 6. DESVENTAJAS  No se planifica ni se controla.  Después de una serie de cambios:  La estructura del código se hace más y más complicada  Los cambios siguientes son más y más difíciles.  Los resultados son menos confiables.
  • 7. DESVENTAJAS  El software no satisface las necesidades ni las expectativas del cliente.  La calidad no es adecuada.  Productos terminados fuera de plazo y presupuesto.  Cambios estructurales del software son casi imposibles.
  • 8. CASCADA Se popularizó en la década de los 70 y guía la mayor parte de la práctica actual. El proceso es una “cascada” de fases, donde el producto de una fase es la entrada de la siguiente. Cada fase se compone de una serie de actividades que deben realizarse en paralelo.
  • 9. DESCRIPCIÓN Este modelo admite hacer iteraciones, durante las modificaciones en el mantenimiento se puede ver por ejemplo la necesidad de cambiar algo en el diseño, lo cual significa que se harán los cambios necesarios en la codificación y se tendrán que realizar de nuevo las pruebas, si se tiene que volver a una de las etapas anteriores al mantenimiento hay que recorrer de nuevo el resto de las etapas.
  • 10. FASES MODELO CASCADA Cada fase tiene como resultado documentos que deben ser aprobados por el usuario.
  • 11. Una fase no comienza hasta que termine la fase anterior y generalmente se incluye la corrección de los problemas encontrados en fases previas. En la práctica, este modelo no es lineal, e involucra varias iteraciones e interacción entre las distintas fases de desarrollo.
  • 12. VENTAJAS  La planificación es sencilla.  La calidad del producto resultante es alta.  Permite trabajar con personal poco cualificado.  Con este modelo se tiene un seguimiento de todas las fases del proyecto y de su cumplimiento.
  • 13. DESVENTAJAS  Necesidad de tener todos los requisitos al principio.  Si se han cometido errores en una fase es difícil volver atrás.  No se tiene el producto hasta el final  Si se comete un error en la fase de análisis no lo descubrimos hasta la entrega, gasto inútil de recursos.
  • 14. DESVENTAJAS  El cliente no verá resultados hasta el final, con lo que puede impacientarse .  No se tienen indicadores fiables del progreso del trabajo  Es comparativamente más lento que los demás y el coste es mayor también.
  • 15. Tipos de proyectos para los que es adecuado  Aquellos con todas las especificaciones desde el principio (reingeniería).  Desarrollo de un tipo de producto que no es novedoso.  Proyectos complejos que se entienden bien desde el principio.
  • 16. VARIACIONES DEL MODELO EN CASCADA CICLO DE VIDA EN V Propuesto por Alan Davis, tiene las mismas fases que el cascada pero se considera el nivel de abstracción de cada una. Una fase además de utilizarse como entrada para la siguiente, sirve para validar o verificar otras fases posteriores.
  • 18. VARIACIONES DEL MODELO EN CASCADA  CICLO DE VIDA TIPO SASHIMI Se permite un solapamiento entre fases. Por ejemplo, sin tener terminado del todo el diseño se comienza a implementar. Una ventaja es que no necesita generar tanta documentación debido a la continuidad del mismo personal entre fases.
  • 19. DESVENTAJAS CICLO DE VIDA TIPO SASHIMI  Más difícil controlar el progreso del proyecto debido a que los finales de fase ya no son un punto de referencia claro.  Al hacer cosas en paralelo si hay problemas de comunicación pueden surgir inconsistencias
  • 20. ESTRUCTURA  Ciclo de vida tipo sashimi
  • 21. ESTRUCTURA CICLO DE VIDA TIPO SASHIMI La fase de ``concepto'' consiste en definir los objetivos del proyecto, beneficios, tipo de tecnología. El diseño arquitectónico es el de alto nivel, el detallado el de bajo nivel.
  • 22. VARIACIONES DEL MODELO EN CASCADA  CICLO DE VIDA EN CASCADA CON SUBPROYECTOS Al realizar el diseño arquitectónico, el sistema se divide en varios subsistemas independientes entre sí, estos se pueden desarrollar por separado y en consecuencia en paralelo con los demás. Cada uno tendrá seguramente fechas de terminación distintas. Una vez terminados todos se integran y se prueba el sistema en conjunto. La ventaja es tener a más gente trabajando en paralelo de forma eficiente. El riesgo es que existan interdependencias entre los subproyectos
  • 23. VARIACIONES DEL MODELO EN CASCADA  CICLO DE VIDA EN CASCADA INCREMENTAL Se va creando el sistema añadiendo pequeñas funcionalidades. Cada uno de los pequeños incrementos es parecido a lo que ocurre dentro de la fase de mantenimiento. La ventaja es que no es necesario tener todos los requisitos en un principio. El inconveniente es que los errores en la detección de requisitos se encuentran tarde.
  • 24. ESTRUCTURA  Ciclo de vida en cascada incremental
  • 25. VARIACIONES DEL MODELO EN CASCADA  CICLO DE VIDA EN CASCADA CON REDUCCIÓN DE RIESGOS Uno de los problemas del ciclo de vida en cascada es que si se entienden mal los requisitos esto sólo se descubrirá cuando se entregue el producto. Para evitar este problema se puede hacer un desarrollo iterativo durante las fases de análisis y diseño global
  • 26. DESARROLLO CICLO DE VIDA EN CASCADA CON REDUCCIÓN DE RIESGOS  Preguntar al usuario.  Hacer diseño global que se desprende del punto 1.  Hacer un prototipo de interfaz de usuario, entrevistas con los usuarios, etc y volver con ello al punto 1 para identificar más requisitos o corregir malentendidos.  El resto es igual al ciclo de vida en cascada.
  • 27. DESARROLLO ITERATIVO INCREMENTAL Forma de reducir la repetición del trabajo en el proceso de desarrollo y dar oportunidad de retrasar la toma de decisiones en los requisitos hasta adquirir experiencia con el sistema. Es una combinación del Modelo de Cascada y Modelo Evolutivo.
  • 28. DESARROLLO ITERATIVO INCREMENTAL Bajo este modelo se entrega software “por partes funcionales más pequeñas” , pero reutilizables, llamadas incrementos. Cada incremento se construye sobre aquel que ya fue entregado.
  • 29. DESARROLLO ITERATIVO INCREMENTAL Este es un modelo del tipo evolutivo, donde se permiten y esperan probables cambios en los requisitos en tiempo de desarrollo; se admite margen para que el software pueda evolucionar. Aplicable cuando los requisitos son medianamente bien conocidos pero no son completamente estáticos y definidos.
  • 30. DESARROLLO ITERATIVO INCREMENTAL La Descripción del Sistema es esencial para especificar y confeccionar los distintos incrementos hasta llegar al Producto global y final. Las actividades concurrentes (Especificación, Desarrollo y Validación) sintetizan el desarrollo pormenorizado de los incrementos, que se hará posteriormente.
  • 31.
  • 32. DESARROLLO ITERATIVO INCREMENTAL Durante el desarrollo de cada incremento se puede utilizar el modelo de cascada o evolutivo, dependiendo del conocimiento que se tenga sobre los requisitos a implementar.
  • 33. VENTAJAS  No se espera hasta el fin del desarrollo para utilizar el sistema.  Se pueden aclarar requisitos conforme se entrega el sistema.  Se disminuye el riesgo de fracaso de todo el proyecto, ya que se puede distribuir en cada incremento.  Las partes más importantes del sistema son entregadas primero, por lo cual se realizan más pruebas en estos módulos y se disminuye el riesgo de fallos.
  • 34. DESVENTAJAS  Cada incremento debe ser pequeño para limitar el riesgo (menos de 20.000 líneas).  Cada incremento debe aumentar la funcionalidad.  Es difícil establecer las correspondencias de los requisitos contra los incrementos.  Es difícil detectar las unidades o servicios genéricos para todo el sistema.