ウォーターフォール・モデルでは、開発プロセスをソフトウェア開発ライフサイクル(SDLC:software development lifecycle)などに沿って、「要求」「仕様」「分析」「設計」「プログラミング」「検査」「運用」といった形に分割する。そして例えば設計工程で設計書を作成し、その設計書に基づいてプログラミングを行うといった手順でプロジェクトを推進していく。成果物は各工程ごとに検証され、所定の手続きで承認されたものだけが次の工程へ進む。原則的にこの順序を飛び越したり、逆戻りしたりすることを許さないため、滝の水が流れ落ちる様子にたとえて、ウォーターフォール・モデルと呼ばれる。
ウォーターフォール・モデルの原型となったのは、1970年に発表されたウィンストン・W・ロイス(Winston W.Royce)の論文『Managing the Development of Large Software Systems』だとされる。ただし、この論文では文書化、レビューの重要性ともに、下流工程を予備的に行って上流工程へ戻る「フィードバックループ」が提唱されていた。また「ウォーターフォール」という語も使われていない。