Esta metodología permite estructurar la organización de forma clara en aquellos proyectos de desarrollo en los que las diversas fases de proyecto se diferencian claramente entre sí. Como cada una de las fases concluye con un hito, el proceso de desarrollo es muy fácil de comprender. El punto clave del modelo reside en la documentación de todos y cada uno de los pasos de proceso. Los conocimientos adquiridos se registran en pliegos de requisitos o borradores preliminares.
En teoría, el desarrollo en cascada pretende crear los requisitos previos para una ejecución rápida y rentable de los proyectos a través de una cuidada planificación previa. Sin embargo, la utilización del modelo en la práctica es controvertida. Por una parte, en el desarrollo de software las fases de proyecto no suelen estar claramente diferenciadas entre sí. Es precisamente en los proyectos de software más complejos donde los desarrolladores se suelen enfrentar al hecho de que los diversos componentes de una misma aplicación se encuentran en diferentes fases de desarrollo al mismo tiempo. Por otra parte, la secuencia lineal del waterfall model no suele coincidir con la realidad.
En sentido estricto, el modelo en cascada no prevé la realización de ajustes a lo largo del proyecto. Sin embargo, un proyecto de software en el que todos los detalles del desarrollo se definieran al comienzo, solo podría concluir con éxito si desde el principio se invirtiera una gran cantidad de tiempo y dinero en análisis y diseño. A todo esto, se añade que los proyectos de software de más envergadura se suelen prolongar durante varios años y, de no adaptarse a los avances más actuales, obtendrían resultados que ya estarían obsoletos en el momento de su aplicación.