【システム開発手法・アジャイル】作って見せて軌道修正!「プロトタイプ手法(イテレイティブ・モデル)」|情報処理問題1000本ノック
基本情報技術者試験、応用情報技術者試験、プロジェクトマネージャ試験の「システム開発ライフサイクル(SDLC)・開発モデル」分野で頻出の重要テーマ。手戻りを防ぎリスクを最小化する「プロトタイプ手法(反復型・イテレイティブモデル)」の基本的な考え方、メリット・デメリット、適しているプロジェクトの特徴を整理して攻略しましょう。
■ プロトタイプ手法(反復型イテレイティブモデル)のプロセスとサイクル
プロトタイプ手法とは、システムの要件定義や設計段階で早い段階から「試作品(プロトタイプ)」を作成し、ユーザーに実際に触れてもらいながらフィードバックを反映させる開発アプローチです。従来のウォーターフォールのように一括りで作るのではなく、小さなサイクルを何度も繰り返します。
| プロセスの段階 | 主な活動内容 | ポイント・目的 |
|---|---|---|
| (1) 初期調査 (Initial Investigation) |
プロジェクトの目的、大まかな予算・納期、解決すべき課題や全体像を初期段階で把握・整理する。 | 開発全体の方向性を定め、プロトタイプ作成のスコープを明確にする。 |
| (2) 要件定義 (Requirement Definition) |
ユーザーの要望を聞き取り、画面のレイアウトや主要な機能要件を洗い出して定義する。 | 「言葉だけの定義」にとどまらず、早い段階で形にする準備を行う。 |
| (3) システムデザイン (System Design) |
プロトタイプとして動かすための簡易的な画面設計、データ構造、アーキテクチャの設計を行う。 | 完璧な設計を目指すのではなく、まずは「動くもの」を素早く作る設計にする。 |
| (4) コーディング・テスト (Coding & Testing) |
設計に基づきプロトタイプを急ぎ実装し、簡単な動作確認(テスト)を行ってユーザーに提示する。 | ここで得たフィードバックを元に、(2)〜(4)のサイクルを何度も繰り返す。 |
■ プロトタイプ手法の基本的な考え方とメリット
- 小さく分割してリスクを削減する:巨大な開発を一度に行うリスクを避け、不確実性の高い部分を小分けにして早期につぶし込む。
- 変更の容易化:開発の初期〜中期に仕様変更を何度も受け入れることで、後工程での致命的な手戻りを防ぐ。
- ユーザーを全般へ巻き込む:ユーザーが常に開発プロセスに参加するため、「作ってみたらイメージと違った」というミスマッチを防ぐ。
試験対策の重要ポイント:欠点(デメリット)と適しているプロジェクト
- 【適しているプロジェクト】:
- ユーザーインターフェース(UI/UX)や画面デザインが重視されるシステム(Webアプリやスマホアプリ等)
- 要件が固まっておらず、試行錯誤しながら仕様を固めていきたい(アジャイル的な)プロジェクト
- 【主な欠点・デメリット】:
- コストと工期の肥大化(スコープクリープ):「ここも直して、あそこも変えて」と要望が際限なく膨らみ、スケジュールや予算が管理しにくくなる。
- 「使い捨て」の難しさ:本来は仕組み検証用の試作品(プロトタイプ)であるはずが、そのまま本番のコードとして流用されてしまい、構造の汚さやセキュリティ・性能不足を抱えたまま稼働してしまうリスクがある。
※例えるなら、家のリフォームで「完成図面(紙)だけを見て家を建てる」のではなく、まずはダンボールや簡易模型(プロトタイプ)を作って実際に中を歩いてもらい、「やっぱりこの廊下は狭いから広げよう」「ここにコンセントが欲しい」とその場で直していくアプローチです。イメージの共有には最強ですが、何度も作り直すうちに「あれもこれも」と追加工事費(コスト増)になりやすい点に注意が必要です。
PR