Modelos

Iterativo

¿Qué es?

El diseño iterativo se basa en un proceso continuo de experimentación, prueba y evaluación del producto, de manera que progresivamente se eliminan problemas y este se adecua a los usuarios que lo tienen que utilizar. Así, el proceso iterativo mejora el diseño a lo largo del tiempo.

El proceso iterativo parte de que revisar el trabajo hecho e iterar sobre las soluciones generadas es deseable e incluso inevitable para llegar a productos interesantes y adecuados. De este modo, el proceso iterativo trata de solucionar los problemas derivados de los procesos secuenciales o en cascada.

Una idea de fondo con la que se trabaja es que las necesidades de los usuarios, el problema y su solución se van entendiendo a lo largo del tiempo y, por lo tanto, no vale la pena invertir muchos recursos y esfuerzos para hacerlo en las primeras etapas del proceso de diseño.

Los procesos iterativos tratan de mejorar la solución del problema en cada iteración y, normalmente, cada nueva iteración viene determinada por los resultados obtenidos en la anterior. Se trata de procesos donde los procesos de análisis y síntesis y el prototipado y la evaluación son actividades esenciales e intrínsecas al propio proceso. Los procesos iterativos son especialmente adecuados para mejorar la calidad y funcionalidad de un producto.

El proceso iterativo también se utiliza en el desarrollo de software y, con pequeñas variaciones, recibe también los nombres de proceso en espiral y proceso incremental.

En los procesos iterativos la interacción del usuario con el producto adquiere especial importancia. Es mediante un proceso iterativo como la interacción se puede definir, investigar y evaluar de forma que se produzca una adecuación entre el producto y los usuarios.

Modelo

No hay un modelo de proceso estándar o comúnmente reconocido para el proceso iterativo, puesto que se trata más de una filosofía o punto de vista de trabajo que de un modelo de proceso por sí mismo. Así, las etapas de un proceso secuencial como el proceso en cascada se podrían llevar a cabo de manera iterativa.

Sí que hay consenso en que cualquier proceso iterativo, por su propia naturaleza, incorpora etapas o actividades, como por ejemplo:

  • análisis (que incluye exploración, investigación y definición),
  • prototipado y
  • evaluación.

Diagrama

Ventajas

Los procesos iterativos presentan muchas ventajas, entre las que destacan especialmente:

  • Identificar problemas pronto.
  • El hecho de poder hacer evolucionar las soluciones al problema que hay que resolver, mejorando aquellas que se identifiquen como viables y descartando aquellas que no responden a las necesidades de los usuarios.
  • Centrarse en las personas: son procesos que permiten resolver problemas fácilmente, especialmente aquellos relacionados con los requisitos y las necesidades de los usuarios.
  • Pasar más tiempo diseñando y menos documentando.

Inconvenientes

Al tratarse de una filosofía de trabajo, los procesos iterativos no presentan de manera directa inconvenientes específicos. No obstante, en proyectos reales, ligados a restricciones de tiempos y de presupuesto, es necesario definir en qué punto las soluciones están a punto y no se requiere refinar o iterar más.

Referencias

Iterative and incremental development: https://en.wikipedia.org/wiki/Iterative_and_incremental_development

Iterative design: https://en.wikipedia.org/wiki/Iterative_design