SDLC - Modèle en cascade

Le modèle de cascade a été le premier modèle de processus à être introduit. Il est également appelé unlinear-sequential life cycle model. Il est très simple à comprendre et à utiliser. Dans un modèle en cascade, chaque phase doit être terminée avant que la phase suivante puisse commencer et il n'y a pas de chevauchement dans les phases.

Le modèle Waterfall est la première approche SDLC utilisée pour le développement de logiciels.

Le modèle en cascade illustre le processus de développement logiciel dans un flux séquentiel linéaire. Cela signifie que toute phase du processus de développement ne commence que si la phase précédente est terminée. Dans ce modèle en cascade, les phases ne se chevauchent pas.

Modèle de cascade - Conception

L'approche en cascade a été le premier modèle SDLC à être largement utilisé en génie logiciel pour assurer le succès du projet. Dans l'approche «The Waterfall», l'ensemble du processus de développement logiciel est divisé en phases distinctes. Dans ce modèle en cascade, en général, le résultat d'une phase agit en tant qu'entrée pour la phase suivante de manière séquentielle.

L'illustration suivante est une représentation des différentes phases du modèle de cascade.

Les phases séquentielles du modèle Waterfall sont:

  • Requirement Gathering and analysis - Toutes les exigences possibles du système à développer sont capturées dans cette phase et documentées dans un document de spécification des exigences.

  • System Design- Les spécifications des exigences de la première phase sont étudiées dans cette phase et la conception du système est préparée. Cette conception de système aide à spécifier les exigences matérielles et système et aide à définir l'architecture globale du système.

  • Implementation- Avec les entrées de la conception du système, le système est d'abord développé dans de petits programmes appelés unités, qui sont intégrés dans la phase suivante. Chaque unité est développée et testée pour sa fonctionnalité, appelée test unitaire.

  • Integration and Testing- Toutes les unités développées dans la phase de mise en œuvre sont intégrées dans un système après le test de chaque unité. Après l'intégration, l'ensemble du système est testé pour détecter d'éventuels défauts et pannes.

  • Deployment of system- Une fois les tests fonctionnels et non fonctionnels effectués; le produit est déployé dans l'environnement client ou mis sur le marché.

  • Maintenance- Certains problèmes surviennent dans l'environnement client. Pour résoudre ces problèmes, des correctifs sont publiés. Aussi pour améliorer le produit, de meilleures versions sont publiées. La maintenance est effectuée pour fournir ces changements dans l'environnement client.

Toutes ces phases sont en cascade les unes aux autres dans lesquelles le progrès est considéré comme coulant régulièrement vers le bas (comme une cascade) à travers les phases. La phase suivante est lancée seulement après que l'ensemble défini d'objectifs a été atteint pour la phase précédente et elle est validée, donc le nom "Waterfall Model". Dans ce modèle, les phases ne se chevauchent pas.

Modèle de cascade - Application

Chaque logiciel développé est différent et nécessite une approche SDLC appropriée à suivre en fonction des facteurs internes et externes. Certaines situations où l'utilisation du modèle Waterfall est la plus appropriée sont:

  • Les exigences sont très bien documentées, claires et fixes.

  • La définition du produit est stable.

  • La technologie est comprise et n'est pas dynamique.

  • Il n'y a pas d'exigences ambiguës.

  • De nombreuses ressources avec l'expertise requise sont disponibles pour soutenir le produit.

  • Le projet est court.

Modèle de cascade - Avantages

Les avantages du développement en cascade sont qu'il permet une départementalisation et un contrôle. Un calendrier peut être établi avec des dates limites pour chaque étape de développement et un produit peut passer par les phases du modèle de processus de développement une par une.

Le développement passe du concept à la conception, à la mise en œuvre, aux tests, à l'installation, au dépannage et se termine par l'exploitation et la maintenance. Chaque phase de développement se déroule dans un ordre strict.

Certains des principaux avantages du modèle de cascade sont les suivants:

  • Simple et facile à comprendre et à utiliser

  • Facile à gérer grâce à la rigidité du modèle. Chaque phase a des livrables spécifiques et un processus d'examen.

  • Les phases sont traitées et terminées une par une.

  • Fonctionne bien pour les petits projets où les exigences sont très bien comprises.

  • Des étapes clairement définies.

  • Jalons bien compris.

  • Facile à organiser les tâches.

  • Le processus et les résultats sont bien documentés.

Modèle de cascade - Inconvénients

L'inconvénient du développement en cascade est qu'il ne permet pas beaucoup de réflexion ou de révision. Une fois qu'une application est en phase de test, il est très difficile de revenir en arrière et de changer quelque chose qui n'a pas été bien documenté ou réfléchi à l'étape du concept.

Les principaux inconvénients du modèle en cascade sont les suivants:

  • Aucun logiciel fonctionnel n'est produit jusqu'à la fin du cycle de vie.

  • Risque et incertitude élevés.

  • Pas un bon modèle pour les projets complexes et orientés objet.

  • Mauvais modèle pour les projets longs et en cours.

  • Ne convient pas aux projets où les exigences présentent un risque modéré à élevé de changement. Ainsi, le risque et l'incertitude sont élevés avec ce modèle de processus.

  • Il est difficile de mesurer les progrès par étapes.

  • Ne peut pas répondre aux exigences changeantes.

  • Ajuster la portée pendant le cycle de vie peut mettre fin à un projet.

  • L'intégration se fait comme un «big-bang» à la toute fin, ce qui ne permet pas d'identifier tôt les goulots d'étranglement ou les défis technologiques ou commerciaux.