Ingeniería de software: Cuadro comparativo de ciclos de vida
Enviado por s7ein95 • 29 de Noviembre de 2015 • Síntesis • 600 Palabras (3 Páginas) • 375 Visitas
Integrantes:[pic 1]
Joaquín Martínez.
Jersy de Jebus Espinoza Pérez.
Alejandro Sánchez Queb.
Ingeniería de software: Cuadro comparativo de ciclos de vida
Un ciclo de vida es el conjunto de fases por las que pasa el sistema que se está desarrollando, desde que nace la idea inicial, hasta que el software es retirado o reemplazado.
Ciclos de vida | Ventajas | Desventajas |
Modelo en cascada: Enfoque metodológico que ordena rigurosamente las etapas del ciclo, de forma en que el inicio de cada etapa debe esperar a la finalización de la inmediata anterior. | *Para proyectos estables o “no cambiantes”. *Ventajoso para proyectos pequeños en donde los requisitos están bien entendidos. *Simple y fácil de usar. *Fácil de gestionar. *Las fases son procesadas y completadas de una vez. | *EL modelo en sí, es muy restrictivo y no permite movilizarse entre fases. *los resultados y/o mejoras no son visibles progresivamente. (El producto se ve cuando está finalizado). *Considerado pobre para proyectos complejos. |
Modelo en cascada (variante, modelo en v): Se desarrolló para terminar con algunos problemas que se detectaron utilizando el enfoque de cascada tradicional. | *Fácil de usar. *En cada una de las fases hay entregables específicos. *Tiene una alta oportunidad de éxito. *Suele funcionar bien para pequeños proyectos donde los requisitos son entendidos fácilmente. | *Es un modelo muy rígido. *Tiene poca flexibilidad y ajustar el alcance es difícil y caro. *El software se desarrolla durante la etapa de implementación, por lo que no se producen prototipos de software. |
Modelo iterativo: Consiste en la iteración de varios ciclos de vida en cascada. Al final de cada iteración se le entrega al cliente una versión mejorada. | *No hace falta que los requisitos estén totalmente definidos al inicio del desarrollo. *Se pueden gestionar mejor los riesgos y entregas. | *Al no ser necesarios los requisitos definidos desde el principio, pueden verse también como un inconveniente, ya que pueden surgir problemas con la arquitectura. |
Modelo de desarrollo Incremental: Se basa en la filosofía de construir incrementando las funcionalidades del programa. | *Se genera software operativo de forma rápida y en etapas tempranas del ciclo de vida del software. *Es un modelo flexible, por lo que se reduce coste. *Es más fácil de probar y depurar en una iteración más pequeña. *Es más fácil gestionar riesgos. *Cada iteración es un hito gestionado fácilmente. | *Se requiere de una experiencia importante para definir los incrementos y distribuir las tareas de forma proporcionada. *Cada fase de iteración es rígida y no se superponen con otras. *Pueden surgir problemas de arquitectura del sistema porque no todos los requisitos se han unido, ya que se supone que todos ellos se han definido al inicio. |
Modelo en espiral: Las actividades de este modelo se conforman en una espiral, cada bucle representa un conjunto de actividades. | *Reduce riesgos del proyecto. *Incorpora objetivos de calidad. *Integra el desarrollo con el mantenimiento. *Es posible tener en cuenta mejoras y nuevos requerimientos sin romper con el modelo. *No es rígido ni estático. *Se produce software en etapas tempranas. *Suele ser adecuado para proyectos largos de misión crítica. | *Es un modelo que genera trabajo adicional. *el análisis de riesgos requiere de un alto nivel de experiencia y cierta habilidad en los análisis de riesgos *No funciona bien para proyectos pequeños. |
Modelo de prototipos: se utiliza cuando el responsable del desarrollo del software puede no estar seguro de la eficiencia de un algoritmo, calidad de adaptación de un sistema operativo, etc. | *Ofrece visibilidad del producto desde el inicio del ciclo de vida. *Permite introducir cambios en las iteraciones siguientes del ciclo. *Este modelo reduce el riesgo de construir productos que no satisfagan las necesidades de los usuarios. | *Desarrollo lento. *Fuertes inversiones en un producto desechable (los prototipos se desechan) *El desarrollador puede caer en la tentación de ampliar el prototipo para construir el sistema final sin tener en cuenta la calidad y mantenimiento que tiene con el cliente. |
...