開発手法の選び方 — ウォーターフォールとアジャイル
導入
マンションを建てるときは設計図を全て決めてから工事を始めますが、スマホアプリの開発ではリリース後にも改善を続けることがあります。どちらのやり方が正解というわけではなく、プロジェクトの性質に応じて開発手法を選ぶことが重要なのです。
くわしく知ろう
ソフトウェア開発の進め方には大きく分けてウォーターフォール型とアジャイル型の2つが知られています。
ウォーターフォール型は、要件定義→設計→実装→テスト→リリースという工程を順番に進め、前の工程が完了してから次に進む手法です。滝(waterfall)が上から下に流れるイメージです。工程ごとに成果物が明確で進捗管理しやすい反面、途中で要件が変わると手戻りのコストが大きくなる点が特徴です。要件が最初から明確に固まっている大規模システムに向いています。
アジャイル型は、短い期間(スプリントと呼ばれる1〜4週間単位)で設計・実装・テストを繰り返し、少しずつ動くソフトウェアを積み上げていく手法です。変化する要件に柔軟に対応できる点が強みです。代表的な手法としてスクラム(Scrum)があり、スマホアプリやWebサービスの開発でよく採用されています。
また、開発の終盤に実施される受入テスト(UAT: User Acceptance Test)は、利用者が実際に要件を満たしているかを確認するテストで、ウォーターフォール型において特に重要な工程として位置づけられています。
具体例
たとえば銀行の基幹システムの刷新は、要件が厳格に決まっており変更が許されにくいためウォーターフォール型が採用されることが多いです。一方、スタートアップのスマホアプリ開発では、ユーザーの反応を見ながら機能を追加・変更するアジャイル型が向いています。プロジェクトの要件変更頻度と規模がどちらの手法を選ぶかの判断基準になります。
まとめ・試験ポイント
- ウォーターフォール=工程を順番に進める。要件変更に弱い
- アジャイル=短期間の反復(スプリント)で少しずつ開発する
- スクラム=アジャイル開発の代表的なフレームワーク
- 受入テスト(UAT)=利用者が要件充足を確認する最終工程
- 試験では「変化する要件に対応しやすいのはどちらか」という出題が多い
学習した内容を試験形式で確認しよう。ITパスポート入門試験100問に挑戦できます。
入門試験100問に挑戦する