Waterfall, también conocida como modelo en cascada, es una metodología que propone ordenar de manera secuencial y lineal la gestión de un proyecto. Se aplica, fundamentalmente, en el ámbito de la ingeniería de software.
El concepto de cascada hace referencia a que, una vez cumplida una fase del proyecto, se inicia la otra. Al inicio del proyecto, se recopila la información y los requisitos necesarios, acordados entre desarrolladores y clientes, es decir, de antemano se acuerda el trabajo a realizar.
Al trabajar con Waterfall, el éxito del proyecto se centra en llegar a tiempo a las fechas estimadas y con el presupuesto fijado al inicio.
<<< 8 preguntas para elegir un software para la gestión de proyectos de TI >>>
Historia de Waterfall
El modelo de cascada o Waterfall de gestión de proyectos fue creado por Winston Royce en 1970, postulado en su paper Managing the Development of Large Software Systems. En esas páginas, se proponía un enfoque secuencial para el desarrollo de software, donde las diferentes etapas eran seguidas en serie, una detrás de otra, Estas etapas eran: requerimientos, análisis, diseño, codificación, testing y operación.
En 1985, el modelo Waterfall se establece como estándar para el desarrollo de software en Estados Unidos, y a partir de allí surge su consolidación.
Hoy en día, es utilizado fundamentalmente en sectores IT (desarrollo de tecnologías de la información). Su aplicación consiste en una serie de pasos:
- Análisis: planificación, análisis y especificación de los requisitos.
- Diseño: diseño y especificación del sistema.
- Implementación: programación y pruebas unitarias.
- Verificación: integración de sistemas, pruebas de sistema y de integración.
- Mantenimiento: entrega, mantenimiento y mejora.
A continuación se desarrollarán cada una de ellas:
Análisis
En esta primera etapa, se evalúa la viabilidad del proyecto, que incluye costos, rentabilidad y qué tan factible de ser realizado es. Además, se definen los requisitos. La viabilidad define como resultado una serie de condiciones, un plan y una estimación financiera. Asimismo, puede incluir una propuesta para el cliente.
Diseño
La etapa de diseño de Waterfall involucra una solución en base a las estrategias y tareas provenientes de la fase de análisis. Se ejecuta el diseño (por ejemplo, de software) con su arquitectura correspondiente.
Implementación
En esta etapa, se incluye fundamentalmente la puesta en práctica, tal como la programación del software, la búsqueda de errores y pruebas que sean necesarias. Las pruebas son unitarias, puesto que se hacen por separado de los distintos componentes pra luego hacer una prueba general del producto final.
Verificación
En esta instancia, se incluye la integración de software en donde debe ir. Se analiza que cumple con las exigencias que se han definido en los pasos anteriores. Si las pruebas funcionan correctamente, ya está listo para su lanzamiento oficial.
Mantenimiento
Incluye la entrega, el mantenimiento y la mejora del software en cuestión. Se vela por su correcta aplicación y su uso eficaz.
<<< Gestión de proyectos: Principales problemas, desafíos y soluciones >>>
Ventajas de Waterfall
Trabajar con esta metodología es útil en tanto es la más apta para entornos industriales, donde el trabajo conlleva un ritmo estable, los requisitos son claros desde el inicio y no están previstos cambios que desarticulen el desarrollo.
Waterfall permite una estructura sencilla debido a las fases claramente definidas del proyecto, como así también una documentación a través de la demarcación de hitos destacados.
Al comienzo del proyecto, se estima la carga y los costos que el mismo demandará, por lo que se cuenta con esta información desde el principio. Asimismo, en Waterfall no es necesario que los clientes o partes interesadas participen de reuniones o revisiones, por lo que no hace falta que se involucren después de la fase de requisitos.
Otra ventaja se refiere a la sencillez para planificar y ejecutar las pruebas, ya que se pueden hacer al final de la fase de desarrollo.
Waterfall es ideal para aplicar en proyectos con alcance, tiempo y presupuestos fijos, como así también en proyectos definidos y simples. Asimismo, sirve para trabajar de forma conjunta con otras organizaciones.
El objetivo de esta metodología es hacer una ejecución rápida y rentable de los proyectos a través de una cuidadosa planificación.
<<< Principales obstáculos en la gestión de proyectos que deberías conocer >>>
Desventajas de Waterfall
Sin embargo, aplicar este enfoque metodológico tiene sus contras, en tanto es poco probable realizar ajustes a lo largo del proyecto, por lo que admite poca flexibilidad a la hora de querer modificar algo sobre la marcha. Una vez que se ha completado una fase, no se admiten cambios.
En Waterfall, para que el éxito sea garantizado, es necesario reunir todos los requisitos iniciales. Además, es difícil responder a algunas soluciones de problemas que puedan surgir debido a la rigidez del modelo.
Pese a todo, las desventajas son relativas, ya que dependen del proyecto en cuestión y sus necesidades.
<<< ¿Qué es la metodología Agile? >>>
Diferencias con otras metodologías
Waterfall, como se expresó anteriormente, se caracteriza por una rigidez frente a otras metodologías admiten mayor colaboración y permiten más cambios, como las metodologías ágiles. En Waterfall, es fundamental cumplir una fase para dar paso a otra, mientras en otras metodologías hay un feedback con el cliente y no necesariamente hay pasos tan estructurados.
Asimismo, en Waterfall las pruebas se hacen al finalizar el proyecto, en la fase anterior al lanzamiento, mientras que en las metodologías ágiles pueden realizarse en la ejecución misma del proyecto. Sin embargo, con Waterfall es más fácil establecer los costos de un proyecto y los roles están definidos.
Al trabajar con Waterfall se dirigen los esfuerzos a hacer una entrega exitosa de un proyecto, sin embargo, no tiene como premisa fundamental la satisfacción del cliente (como sí ocurre con las metodologías ágiles).
¿Nos dejas un comentario?