ウォーターフォール開発の概要とメリット・デメリット

ウォーターフォール開発とは、システムやプログラムの開発の工程をいくつかに分け、1つの工程を終わらせてから次の工程へと進めていく開発方式です。
IT業界で現在でも活用されているメジャーな開発方式で、要件定義、設計といった上流工程が終了してから、実装などの下流工程が行われます。

ウォーターフォールは英語で滝という意味ですが、上流工程から下流工程へと順番に工程を進めていくところが、上から下に水が流れていく滝と似ていることから、ウォーターフォール開発と名付けられました。
水の流れのように、後戻りをしないという点が、ウォーターフォール開発の特徴として挙げられます。

ウォーターフォール開発は、要件定義が終われば設計、設計が終われば実装といった感じに作業は進んでいき、問題が起こっても前の工程からやり直すことは、基本的に起こりません。後戻りを避けるため、各工程を終わらせる前に、問題がないか確認するためのレビューを行うのが一般的です。
レビューで問題点を発見できなかった場合、後々に問題が持ち上がってきて、大きなトラブルに発展しかねないのがウォーターフォール開発の難点です。

もっとも、それでも事前に立てた計画通りに工程を進めていけば、良質なシステムやプログラムが完成する可能性は高く、現在でもスタンダードな開発方法としてIT業界で存在感を発揮しています。
また、計画通りに工程を進めていくため、どのくらいの人員が必要なのか、事前に把握しやすいのもメリットです。別に、アジャイル開発という開発手法もあり、こちらの【ウォーターフォール開発 vs アジャイル開発】に違いがまとめられているので、特徴やメリットなどを比べてみてください。