Le modèle en cascade, ou « waterfall » en anglais, est une organisation des activités d'un projet sous forme de phases linéaires et séquentielles, où chaque phase correspond à une spécialisation des tâches et dépend des résultats de la phase précédente. Il comprend les phases d'exigences, de conception, de mise en œuvre et de mise en service. Le modèle en cascade est un cycle de vie de projet issu des industries manufacturières et du secteur de la construction, où une conception préalable est nécessaire, compte tenu des fortes contraintes matérielles et des coûts élevés afférents aux changements de la conception en cours de réalisation. Il est utilisé notamment dans les domaines de l'ingénierie et du développement de logiciels. La première présentation décrivant un modèle de phases pour le développement de logiciels, est celle de Herbert D. Benington au « Symposium sur les méthodes de programmation avancées pour les calculateurs numériques » le . L'article avait pour contexte le développement d'un système militaire appelé SAGE. Il décrivait un processus de développement avec une phase de planification en amont, plusieurs phases de spécifications, une phase de programmation (« codage »), plusieurs phases successives de tests, et une phase de validation finale. L'article fut republié en 1983 avec une préface de Benington qui précisait que la séparation en phases correspondait à une logique de spécialisation par métier, et qui soulignait qu'il avait omis dans les activités un prototype préalable à la réalisation du projet. La première description du modèle en cascade est souvent considérée comme étant celle de l'article de Winston W. Royce en 1970 . L'article fournit une représentation graphique de la cascade sans toutefois jamais utiliser le terme. Ironiquement, la publication de Royce était une critique des insuffisances du modèle. C'est ainsi que le terme s'est généralisé. La première citation avérée du terme « cascade » figure dans un article de 1976 de Bell et Thayer qui crédite Royce pour le terme.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (5)
CS-510: Topics in software security
Memory corruption and type safety flaws dominate the threat landscape. We will approach current research from three dimensions: sanitization (finding flaws through runtime monitors); fuzzing (testing
BIO-210: Applied software engineering for life sciences
We learn and apply software engineering principles to program projects in Python. Projects cover problems in life sciences, and will be developed over the course of the semester.
EE-445: Microwaves, the basics of wireless communications
This course is an introduction to microwaves and microwave passive circuits. A special attention is given to the introduction of the notion of distributed circuits and to the scattering matrix
Afficher plus
Séances de cours associées (28)
Fabrication additive : Mécanismes spatiaux
Explore la fabrication additive pour les mécanismes spatiaux, couvrant les technologies d'impression 3D, les matériaux, les règles de conception et les applications dans l'espace.
Lignes de transmission: Modèle incrémentiel
Couvre le modèle incrémental pour les lignes de transmission, y compris les lois de Kirchhoff et les calculs VSWR.
Processus de développement logiciel
Explore Scrum, le modèle en cascade, le travail d'équipe, les revues de code et la conception de logiciels asynchrones dans le développement de logiciels.
Afficher plus
Publications associées (37)

Advancing efficiency and reliability in thermal analysis of laser powder-bed fusion

Christian Leinenbach, Rafal Wróbel, Thomas Mayer

In laser based powder-bed fusion of metals (PBF-LB/M), parts are fabricated by melting layers of powder using a high-intensity laser beam. During this process, the material is exposed to rapid cooling rates and intense thermal gradients, which are the unde ...
2023

Safety climate in university laboratories. Part I: model development and practical application

Thierry Meyer, Anastasia Jung

Safety climate assessment has become a regular practice for most organisations. However, it is often limited to questionnaires, providing only qualitative information. The indicator-based approach takes precedence over decision-making, and practical risk a ...
2023

Working Space

Pascal Pierre Michon, Aleksis Dind

Regeneration of urban areas from neighborhoods in transition to innovative components. Research at the LAST aims to contribute to transitions towards sustainability in the built environment by integrating environmental, socio-cultural, and economic paramet ...
2023
Afficher plus
Concepts associés (20)
Software development process
In software engineering, a software development process is a process of planning and managing software development. It typically involves dividing software development work into smaller, parallel, or sequential steps or sub-processes to improve design and/or product management. It is also known as a software development life cycle (SDLC). The methodology may include the pre-definition of specific deliverables and artifacts that are created and completed by a project team to develop or maintain an application.
Méthode agile
vignette|Daily stand-up, rituel quotidien des méthodes agiles. En ingénierie logicielle, les mettent en avant la collaboration entre des équipes auto-organisées et pluridisciplinaires et leurs clients. Elles s'appuient sur l'utilisation d'un cadre méthodologique léger mais suffisant centré sur l'humain et la communication. Elles préconisent une planification adaptative, un développement évolutif, une livraison précoce et une amélioration continue, et elles encouragent des réponses flexibles au changement.
Test (informatique)
vignette|Une programmeuse écrivant du code Java avec JUnit. En informatique, un test désigne une procédure de vérification partielle d'un système. Son objectif principal est d'identifier un nombre maximal de comportements problématiques du logiciel. Il permet ainsi, dès lors que les problèmes identifiés seront corrigés, d'en augmenter la qualité. D'une manière plus générale, le test désigne toutes les activités qui consistent à rechercher des informations quant à la qualité du système afin de permettre la prise de décisions.
Afficher plus

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.