SlideShare una empresa de Scribd logo
1 de 21
Modelos de desarrollo de
software
MODELO SECUENCIAL LINEAL
MODELO SECUENCIAL LINEAL
Este es también llamado "Modelo Clásico", "Modelo Tradicional" o "Modelo en
Cascada". Este es el más básico de todos los modelos, y sirve como bloque de
construcción para los demás modelos de ciclo de vida. La visión del modelo cascada
del desarrollo de software es muy simple; dice que el desarrollo de software puede ser a
través de una secuencia simple de fases. Cada fase tiene un conjunto de metas bien
definidas, y las actividades dentro de una fase contribuyen a la satisfacción de metas de
esa fase o quizás a una subsecuencia de metas de la fase. Las flechas muestran el flujo
de información entre las fases. La flecha de avance muestra el flujo normal. Las flechas
hacia atrás representan la retroalimentación.
MODELO SECUENCIAL LINEAL
MODELO SECUENCIAL LINEAL
Características:
● Planear un proyecto antes de embarcarse en él.
● Definir el comportamiento externo deseado del sistema antes de diseñar su
arquitectura interna.
● Documentar los resultados de cada actividad.
● Diseñar un sistema antes de codificarlo.
● Testear un sistema después de construirlo.
MODELO SECUENCIAL LINEAL
Ventaja: Una de las contribuciones más importantes del modelo cascada es para los
administradores, posibilitándoles avanzar en el desarrollo, aunque en una escala muy
bruta.
Desventajas:Los cambios introducidos durante el desarrollo pueden confundir al
equipo profesional en las etapas tempranas del proyecto. Si los cambios se producen en
etapa madura (codificación o prueba) pueden ser catastróficos para un proyecto
grande.No es frecuente que el cliente o usuario final explicite clara y completamente
los requisitos (etapa de inicio); y el modelo lineal lo requiere. La incertidumbre natural
en los comienzos es luego difícil de acomodar.El cliente debe tener paciencia ya que el
software no estará disponible hasta muy avanzado el proyecto. Un error detectado por
el cliente (en fase de operación) puede ser desastroso, implicando reinicio del proyecto
con altos costos.
MODELO DE CONSTRUCCIÓN DE PROTOTIPOS
El prototipado de requerimientos es la creación de una implementación parcial de un
sistema, para el propósito explícito de aprender sobre los requerimientos del sistema.
Un prototipo es construido de una manera rápida tal como sea posible. Esto es dado a
los usuarios, clientes o representantes de ellos, posibilitando que ellos experimenten
con el prototipo. Estos individuos luego proveen la retroalimentación sobre lo que a
ellos les gustó y no les gustó acerca del prototipo proporcionado, quienes capturan en
la documentación actual de la especificación de requerimientos la información
entregada por los usuarios para el desarrollo del sistema real. El prototipado puede ser
usado como parte de la fase de requerimientos (determinar requerimientos) o justo
antes de la fase de requerimientos (como predecesor de requerimientos). En otro caso,
el prototipado puede servir su papel inmediatamente antes de algún o todo el
desarrollo incremental en modelos incremental o evolutivo.
MODELO DE CONSTRUCCIÓN DE PROTOTIPOS
Desventajas:
● Cliente cree que es el sistema.
● Peligro de familiarización con malas elecciones iniciales (quick and dirty).
Crítica:
● Se debe usar cuando inicialmente no están claros los requerimientos. Para así
definir claramente de entrada las reglas con el cliente. <br />
MODELO DE CONSTRUCCIÓN DE PROTOTIPOS
MODELOS EVOLUTIVOS
Se adaptan más fácilmente a los cambios introducidos a lo largo del desarrollo.
Iterativos:
En cada iteración se obtienen versiones más completas del SW.
● MODELO INCREMENTAL
● MODELO EN ESPIRAL
● MODELO WINWIN
MODELO INCREMENTAL
Los riesgos asociados con el desarrollo de sistemas largos y complejos son enormes.
Una forma de reducir los riesgos es construir sólo una parte del sistema, reservando
otros aspectos para niveles posteriores. El desarrollo incremental es el proceso de
construcción siempre incrementando subconjuntos de requerimientos del sistema.
Típicamente, un documento de requerimientos es escrito al capturar todos los
requerimientos para el sistema completo. Note que el desarrollo incremental es 100%
compatible con el modelo cascada. El desarrollo incremental no demanda una forma
específica de observar el desarrollo de algún otro incremento. Así, el modelo cascada
puede ser usado para administrar cada esfuerzo de desarrollo, como se muestra en la
figura.
MODELO INCREMENTAL
El modelo de desarrollo incremental provee algunos beneficios significativos para los
proyectos: Construir un sistema pequeño es siempre menos riesgoso que construir un
sistema grande. Al ir desarrollando parte de las funcionalidades, es más fácil
determinar si los requerimientos planeados para los niveles subsiguientes son
correctos. Si un error importante es realizado, sólo la última iteración necesita ser
descartada. Reduciendo el tiempo de desarrollo de un sistema (en este caso en
incremento del sistema) decrecen las probabilidades que esos requerimientos de
usuarios puedan cambiar durante el desarrollo. Si un error importante es realizado, el
incremento previo puede ser usado. Los errores de desarrollo realizados en un
incremento, pueden ser arreglados antes del comienzo del próximo incremento.
MODELO INCREMENTAL
MODELO INCREMENTAL
Ventajas:
● El modelo proporciona todas las ventajas del modelo en cascada realimentado,
reduciendo sus desventajas sólo al ámbito de cada incremento.
Desventajas:
● El modelo Incremental no es recomendable para casos de sistemas de tiempo real,
de alto nivel de seguridad, de procesamiento distribuido, y/o de alto índice de
riesgos.
Critica: En este modelo se debe especificar con precisión todo lo que el sistema va a
hacer antes de desarrollarlo. Lo cual lo hace manejable y disminuiría los costos.
MODELO EN ESPIRAL
Este es un modelo de proceso de software evolutivo, el cual enlaza la naturaleza
iterativa de la construcción de prototipos, pero conservado aquellas propiedades del
modelo en cascada. El modelo en espiral fue desarrollado por Boehm, quien lo describe
así: El modelo de desarrollo en espiral es un generador de modelo de proceso guiado
por el riesgo que se emplea para conducir sistemas intensivos de ingeniería de software
concurrente y a la vez con muchos usuarios.
Características: Un enfoque cíclico para el crecimiento incremental del grado de
definición e implementación de un sistema, mientras que disminuye su grado de
riesgo. Un conjunto de puntos de fijación para asegurar el compromiso del usuario con
soluciones de sistema que sean factibles y mutuamente satisfactorias. El modelo espiral
no es una alternativa del modelo cascada, ellos son completamente compatibles.
MODELO EN ESPIRAL
Funcionamiento del modelo Espiral
En cada vuelta tomamos en cuenta:
● Los Objetivos: Que necesidad debe envolver el programa.
● Alternativas: Los varios métodos de alcanzar los objetivos de manera exitosa, a
través de diferentes puntos como son:
+ Características: experiencia del personal, exigencias a efectuar. <br />Formas de
gestión del programa.
+ Riesgo tomado con cada alternativa.
MODELO EN ESPIRAL
● Desarrollar y Verificar: Programar y probar el programa . Se planificaran los
siguientes pasos y se volverá a empezar la espiral. La espiral tiene una forma de
caracola y se dice que mantiene dos dimensiones la radial y la angular:
Angular=Avance del proyecto Software, dentro de un ciclo. Radial=Aumento del
coste del proyecto, ya que con cada nueva iteración se pasa más tiempo
desarrollando.
Este sistema es muy utilizado en proyectos largos como pueden ser la creación de un
Sistema Operativo. Y que necesitan constantes cambios. Al ser un modelo de Ciclo de
Vida orientado al riesgo se dice que uno de los aspectos fundamentales de su éxito
radica en que el equipo que lo aplique sea capaz de detectar y catalogar correctamente
dicho riesgo.
MODELO EN ESPIRAL
Desventajas:
● Requiere mucha experiencia y habilidad para la evaluación de los riesgos, lo cual
es requisito para el éxito del proyecto. Es difícil convencer a los grandes clientes
que se podrá controlar este enfoque evolutivo.
Critica: Este modelo es útil para grandes proyectos pero no ha sido utilizado tanto
como el lineal secuencial o el de prototipos. Tiene similitud con el modelo en cascada,
pero aquí lo enfoca en un sistema más real.
MODELO ESPIRAL
MODELO DE DESARROLLO CONCURRENTE
Como el modelo espiral, el modelo concurrente provee una meta-descripción del
proceso software. Mientras que la contribución primaria del modelo espiral es en
realidad que esas actividades del software ocurran repetidamente, la contribución del
modelo concurrente es su capacidad de describir las múltiples actividades del software
ocurriendo simultáneamente. Esto no sorprende a nadie que ha estado involucrado
con las diversas actividades que ocurren en algún tiempo del proceso de desarrollo de
software. Los requerimientos son usualmente "líneas de base", cuando una mayoría de
los requerimientos comienzan a ser bien entendidos, en este tiempo se dedica un
esfuerzo considerable al diseño. Sin embargo, una vez que comienza el diseño, cambios
a los requerimientos son comunes y frecuentes (después de todo, los problemas reales
cambian, y nuestro entendimiento de los problemas desarrollados también).
MODELO DE DESARROLLO CONCURRENTE
Es desaconsejado detener el diseño en este camino cuando los requerimientos
cambian; en su lugar, existe una necesidad de modificar y rehacer líneas de base de los
requerimientos mientras progresa el diseño. Por supuesto, dependiendo del impacto de
los cambios de los requerimientos el diseño puede no ser afectado, medianamente
afectado o se requerirá comenzar todo de nuevo. Durante el diseño de arquitectura, es
posible que algunos componentes comiencen a ser bien definidos antes que la
arquitectura completa sea estabilizada. En tales casos, puede ser posible comenzar el
diseño detallado en esos componentes estables. Similarmente, durante el diseño
detallado, puede ser posible proceder con la codificación y quizás regular testeando en
forma unitaria o realizando testeo de integración previo a llevar a cabo el diseño
detallado de todos los componentes.
MODELO DE DESARROLLO CONCURRENTE

Más contenido relacionado

La actualidad más candente

Modelo incremental
Modelo incrementalModelo incremental
Modelo incremental
Roxny Moreno
 
Ciclos de vida orientados a objetos
Ciclos de vida orientados a objetosCiclos de vida orientados a objetos
Ciclos de vida orientados a objetos
Jose Diaz Silva
 

La actualidad más candente (20)

Modelo incremental
Modelo incrementalModelo incremental
Modelo incremental
 
CUADRO COMPARATIVO DE LOS MODELOS DE CICLO DE VIDA DE SOFTWARE
CUADRO COMPARATIVO DE LOS MODELOS DE CICLO DE VIDA DE SOFTWARECUADRO COMPARATIVO DE LOS MODELOS DE CICLO DE VIDA DE SOFTWARE
CUADRO COMPARATIVO DE LOS MODELOS DE CICLO DE VIDA DE SOFTWARE
 
Modelo incremental
Modelo incrementalModelo incremental
Modelo incremental
 
3. modelos prescriptivos de proceso
3. modelos prescriptivos de proceso3. modelos prescriptivos de proceso
3. modelos prescriptivos de proceso
 
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software  Unidad 2 - Software Enginnering - Ian sommervilleProcesos de software  Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
 
Prototipos
PrototiposPrototipos
Prototipos
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1
 
Metodologias agiles
Metodologias agilesMetodologias agiles
Metodologias agiles
 
Modelo Descrptivos Del Proceso Del Sofware
Modelo Descrptivos  Del  Proceso Del SofwareModelo Descrptivos  Del  Proceso Del Sofware
Modelo Descrptivos Del Proceso Del Sofware
 
Modelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiralModelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiral
 
Incremental model
Incremental model Incremental model
Incremental model
 
Pruebas de software
Pruebas de softwarePruebas de software
Pruebas de software
 
Noções em teste de software e introdução a automação
Noções em teste de software e introdução a automaçãoNoções em teste de software e introdução a automação
Noções em teste de software e introdução a automação
 
Ciclos de vida orientados a objetos
Ciclos de vida orientados a objetosCiclos de vida orientados a objetos
Ciclos de vida orientados a objetos
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
 
Metodologías tradicionales: Desarrollo de Software
Metodologías tradicionales: Desarrollo de Software Metodologías tradicionales: Desarrollo de Software
Metodologías tradicionales: Desarrollo de Software
 
Spiral model
Spiral modelSpiral model
Spiral model
 
Prototyping model
Prototyping modelPrototyping model
Prototyping model
 
Metodologia clasica en cascada
Metodologia clasica en cascadaMetodologia clasica en cascada
Metodologia clasica en cascada
 
Modelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de SoftwareModelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de Software
 

Destacado

modelos del proceso del software
 modelos del proceso del software  modelos del proceso del software
modelos del proceso del software
Brihany Rossell
 
Modelo del Proceso Software
Modelo del Proceso SoftwareModelo del Proceso Software
Modelo del Proceso Software
STBG
 
Tabla comparativa- metodologías de desarrollo
Tabla comparativa-  metodologías de desarrolloTabla comparativa-  metodologías de desarrollo
Tabla comparativa- metodologías de desarrollo
itsarellano
 
Cuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_softwareCuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_software
Shaman King
 
Proceso, modelos y metodos de ingenieria de software
Proceso, modelos y metodos de ingenieria de softwareProceso, modelos y metodos de ingenieria de software
Proceso, modelos y metodos de ingenieria de software
sergio
 
Metodología xp
Metodología xpMetodología xp
Metodología xp
Piskamen
 
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
 
Cuadro comparativo de los modelos de proceso del software (1)
Cuadro comparativo  de los modelos de proceso del software (1)Cuadro comparativo  de los modelos de proceso del software (1)
Cuadro comparativo de los modelos de proceso del software (1)
Erik Emanuel Amador Saldaña
 
Metodologias de desarrollo
Metodologias de desarrolloMetodologias de desarrollo
Metodologias de desarrollo
Hermes Romero
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
draw507
 

Destacado (20)

Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de software
 
modelos del proceso del software
 modelos del proceso del software  modelos del proceso del software
modelos del proceso del software
 
Modelo de desarrollo de software
Modelo de desarrollo de softwareModelo de desarrollo de software
Modelo de desarrollo de software
 
Modelos de software ventajas y desventajas
Modelos de software ventajas y desventajasModelos de software ventajas y desventajas
Modelos de software ventajas y desventajas
 
Cuadro comparativo modelos para el desarrollo de software
Cuadro comparativo modelos para el desarrollo de softwareCuadro comparativo modelos para el desarrollo de software
Cuadro comparativo modelos para el desarrollo de software
 
Modelo del Proceso Software
Modelo del Proceso SoftwareModelo del Proceso Software
Modelo del Proceso Software
 
Tabla comparativa- metodologías de desarrollo
Tabla comparativa-  metodologías de desarrolloTabla comparativa-  metodologías de desarrollo
Tabla comparativa- metodologías de desarrollo
 
Cuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_softwareCuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_software
 
El Modelo Dra
El Modelo DraEl Modelo Dra
El Modelo Dra
 
Proceso, modelos y metodos de ingenieria de software
Proceso, modelos y metodos de ingenieria de softwareProceso, modelos y metodos de ingenieria de software
Proceso, modelos y metodos de ingenieria de software
 
Metodología xp
Metodología xpMetodología xp
Metodología xp
 
Modelos de desarrollo del software
Modelos de desarrollo del softwareModelos de desarrollo del software
Modelos de desarrollo del software
 
Modelos concurrentes
Modelos concurrentesModelos concurrentes
Modelos concurrentes
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyecto
 
Tipos de software y su desarrollo
Tipos de software y su desarrolloTipos de software y su desarrollo
Tipos de software y su desarrollo
 
Cuadro comparativo de los modelos de proceso del software (1)
Cuadro comparativo  de los modelos de proceso del software (1)Cuadro comparativo  de los modelos de proceso del software (1)
Cuadro comparativo de los modelos de proceso del software (1)
 
Modelos Del ciclo de vida del Software
Modelos Del ciclo de vida del SoftwareModelos Del ciclo de vida del Software
Modelos Del ciclo de vida del Software
 
Metodologias de desarrollo
Metodologias de desarrolloMetodologias de desarrollo
Metodologias de desarrollo
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Modelo de prototipo
Modelo de prototipoModelo de prototipo
Modelo de prototipo
 

Similar a Modelos de desarrollo de software

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
 
Ciclos de-vida-proceso-de-desarrollo-del-software
Ciclos de-vida-proceso-de-desarrollo-del-softwareCiclos de-vida-proceso-de-desarrollo-del-software
Ciclos de-vida-proceso-de-desarrollo-del-software
UCC
 
Actividad 18
Actividad 18Actividad 18
Actividad 18
maryfer97
 
Metodologias de desarrollo_de_software_v01
Metodologias de desarrollo_de_software_v01Metodologias de desarrollo_de_software_v01
Metodologias de desarrollo_de_software_v01
Saulo Aizprua
 
Modelos de-desarrollo-del-software1
Modelos de-desarrollo-del-software1Modelos de-desarrollo-del-software1
Modelos de-desarrollo-del-software1
104573
 

Similar a Modelos de desarrollo de software (20)

Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiral
 
CICLO DE VIDA DE UN SOFTWARE
CICLO DE  VIDA DE UN SOFTWARECICLO DE  VIDA DE UN SOFTWARE
CICLO DE VIDA DE UN SOFTWARE
 
Modelos de Ing de soft
Modelos de Ing de softModelos de Ing de soft
Modelos de Ing de soft
 
Presentacion modelo casacada_ modelo_v
Presentacion modelo casacada_ modelo_vPresentacion modelo casacada_ modelo_v
Presentacion modelo casacada_ modelo_v
 
Investigacion de modelos
Investigacion de modelosInvestigacion de modelos
Investigacion de modelos
 
Investigacion de modelos
Investigacion de modelosInvestigacion de modelos
Investigacion de modelos
 
el kap
el kapel kap
el kap
 
Modelos de software
Modelos de softwareModelos de software
Modelos de software
 
Modelos
ModelosModelos
Modelos
 
Ciclos de-vida-proceso-de-desarrollo-del-software
Ciclos de-vida-proceso-de-desarrollo-del-softwareCiclos de-vida-proceso-de-desarrollo-del-software
Ciclos de-vida-proceso-de-desarrollo-del-software
 
Ciclo de vida del Software
Ciclo de vida del SoftwareCiclo de vida del Software
Ciclo de vida del Software
 
Jhostin vasquez modelos de software
Jhostin vasquez   modelos de softwareJhostin vasquez   modelos de software
Jhostin vasquez modelos de software
 
Modelo espiral de boehm CALIDAD DE SOFTWARE
Modelo espiral de  boehm CALIDAD DE SOFTWAREModelo espiral de  boehm CALIDAD DE SOFTWARE
Modelo espiral de boehm CALIDAD DE SOFTWARE
 
Actividad 18
Actividad 18Actividad 18
Actividad 18
 
Modelos de sofware
Modelos  de sofwareModelos  de sofware
Modelos de sofware
 
Instituto tecnológico de tuxtepec
Instituto tecnológico de tuxtepecInstituto tecnológico de tuxtepec
Instituto tecnológico de tuxtepec
 
Metodologias de desarrollo_de_software_v01
Metodologias de desarrollo_de_software_v01Metodologias de desarrollo_de_software_v01
Metodologias de desarrollo_de_software_v01
 
Métodos de la ingeniería
Métodos de la ingenieríaMétodos de la ingeniería
Métodos de la ingeniería
 
Paradigmas
ParadigmasParadigmas
Paradigmas
 
Modelos de-desarrollo-del-software1
Modelos de-desarrollo-del-software1Modelos de-desarrollo-del-software1
Modelos de-desarrollo-del-software1
 

Modelos de desarrollo de software

  • 1. Modelos de desarrollo de software
  • 2. MODELO SECUENCIAL LINEAL MODELO SECUENCIAL LINEAL Este es también llamado "Modelo Clásico", "Modelo Tradicional" o "Modelo en Cascada". Este es el más básico de todos los modelos, y sirve como bloque de construcción para los demás modelos de ciclo de vida. La visión del modelo cascada del desarrollo de software es muy simple; dice que el desarrollo de software puede ser a través de una secuencia simple de fases. Cada fase tiene un conjunto de metas bien definidas, y las actividades dentro de una fase contribuyen a la satisfacción de metas de esa fase o quizás a una subsecuencia de metas de la fase. Las flechas muestran el flujo de información entre las fases. La flecha de avance muestra el flujo normal. Las flechas hacia atrás representan la retroalimentación.
  • 4. MODELO SECUENCIAL LINEAL Características: ● Planear un proyecto antes de embarcarse en él. ● Definir el comportamiento externo deseado del sistema antes de diseñar su arquitectura interna. ● Documentar los resultados de cada actividad. ● Diseñar un sistema antes de codificarlo. ● Testear un sistema después de construirlo.
  • 5. MODELO SECUENCIAL LINEAL Ventaja: Una de las contribuciones más importantes del modelo cascada es para los administradores, posibilitándoles avanzar en el desarrollo, aunque en una escala muy bruta. Desventajas:Los cambios introducidos durante el desarrollo pueden confundir al equipo profesional en las etapas tempranas del proyecto. Si los cambios se producen en etapa madura (codificación o prueba) pueden ser catastróficos para un proyecto grande.No es frecuente que el cliente o usuario final explicite clara y completamente los requisitos (etapa de inicio); y el modelo lineal lo requiere. La incertidumbre natural en los comienzos es luego difícil de acomodar.El cliente debe tener paciencia ya que el software no estará disponible hasta muy avanzado el proyecto. Un error detectado por el cliente (en fase de operación) puede ser desastroso, implicando reinicio del proyecto con altos costos.
  • 6. MODELO DE CONSTRUCCIÓN DE PROTOTIPOS El prototipado de requerimientos es la creación de una implementación parcial de un sistema, para el propósito explícito de aprender sobre los requerimientos del sistema. Un prototipo es construido de una manera rápida tal como sea posible. Esto es dado a los usuarios, clientes o representantes de ellos, posibilitando que ellos experimenten con el prototipo. Estos individuos luego proveen la retroalimentación sobre lo que a ellos les gustó y no les gustó acerca del prototipo proporcionado, quienes capturan en la documentación actual de la especificación de requerimientos la información entregada por los usuarios para el desarrollo del sistema real. El prototipado puede ser usado como parte de la fase de requerimientos (determinar requerimientos) o justo antes de la fase de requerimientos (como predecesor de requerimientos). En otro caso, el prototipado puede servir su papel inmediatamente antes de algún o todo el desarrollo incremental en modelos incremental o evolutivo.
  • 7. MODELO DE CONSTRUCCIÓN DE PROTOTIPOS Desventajas: ● Cliente cree que es el sistema. ● Peligro de familiarización con malas elecciones iniciales (quick and dirty). Crítica: ● Se debe usar cuando inicialmente no están claros los requerimientos. Para así definir claramente de entrada las reglas con el cliente. <br />
  • 8. MODELO DE CONSTRUCCIÓN DE PROTOTIPOS
  • 9. MODELOS EVOLUTIVOS Se adaptan más fácilmente a los cambios introducidos a lo largo del desarrollo. Iterativos: En cada iteración se obtienen versiones más completas del SW. ● MODELO INCREMENTAL ● MODELO EN ESPIRAL ● MODELO WINWIN
  • 10. MODELO INCREMENTAL Los riesgos asociados con el desarrollo de sistemas largos y complejos son enormes. Una forma de reducir los riesgos es construir sólo una parte del sistema, reservando otros aspectos para niveles posteriores. El desarrollo incremental es el proceso de construcción siempre incrementando subconjuntos de requerimientos del sistema. Típicamente, un documento de requerimientos es escrito al capturar todos los requerimientos para el sistema completo. Note que el desarrollo incremental es 100% compatible con el modelo cascada. El desarrollo incremental no demanda una forma específica de observar el desarrollo de algún otro incremento. Así, el modelo cascada puede ser usado para administrar cada esfuerzo de desarrollo, como se muestra en la figura.
  • 11. MODELO INCREMENTAL El modelo de desarrollo incremental provee algunos beneficios significativos para los proyectos: Construir un sistema pequeño es siempre menos riesgoso que construir un sistema grande. Al ir desarrollando parte de las funcionalidades, es más fácil determinar si los requerimientos planeados para los niveles subsiguientes son correctos. Si un error importante es realizado, sólo la última iteración necesita ser descartada. Reduciendo el tiempo de desarrollo de un sistema (en este caso en incremento del sistema) decrecen las probabilidades que esos requerimientos de usuarios puedan cambiar durante el desarrollo. Si un error importante es realizado, el incremento previo puede ser usado. Los errores de desarrollo realizados en un incremento, pueden ser arreglados antes del comienzo del próximo incremento.
  • 13. MODELO INCREMENTAL Ventajas: ● El modelo proporciona todas las ventajas del modelo en cascada realimentado, reduciendo sus desventajas sólo al ámbito de cada incremento. Desventajas: ● El modelo Incremental no es recomendable para casos de sistemas de tiempo real, de alto nivel de seguridad, de procesamiento distribuido, y/o de alto índice de riesgos. Critica: En este modelo se debe especificar con precisión todo lo que el sistema va a hacer antes de desarrollarlo. Lo cual lo hace manejable y disminuiría los costos.
  • 14. MODELO EN ESPIRAL Este es un modelo de proceso de software evolutivo, el cual enlaza la naturaleza iterativa de la construcción de prototipos, pero conservado aquellas propiedades del modelo en cascada. El modelo en espiral fue desarrollado por Boehm, quien lo describe así: El modelo de desarrollo en espiral es un generador de modelo de proceso guiado por el riesgo que se emplea para conducir sistemas intensivos de ingeniería de software concurrente y a la vez con muchos usuarios. Características: Un enfoque cíclico para el crecimiento incremental del grado de definición e implementación de un sistema, mientras que disminuye su grado de riesgo. Un conjunto de puntos de fijación para asegurar el compromiso del usuario con soluciones de sistema que sean factibles y mutuamente satisfactorias. El modelo espiral no es una alternativa del modelo cascada, ellos son completamente compatibles.
  • 15. MODELO EN ESPIRAL Funcionamiento del modelo Espiral En cada vuelta tomamos en cuenta: ● Los Objetivos: Que necesidad debe envolver el programa. ● Alternativas: Los varios métodos de alcanzar los objetivos de manera exitosa, a través de diferentes puntos como son: + Características: experiencia del personal, exigencias a efectuar. <br />Formas de gestión del programa. + Riesgo tomado con cada alternativa.
  • 16. MODELO EN ESPIRAL ● Desarrollar y Verificar: Programar y probar el programa . Se planificaran los siguientes pasos y se volverá a empezar la espiral. La espiral tiene una forma de caracola y se dice que mantiene dos dimensiones la radial y la angular: Angular=Avance del proyecto Software, dentro de un ciclo. Radial=Aumento del coste del proyecto, ya que con cada nueva iteración se pasa más tiempo desarrollando. Este sistema es muy utilizado en proyectos largos como pueden ser la creación de un Sistema Operativo. Y que necesitan constantes cambios. Al ser un modelo de Ciclo de Vida orientado al riesgo se dice que uno de los aspectos fundamentales de su éxito radica en que el equipo que lo aplique sea capaz de detectar y catalogar correctamente dicho riesgo.
  • 17. MODELO EN ESPIRAL Desventajas: ● Requiere mucha experiencia y habilidad para la evaluación de los riesgos, lo cual es requisito para el éxito del proyecto. Es difícil convencer a los grandes clientes que se podrá controlar este enfoque evolutivo. Critica: Este modelo es útil para grandes proyectos pero no ha sido utilizado tanto como el lineal secuencial o el de prototipos. Tiene similitud con el modelo en cascada, pero aquí lo enfoca en un sistema más real.
  • 19. MODELO DE DESARROLLO CONCURRENTE Como el modelo espiral, el modelo concurrente provee una meta-descripción del proceso software. Mientras que la contribución primaria del modelo espiral es en realidad que esas actividades del software ocurran repetidamente, la contribución del modelo concurrente es su capacidad de describir las múltiples actividades del software ocurriendo simultáneamente. Esto no sorprende a nadie que ha estado involucrado con las diversas actividades que ocurren en algún tiempo del proceso de desarrollo de software. Los requerimientos son usualmente "líneas de base", cuando una mayoría de los requerimientos comienzan a ser bien entendidos, en este tiempo se dedica un esfuerzo considerable al diseño. Sin embargo, una vez que comienza el diseño, cambios a los requerimientos son comunes y frecuentes (después de todo, los problemas reales cambian, y nuestro entendimiento de los problemas desarrollados también).
  • 20. MODELO DE DESARROLLO CONCURRENTE Es desaconsejado detener el diseño en este camino cuando los requerimientos cambian; en su lugar, existe una necesidad de modificar y rehacer líneas de base de los requerimientos mientras progresa el diseño. Por supuesto, dependiendo del impacto de los cambios de los requerimientos el diseño puede no ser afectado, medianamente afectado o se requerirá comenzar todo de nuevo. Durante el diseño de arquitectura, es posible que algunos componentes comiencen a ser bien definidos antes que la arquitectura completa sea estabilizada. En tales casos, puede ser posible comenzar el diseño detallado en esos componentes estables. Similarmente, durante el diseño detallado, puede ser posible proceder con la codificación y quizás regular testeando en forma unitaria o realizando testeo de integración previo a llevar a cabo el diseño detallado de todos los componentes.
  • 21. MODELO DE DESARROLLO CONCURRENTE