Le modèle en cascade offre une structure hiérarchique claire pour les projets de développement dans laquelle les différentes phases du projet sont clairement délimitées. Étant donné que chaque phase se termine par une étape, le processus de développement peut être suivi facilement. Le point fort du modèle se trouve dans la documentation des étapes du processus. Les connaissances acquises sont consignées dans les documents d’exigences et de conception.
En théorie, le modèle en cascade doit créer les conditions pour une réalisation rapide et peu coûteuse des projets par une planification minutieusement élaborée au préalable. Toutefois, les avantages du modèle en cascade sont sujets à controverse dans la pratique. D’une part, les phases du projet sont rarement délimitées clairement dans le développement logiciel. Pour les projets logiciels complexes notamment, les développeurs sont souvent confrontés au fait que les différents composants d’une application se trouvent dans différentes phases de développement au même moment. D’autre part, le déroulement linéaire du modèle en cascade ne correspond souvent pas aux conditions réelles.
Le modèle en cascade ne prévoit pas à proprement parler des adaptations en cours de projet. Un projet de logiciel, dans lequel l’ensemble des détails du développement sont déjà définis au début du projet, peut toutefois uniquement aboutir lorsque beaucoup de temps et d’argent ont été investis dès le départ dans l’analyse et la conception. S’y ajoute le fait que les projets logiciels plus vastes s’étendent parfois sur plusieurs années et sans un ajustement régulier aux développements actuels, ils fourniraient des résultats déjà obsolètes lors de leur introduction.