A software life-cycle model that represents the successive phases as boxes and the onward progression of partially worked software as connecting arcs. Typically the first phase, whatever its name, is shown as the highest box, and the outputs of this and other phases appear to flow into the subsequent phases. Sometimes the flow is only shown from first phase toward the last phase and no iteration around phases is conceived. Other versions of the model show a reverse flow.
It is rare for the waterfall style of model to show the various activities that occur across all life-cycle phases. For example, certain important activities such as project management, quality management, and configuration control are omitted. A further weakness of many waterfall models is the treatment of maintenance. Maintenance is shown as a single box: this is the view of a system as perceived by the supplier, and particularly a supplier who has no responsibility for software maintenance. In reality each maintenance action will follow the full life cycle from feasibility through to implementation.
See also spiral model, V-model.