← メディア一覧

ウォーターフォール_vs_アジャイル

7分07秒 | PM開発手法FE

基本情報技術者試験の頻出テーマを解説した動画コンテンツです。

トランスクリプト(字幕テキスト)

どうもこんにちは。仕事で新しいプロジェクトが始まるぞってなった時、うーん、これ一体どうやって進めるのが正解なんだろうって、ちょっとこうもやとしたことありませんか? 今日はですね、そんなプロジェクトの進め方の二大巨頭、ウォーターフォールとアジャイルについて、この2つが一体どう違うのかサクッと見ていきましょう。 そうそう、まさにこの感じですよね。関係者もどんどん増えていって、あっちではあぁ言ってるし、こっちではこう言ってるしみたいな。 あれ?で結局僕らどこに向かってるんだっけってなっちゃうあの感じ。これ多くの人が一度は経験あるんじゃないでしょうか。 実はですね、その混乱の原因ってプロジェクトの進め方の設計図、つまり開発モデルがはっきりしてないことにあるんです。 というわけで今日はその代表的な2つの設計図をじっくりと見比べていきたいと思います。 この2つのモデル、例えるならそうですね、まさにこんな感じです。左側が家を建てる前に、全ての部屋の間取りから壁紙の色まで全部完璧に決める設計図。これがウォーターフォールです。 で、右側が冒険の途中で「おっ、こっちにお宝がありそうだぞ」って地図を書き換えながら進んでいく、そんな作戦ノート。これがアジャイル。 いや対照的ですよね。じゃあまずは古くからある、いわばプロジェクト管理の王道ともいえるアプローチから見ていきましょうか。それがウォーターフォールモデルです。 何でウォーターフォール、つまり滝って呼ばれてるのか。これもう名前の通りなんですよね。 水が滝のように上から下へと流れるように、工程を順番に進める手法。原則、後戻りはしない。水が上から下へ一方通行で流れていくみたいに、プロジェクトの工程が順番通りに進んでいくからです。 ポイントは、一度流れ落ちたらもう後戻りはできないってことですね。まさにこのスライドがその厳格な世界観を物語っていますよね。 まず要件定義、次に設計、そして開発、最後にテスト。この各工程が完全にロックされてて、前の工程が100%完璧に終わらない限り、絶対に次には進ませないぞっていうもう鉄の掟があるんです。 でも、何でこんなカチカチのやり方が必要だと思います?それはですね、絶対に失敗できない、例えば銀行のシステム開発みたいな大規模プロジェクトで、絶大な安心感をもたらしてくれるからなんです。 途中で「やっぱりこうしたい」なんて言われたら大混乱ですもんね。だから、最初に全部固めちゃえばゴールまでの道のりと予算がくっきり見える。この予測しやすさが最大の強みってわけです。 しかしですよ、ここにこのモデルの致命的な弱点が潜んでるんです。もし最後の最後のテスト段階で「あれ、最初の設計に根本的なミスがあったぞ」ってなったら、 あるいはクライアントが突然「ごめん、やっぱりデザインこっちの方がいいな」なんて言い出したら、もう想像つきますよね。 滝を逆流するようなとんでもない手戻りが発生して、プロジェクトは大炎上、なんてことになりかねないんです。さあそこで登場するのが、そのウォーターフォールのカチカチで曲がれないっていう課題を解決するために生まれた、現代的な答え、アジャイル開発です。 そう、アジャイルっていうのは「俊敏」っていう意味なんですね。ウォーターフォールが一本の巨大な滝だとしたら、アジャイルはこう曲がりくねった小波みたいなイメージです。 プロジェクト全体を一度に作ろうとせず、まず動くものをちっちゃく作って、それを何度も何度も改善していく、この分割して進めるっていうのがキーワードになります。 で、このアジャイルを動かす心臓部、それがイテレーション(反復)と呼ばれるものです。例えば、最初の2週間でまずログイン機能だけを完璧に動く状態にしよう、みたいな、 短い開発サイクルを小さな機能ごとに何度も何度もぐるぐる回していくんですね。作って試して改善する、この繰り返しでプロジェクトを育てていくんです。 この短いサイクルのおかげで、とにかく変化に強い。だって2週間ごとに動くものを見せられるわけですから、ユーザーから「あ、ここはもっとこうして欲しいな」っていうフィードバックをもらえたら、 すぐ次のサイクルで反映できるんです。市場の変化が激しいスマホアプリ界隈なんかでは、もう必須の考え方ですよね。 さて、ここまで 2つのモデルを見てきましたが、ここからが本番です。両者をこうバシッと並べて、その思想の違いをはっきりさせましょう。 ここを理解するのが今日一番のポイントになりますからね。この比較表、すごく面白いと思いませんか?これ単なるやり方の違いじゃないんです。 ウォーターフォールは「変更はリスクだ、避けなきゃ」って考えるのに対して、アジャイルは「いやいや、変更は当たり前でしょ、むしろ大歓迎」って考える。ユーザーとの関わり方も、 最後に完成品を「どうぞ」って見せるか、開発の度にずっと付き合ってもらうか。もうまるで正反対。 これって優劣じゃなくて、根本的な哲学の違いなんですよ。そして、これが今回の解説で僕が一番伝えたいことです。 大切なのは、自分のプロジェクトの性格はどっち向きなんだろうって冷静に見極めること。絶対に仕様が変わらない堅牢な橋をかけるプロジェクトなのか、それとも、 刻一刻と変わるお客様の要望に応えるサービスを作るのか。その性質に合わせて最適な道具を選ぶ。「適材適所」、本当にこれに尽きます。 よし、じゃあ最後に今日の話をいつでも思い出せるように、要点をまとめた「チートシート」を用意しました。これさえ覚えておけば、もう迷わないはずです。つまりこういうことです。 目の前の道がゴールまで一本道で完璧に見えているなら、迷わずウォーターフォールを選ぶ。でも道が曲がりくねっていて、途中で新しい発見があるかもしれないなら、アジャイルを選ぶ。 この最初の選択がプロジェクトの運命を分ける鍵なんですね。シンプルですよね。あ、ちなみに、もし皆さんがこれからアジャイルの世界に飛び込むなら、必ず出会う言葉が2つあります。 1つは「スクラム」。これはアジャイルを実践するためのラグビーチームみたいな具体的なチーム戦術のことです。で、もう1つが「プロダクトオーナー」。 これはチームが進むべき方向を決める船長みたいな役割の人ですね。この2つも頭の片隅に置いておくと、きっと役立ちますよ。 これで 2つの開発モデルの地図は、皆さんの頭の中に入ったはずです。最後にちょっとだけ考えてみてください。今、皆さんが関わっているお仕事やプロジェクトは、 計画通りに静かに進む滝でしょうか?それとも、予測不可能な変化に対応し続ける目まぐるしい旋風の方でしょうか? 自分の仕事をこの視点で見つめ直してみると、きっと何か面白い発見があるはずです。

このコンテンツは Web society で視聴・学習できます。