今回はシステムまたはソフトウェア開発をする際に「どちらの手法を採用したほうがいいのか?」についてまとめています。
「なんとなく知ってはいるけど、違いは?って聞かれてもよくわからない。。。」
「今の自分たちに合う手法ってどっちなの?」
そんな疑問をこの記事では解決します。
次の表や図は、進め方の違いについてまとめたものです。
ここに細かな工程が加わることがありますが、ウォーターフォールとアジャイルの両方に、大きく分けると5つの工程が存在します。
「要件定義」→「設計」→「開発」→「テスト」→「リリース」
両者には、これらの工程の取り組み方に大きな違いがあります。
以上はあくまでこういった傾向がみられるだけですが、
アジャイルとウォーターフォールのイメージを表しています。
このようにまったく進め方が違います。
ユーザーのニーズに合わせて、仕様や機能を柔軟に変更したい場合はアジャイルが採用されることが多く見られます。
特に構想段階のプロダクトを開発する際に採用されるイメージがありますが、自社システムの開発にも採用されることもあります。
なぜなら社外の自社プロダクトのユーザーだけではなく、社内のシステム担当者からの「ここが使いづらい」「やっぱりこの機能も追加してほしい」などのニーズを反映させることができるからです。
大規模な企業では、富士通が積極的にアジャイルの採用事例を公開しているので、そちらも参考になると思います。
保育や学校運営の業務にまつわるSaaSなどは、ウォーターフォールが採用されることが多く見られます。
学校などは4月に生徒の登校がスタート、7月終盤に授業が終り、9月から授業が再開する。
といったように「何時までに」「どんな機能が」「どういった使われ方で」などの要素が定まっていることが多くあります。
ですので「いつまでに」「これくらいのことができているべき」が達成しやすいのは、工程別に一気通貫して行うウォーターフォールなので、それらの領域では採用されやすくなります。
特に企業会計の基幹システムなどに適しているでしょう。