ウォーターフォール(Waterfall)型開発とは、まるで上流から下流に水が流れるが如く、上流から下流へ仕様書やプログラムなどの成果物を流していき、最終的なソフトウェア製品を完成させるという古典的な開発手法です。 長所としては 単純である ソフトウェア以外の産業においても同じ考え方が用いられることが多い 上流工程でミスってなければ良い成果を得やすい といったことが挙げられます。 ところが、この3つめの長所の前提となっている「上流工程でミスってなければ」の条件が極めて重くのしかかるのが現代のソフトウェア開発です。その原因としては 上流工程に携わる人間の技術力不足 上流工程に携わる人間の想像力不足 上流工程に携わる人間の権限不足(企業内で使う情報システムにほぼ限った話:理想的な情報システムを作ろうとしても他部署の了解が得られない、など) 上流工程での作業期間不足 下流工程に携わる人間が、上流工