令和3年度 ITパスポート試験 公開問題 問51 解説 アジャイル開発の事例
アジャイル開発を実施している事例として,最も適切なものはどれか。
- AI システムの予測精度を検証するために,開発に着手する前にトライアルを行い,有効なアルゴリズムを選択する。
- IoT の様々な技術を幅広く採用したいので,技術を保有するベンダに開発を委託する。
- IoT を採用した大規模システムの開発を,上流から下流までの各工程における完了の承認を行いながら順番に進める。
- 分析システムの開発において,分析の精度の向上を図るために,固定された短期間のサイクルを繰り返しながら分析プログラムの機能を順次追加する。 ✓ 正答
解説
この問題の正解を見抜くポイントは、アジャイル開発という言葉が持つ「反復」と「漸進」という二つのキーワードです。選択肢の中で、短期間のサイクルを繰り返して機能を少しずつ増やしていくという、反復的かつ段階的なプロセスを説明しているものが正解となります。
アジャイル開発とは、システム全体を一度に作り上げるのではなく、小さな単位に分割し、短期間のサイクルを繰り返しながら開発を進める手法です。このサイクルはイテレーションやスプリントと呼ばれます。あらかじめ全ての要件を完全に確定させてから開発に入るのではなく、開発途中で仕様の変更や追加柔軟に対応できる点が最大の特徴です。
アジャイル開発の反対に位置するのがウォーターフル開発です。これは要件定義、設計、実装、テストといった各工程を順番に進め、前の工程が完了しなければ次へ進まない手法です。選択肢にある「上流から下流までの各工程における完了の承認を行いながら順番に進める」という記述は、まさにこのウォーターフル開発の特徴を指しています。
ITパスポート試験において、このテーマは「開発手法の特性を正しく理解しているか」という観点で頻出します。アジャイル開発が出題される際は、以下のようなキーワードが含まれているかを確認しましょう。
・短期間のサイクル(イテレーション)を繰り返す ・試作品(プロトタイプ)を作成する ・頻繁にリリース(あるいは顧客への確認)を行う ・仕様変更や改善を柔軟に取り入れる
一方で、ウォーターフル開発が問われる場合は、「計画通りに工程を進める」「要件の変更を最小限にする」「大規模で確実性が求められる開発に向く」といった特徴と関連付けられます。実際の開発現場では、プロジェクトの性質や顧客の要望に応じて、アジャイルとウォーターフルのどちらを採用するかが決定されます。試験では、手法の名前と、その手法が持つ開発プロセスのイメージをセットで覚えておくことが、正解率を高めるコツです。
- アジャイルソフトウェア開発宣言
- 経済産業省 情報処理技術者試験のアジャイル開発に関する解説(IPA情報処理推進機構)