¿Cuál es la diferencia entre Waterfall y Incremental Model?

Los gerentes de proyecto han propuesto diferentes modelos para el desarrollo de software. La elección se realiza desde el modelo propuesto de acuerdo con los requisitos del software. Diferentes modelos propuestos que incluyen: modelo en cascada y modelo incremental. La causa principal por la cual la mayoría de los proyectos fallaron es el problema técnico

Cascada incluye los siguientes pasos: requisitos, diseño, implementación, pruebas e integración y mantenimiento. El modelo de cascada no se puede rastrear.

El modelo incremental consta de los siguientes pasos: Requisito, Especificación, Diseño arquitectónico, Implementación, Mantenimiento y retiro. Es una combinación de modelo constante e iterativo. Puede aceptar directamente el cambio. Fue propuesto por IEEE en 2003 debido a defectos en el modelo en cascada.

Diferencia entre cascada y modelo incremental – ResearchPedia.Info

Modelo de cascada

La metodología de cascada representa un flujo secuencial lineal de eventos. El proceso de desarrollo se mueve constantemente hacia abajo, paso a paso, completando cada etapa y avanzando a la siguiente. Las tareas se finalizan sin estar pendientes ya que los desarrolladores no pueden volver a la etapa anterior una vez que comienzan con la siguiente. Este es uno de los modelos más antiguos utilizados en el desarrollo de software.

Pros

  • El enfoque estructurado facilita el buen funcionamiento del proceso de desarrollo.
  • El método es fácil de explicar y los usuarios lo entienden sin dificultad.
  • Facilita la planificación y organización del proceso.
  • Las etapas bien definidas facilitan el trabajo.
  • Los entregables serán específicos.

Contras

  • Difícil volver a las etapas anteriores.
  • Caro, ya que puede llevar más tiempo.
  • No es muy flexible en el trabajo o puede conducir a un aumento en el costo.

Leer más: Metodologías de desarrollo de software

Modelo iterativo e incremental

Este modelo fue desarrollado para compensar los inconvenientes del modelo de cascada. Comienza con una planificación de las fases y tareas asociadas. Con interacciones cíclicas en el medio, el modelo de desarrollo termina con el despliegue de las características planificadas. En este modelo, los desarrolladores crean el sistema a través del proceso iterativo e incremental [repeticiones y en segmentos cortos], ayudando así a los desarrolladores a implementar las ideas recién aprendidas durante las primeras etapas de desarrollo.

Pros

  • Un valor comercial temprano en el proceso de desarrollo.
  • Recursos escasos utilizados de una mejor manera.
  • Las solicitudes de modificaciones se pueden implementar entre incrementos.
  • Enfoque proporcionado para el valor del cliente.
  • Detección temprana de problemas.

Contras

  • Se necesita una gran documentación.
  • Un conjunto particular del proceso definido y seguido.
  • Incrementos según función y características.
  • Se necesita más participación del cliente.
  • Separar funciones y características puede ser problemático.
  • La integración durante la iteración debe considerarse durante el desarrollo o, de lo contrario, volverse problemática.

La cascada, bien hecha, es incremental. (Mire el artículo original de Winston Royce). Encuentro los incrementos demasiado grandes para mis propósitos. El enfoque incremental cambia de manera significativa cuando reducimos los incrementos por debajo de un cierto tamaño, y luego tenemos algo como Agile.

Un modelo en cascada comienza con un conjunto detallado de requisitos para el proyecto, asume que esos requisitos son correctos e intenta cumplir todos esos requisitos en un solo proyecto general.

Un modelo incremental reconoce el nivel de incertidumbre en una situación y, en lugar de intentar desarrollar requisitos detallados para un proyecto, utiliza un enfoque incremental para definir y extrapolar aún más los requisitos a medida que el proyecto está en progreso en función de los comentarios de los clientes al final de cada incremento .

Un enfoque incremental es más efectivo cuando existe un nivel de incertidumbre asociado con la solución y / o la creatividad y la innovación en el desarrollo de la solución es más importante que la previsibilidad, la planificación y el control.

El modelo de cascada enfatiza la retroalimentación a la fase anterior. El modelo incremental es el modelo más antiguo (de la década de 1960) que enfatiza las fases casi autocontenidas. Se puede recomendar una combinación de ambos.