¿Cuál es la diferencia entre ciclo de vida iterativo e incremental?
Muchas veces puede confundirse el modelo iterativo, con el incremental. Esta confusión surge porque es muy común encontrar proyectos de metodología ágil que utilizan ambos marcos de desarrollo.
El ciclo de vida incremental, es una forma particular de enfocar el ciclo de vida iterativo. Al ser incremental, se refiere a que en cada ciclo que se realiza, se irá sumando una nueva función del producto, servicio o programa.
Es decir, en cada iteración se termina al cien por ciento, una nueva función del prototipo. No estará completo, ni será completamente funcional, hasta que se termine el último ciclo.
Por otra parte, el ciclo de vida iterativo, no necesariamente exige que cada iteración agregue una función completa. Un ciclo iterativo puede incluir, por ejemplo un nuevo prototipo en cada ciclo, algo que no es posible en el incremental.
Si, nuestro proyecto busca crear un robot impulsado por energía solar, así sería gestionado en cada modelo:
Iterativo: en cada ciclo, se presenta un prototipo funcional de robot, autónomo, que se revisará en cada ciclo, para reconstruirlo o modificarlo.
Incremental: El equipo va avanzando en ejecutar el robot, sin tener un prototipo funcional hasta el final del ciclo.
Ventajas de ciclo de vida Iterativo
- En el desarrollo de este modelo se da la retroalimentación muy temprano a los usuarios.
- Permite separar la complejidad del proyecto, gracias a su desarrollo por parte de cada iteración o bloque.
- El producto es consistente y puntual en el desarrollo.
- Los productos desarrollados con este modelo tienen una menor probabilidad de fallar.
- Se obtiene un aprendizaje en cada iteración que es aplicado en el desarrollo del producto y aumenta las experiencias para próximos proyectos.
Ventajas de ciclo de vida Incremental
- En este modelo los usuarios no tienen que esperar hasta que el sistema completo se entregue para hacer uso de él. El primer incremento cumple los requerimientos más importantes de tal forma que pueden utilizar el software al instante.
- Los usuarios pueden utilizar los incrementos iniciales como prototipos y obtener experiencia sobre los requerimientos de los incrementos posteriores del sistema.
- Existe muy pocas probabilidades de riesgo en el sistema. Aunque se pueden encontrar problemas en algunos incrementos, lo normal es que el sistema se entregue sin inconvenientes al usuario.
- Ya que los sistemas de más alta prioridad se entregan primero, y los incrementos posteriores se integran entre ellos, es muy probable que los sistemas más importantes sean a los que se les hagan más pruebas. Esto quiere decir que es menos probable que los usuarios encuentren fallas de funcionamiento del software en las partes más importantes del sistema.
Comentarios
Publicar un comentario