The Waterfall methodology (also known as Liner Sequential Life Cycle Model) indicates a traditional approach used to manage projects. It is based on the assumption that a software can be developed as a cascade sequence of distinct phases (requirements analysis, design, development, testing, deployment, maintenance), each of them well documented and in a predetermined sequence: each step begins after the previous one has ended. The adoption of this methodology presumes that the product is delivered to the client at the end of the development process.

What has not been defined during the requirements analysis generates project changes, which often lead to increased project costs and rework.




Process objectives

Requirements Analysis.

Creation of a specifications document (URS input) and feasibility analysis, considering all variables, constraints and limitations. At the end of this phase, a requirements understanding document (RUD) is available.


System Design.

System hardware requirements definition (data layers, programming languages, network infrastructure, etc.). This phase helps to define the overall architecture of the system, split in two additional steps:

High-level design, which is the first phase of the software design and architecture. It defines the modules functionalities and their correlations, the architecture diagram and the database tables. At the end of this phase, a high-level design document is available.

Low-level design, which consists in the design of effective software components. This defines each module previously described, the interface details, the error messages, the dependency issues and the inputs and outputs for each module.