Waterfall Model

Diagram of the Waterfall Model

Feasibility: Defining a preferred concept for the software product, and determining its life-cycle feasibility and superiority to alternative concepts.
Requirements: A complete, verified specification of the required functions, interfaces, and performance for the software product.
Product Design: A complete verified specification of the overall hardware-software architecture, control structure, and data structure for the product, along with such other necessary components as draft user's manuals and test plans.
Detailed Design: A complete verified specification of the control structure, data structure, interface relations, sizing, key algorithms, and assumptions of each program component.
Coding: A complete, verified set of program components.
Integration: A properly function software product composed of the software components.
Implementation: A fully functioning operational hardware-software system, including such objectives as program and data conversion, installation, and training.
Maintenance: A fully functioning update of the hardware-software system repeated for each update.
Phaseout: A clean transition of the functions performed by the product to its successors.

To Software Engineering Home Page
To Software Life Cycle Model Page

©1997 Dr. Jody Paul  -  jody@acm.org