「アジャイル」と「ウォーターフォール」。プロジェクトマネジメント手法を徹底比較

プロジェクトマネジメント手法を徹底比較

プロジェクトマネージャー(PM)の業務に携わっている皆さんは、システム開発において大きく2つの手法があることをご存知でしょう。システム開発の手法としては、長く「ウォーターフォール型」が主流とされてきましたが、近年は「アジャイル型」によるシステム開発が多く見られます。

この記事では、ウォーターフォール型とアジャイル型のシステム開発手法の特徴やその違い、それぞれのメリットとデメリットを解説します。それらの開発手法に対し、現役のプロPMによる“プロジェクト管理のコツ”もあわせてご紹介しますので、ぜひ記事を最後までチェックしてプロジェクトマネジメントについての理解を深めてください。

まずは「プロジェクトマネジメント」について、わかりやすく解説

まずは、「プロジェクトマネジメント」について、解説していきましょう。

プロジェクトマネジメントは、プロジェクトの責任者であるプロジェクトマネージャーの具体的な仕事内容と言えます。PMは、プロジェクトを成功に導くことが役割ですが、そのために必要なさまざまなスキルを駆使して、プロジェクトを管理します。

『具体的にどのように進行したらいいのか分からない』という方のために、プロジェクトマネジメントの基礎や基本的な流れをご紹介します。

プロジェクトマネジメントの基本は「QCD」の管理

プロジェクトマネジメントは、プロジェクトを成功させるために、「QCD」を管理することです。

QCDとは?
  • Quality(質)
  • Cost(コスト)
  • Delivery(納期)

プロマネは、持つ経験やスキルと与えられたリソースを適切に配分・活用して、QCDを進行・管理します。

QCDを達成するために欠かせないPMのスキルの一つが、コミュニケーション能力です。プロジェクトメンバーだけでなく、クライアントなどを含めたステークホルダーとの密なコミュニケーションは、プロジェクトマネジメントに欠かせない要素となるため、コミュニケーション能力もQCDの管理に重要な要素です。

プロジェクトマネジメントの流れ

プロジェクトマネジメントには、大きくプロジェクトの開始前の「準備」からプロジェクト完了後の「終結」のフェーズまでがあります。基本的には下記の流れで進行していきます。

基本的なプロジェクトマネジメントの流れ
  1. プロジェクト準備
  2. プロジェクト開始時
  3. プロジェクト実施中
  4. プロジェクト終結時

プロジェクトには数週間で終結を迎えるものから、数2年以上の期間を要するような長期的なものまでさまざまなプロジェクトがあります。

基本的な流れの中で最も期間が長いのは、「3.プロジェクト実施中」になり、特にこの期間でプロジェクトマネージャーはこれまで培ってきた経験やスキルを駆使して、QCDを達成するためにプロジェクトを管理します。

高濱 幸喜

プロジェクトマネージャーは、プロジェクトの成功に対して全責任を負う役割でもあります。そのためプロジェクトの中では、たいへん重要な役割であると言えます。

大きいプロジェクトについては社内からリーダーや管理職の方がプロマネを担当してプロジェクトを進めるケースが割と多いですが、プロのプロマネに委託してプロジェクトを進めるケースも少なくありません。

プロジェクトは、似たものはあっても、ひとつとして全く同じものはありません。それであっても、共通して活用できるプロジェクト管理ツールやハウツーがあります。

これらを駆使することによってプロジェクトを成功に導くことができたときの喜びは、何物にも代えがたいものがあります。やりがいのあるプロマネとしてのキャリアをぜひ目指していただきたいと思います。

システム開発手法について

ここからが本記事の本題となる、システム開発手法についての説明です。

先に述べたように、システム開発は現在大きく2つ手法が使われています。それぞれ、どのような特徴があるのかご紹介します。

ウォーターフォールとはどんなシステム開発手法?

ウォーターフォールとは、プロジェクトマネジメントの世界で長く使われてきた開発手法の一つです。日本語に訳すと「滝/水が落ちる」という意味の通り、プロジェクトをフェーズに分けて、上流から下流へ順番に進めていく手法です。だいたい以下のような流れで、開発が進められていきます。

  1. 要件定義
  2. 基本設計
  3. 詳細設計
  4. 開発(プログラミング)
  5. 単体テスト
  6. 結合テスト
  7. システムテスト
  8. 受入テスト
  9. リリース

ウォーターフォール型のメリット・デメリットをまとめると、次のようになります。

ウォーターフォールのメリット

  • 構造がシンプルでわかりやすい
  • プロジェクト全容を把握しやすい
  • 予算、リソースの見積もりが立てやすい
  • 進捗管理がしやすい

ウォーターフォールのデメリット

  • 柔軟性に欠ける
  • 手戻りが発生すると工数が増える
  • 成果物のリリースまでに時間がかかる
  • クライアントのレビューを反映しにくい

ウォーターフォールが向いている開発は?

ウォーターフォールは、大規模なプロジェクト開発や高い品質が求められるプロジェクトに向いていると言われています。

ウォーターフォールは、手戻りが発生すると工数が増える点がデメリットの一つのため、要件定義は入念に行います。要件定義に沿ってプロジェクトを進められるのであれば、進捗管理がしやすいメリットを活かすことができるため、大規模なプロジェクト開発や品質を求められるプロジェクトに向いている開発手法となります。

アジャイルとはどんな開発手法?

現在、多くのアプリ開発で採用されている手法がアジャイルです。「アジャイル(agile)」の名詞形である「アジリティ(agility)」が語源となっていて、「敏捷」や「機敏」という意味です。アジャイルは、工程を小さなサイクルで繰り返し行う反復型の開発手法です。

アジャイルの考え方をもとに具体化した開発手法はいくつかありますが、有名なものとしては「スクラム」があります。

実は、「スクラム」という手法には「プロジェクトマネージャー」という役割は存在しません。スクラムではプロダクトオーナー、スクラムマスター、開発チームという3つの役割を持つ存在で構成されます。

そして、「スプリント」という決められた特定の期間で開発を進めます。そのスプリントを何回もまわして開発を進めていくという方法をとります。「スクラム」の詳細については、別の記事で詳しく取り上げます。

アジャイル型のメリット・デメリットをまとめると、次のようになります。

アジャイルのメリット

  • 柔軟性の高さ
  • 開発スピード、リリースの早さ
  • クライアント満足度の向上
  • 時間短縮、コスト削減につながる

アジャイルのデメリット

  • コンセプトがブレやすい
  • スケジュール、進捗管理が難しい
  • プロジェクトマネージャーのスキル、経験に依存する
  • 定期的な振り返りが必須

アジャイルが向いている開発は?

アジャイルは、柔軟性の高さというメリットを活かす面でも、小規模向けのプロジェクト、計画段階から仕様変更や追加が想定されるプロジェクトに向いています。

例えばスマホのアプリが、短い頻度でアプリがアップデートされている事はよく知られているのではないでしょうか。短い頻度でバグを修正したり、機能を追加する必要のあるようなアプリは、アジャイル開発のメリットを活かした実例と言えるでしょう。

実は、PMBOKの第5版までは、ウォーターフォール開発手法に対するプロジェクトマネジメントのハウツーのみが記載されていました。

アジャイル開発の考え方やアジャイルに対するプロジェクト管理についての記述が盛り込まれたのはPMBOK第6版からになります。

アジャイルとウォーターフォール、それぞれのプロジェクト管理手法の違いは?

ここまでに説明してきた通り、アジャイルとウォーターフォールの手法の違いは、プロジェクトのプロセスを進めるその方法にあります。

アジャイルは、プロジェクト進行途中での仕様変更や追加が計画段階から想定された手法であり、「計画→設計→実装→テスト」という1つのサイクルを、工程毎に繰り返し行いながら進めていきます。一方のウォーターフォールは、全体設計後に上流から下流へ一方通行で進めていく手法です。ウォーターフォールとアジャイルの特徴をあらためてまとめておきます。

アジャイルウォーターフォール
プロセス・サイクル反復型
計画→設計→実装→テスト
・一方通行型
上流工程→下流工程
メリット・柔軟性の高さ
・開発スピードの早さ
・顧客満足度の向上
・時短、コスト削減
・構造がシンプル
・全容を把握しやすい
・見積もりの立てやすさ
・進捗管理がしやすい
デメリット・コンセプトがブレやすい
・進捗管理が難しい
・PMのスキル、経験に依存する
・定期的な振り返りが必須
・柔軟性に欠ける
・手戻りが発生すると工数が増える
・リリースまでに時間がかかる
・顧客レビューを反映しにくい
プロジェクト大規模開発小規模開発

近年は、時代が変化するスピードの速さにあわせられる柔軟性を備えたアジャイル型による開発が一般的になりつつあります。

各開発手法にあったプロジェクト管理手法は?

ウォーターフォール、アジャイルそれぞれでのプロジェクト管理で使用されるツールは異なります。

ウォーターフォールにあった管理手法

ウォーターフォール開発でスケジュールやタスクの進捗を確認・管理する代表的なツールは、WBSとガントチャートを組み合わせたプロジェクトスケジュールになります。プロマネは、このプロジェクトスケジュールをトラックしながらプロジェクトの進捗を管理します。

プロジェクト全体の管理方針はプロジェクト計画書、プロジェクトで発生する課題の管理は課題管理表というように、多くの管理資料を使ってプロジェクトを管理していきます。各資料の目的は明確なのですが、管理は煩雑になります。

アジャイルにあった管理手法

一方、アジャイルで使われるプロジェクト進捗管理ツールで有名なものとして「カンバンボード」があります。カンバンボードは、開発タスクの進捗と担当が一目でわかる非常に効果的な管理ツールですが、タスク間の関係性がわかりにくい、長期プロジェクトには向かないなどのデメリットもあります。

プロジェクトに応じて、それぞれの強みを活かし弱みを隠すといった活用法を採用するためにも、プロジェクトマネジメントの手法をしっかり理解しておくことは、非常に重要な要素と言えるでしょう。プロジェクトの責任者であるプロジェクトマネージャーの方は、特にそれぞれの手法について理解を深めておくと、PMとして活躍できる未来が待っているかもしれません。

ウォーターフォール、アジャイルともそれぞれメリット、デメリットがあります。そのため、最近では両方の手法を取り入れて進めるプロジェクトも存在します。システムの要件や大枠についてはウォーターフォールで進め、システム開発の特定の部分はアジャイルを採用するといった感じです。

また、スクラムではプロマネという役割は存在しない、と説明しましたが、ではプロマネはアジャイルの事は知らなくてもよいかというとそうではありません。中にはアジャイル開発を行うが、全体の進捗具合を把握するためにあえてプロマネを配置するようなハイブリッドなプロジェクトも存在します。

そのため、プロマネはアジャイル開発の手法も理解しておく必要があるのです。

どちらもプロジェクト管理において必須の手法

この記事では、プロジェクトマネジメントの代表的な手法である「アジャイル」と「ウォーターフォール」について解説しました。プロジェクト管理においては、どちらの手法も必須と言えるものですので、プロジェクトマネージャーとしてプロジェクトに携わっている方はもちろん、これからPM、プロマネを目指したいという方も、理解を深めておきましょう。

タカハマプロジェクトでは、「ビギナー向け」「PM経験者向け」にトレーニングコースをご用意しております。プロジェクトマネジメントの基本を知りたい方、プロジェクトマネージャーとしてスキルアップしたいという方は、下記のボタンよりお気軽にお問合せください。