The Boehm-Waterfall software engineering methodology [#!waterfall!#] is one of the best known example of a software engineering methodology. The Boehm-Waterfall software engineering methodology is composed into the stages of system requirements, software requirements, preliminary and detailed design, implementation, testing, operations, and maintenance. At each stage is a validation step. In the Boehm-Waterfall software engineering methodology, as often quoted and viewed, the process flows from stage to stage like water over a fall. However, in the original description of the Boehm-Waterfall software engineering methodology, there is an interactive backstep between each stage. Thus the Boehm-Waterfall is a combination of a sequential methodology with an interactive backstep. However, in engineering practice, the term waterfall is used as a generic name to any sequential software engineering methodology.
See Figure 4.1 on page from [#!waterfall!#].