IT業界には、さまざまな開発手法が存在しています。その中でもよく知られているのが、ウォーターフォール開発とアジャイル開発の2つでしょう。IT業界で働くエンジニアにとって、ウォーターフォール開発やアジャイル開発をしっかりと理解しておくことはとても重要です。しかし、エンジニアの中にはプロジェクトマネージャーが決定するような、こうした開発手法を理解しなければならないことに疑問を持つ人もいるかもしれません。確かに決定するのは自分ではないかもしれませんが、知っておいた方がいいこともあるのです。
まずウォーターフォール開発は、工程を一つ一つ段階的に区切り、その通りに開発を進めていく手法です。名称の通り滝をイメージするとわかりやすいですが、一つの工程を終えたら次の工程と順を追って進み、前の工程に戻ることはありません。また、始めにすべて決めてしまうため急な変更には対応しにくいですが、その分高品質なシステムを開発できます。急な変化が少なく、変更する必要性がない場合にはウォーターフォール開発が向いているといえるでしょう。
一方、アジャイル開発はウォーターフォール開発とは異なり、プロジェクト開始時に綿密な仕様の設定を行わず、仕様や機能ごとに開発していく手法です。開発スピードが早く、前の工程に戻って急な変更に対応できるため、開発スピードや柔軟性が求められる場合にはアジャイル開発が向いています。しかし、スケジュールの進捗がわかりにくく管理しにくい点は、アジャイル開発のデメリットとなります。