ITパスポート過去問 令和3年度(2021年)問51
アジャイル開発を実施している事例として,最も適切なものはどれか。
選択肢
- ア:AIシステムの予測精度を検証するために,開発に着手する前にトライアルを行い,有効なアルゴリズムを選択する。
- イ:IoTの様々な技術を幅広く採用したいので,技術を保有するベンダに開発を委託する。
- ウ:IoTを採用した大規模システムの開発を,上流から下流までの各工程における完了の承認を行いながら順番に進める。
- エ:分析システムの開発において,分析の精度の向上を図るために,固定された短期間のサイクルを繰り返しながら分析プログラムの機能を順次追加する。
- ア
- イ
- ウ
- エ
正解と解き方・学習ポイント(AI解説)
アジャイル開発は、固定された短期間のサイクルで開発と評価を繰り返し、成果物を少しずつ改善しながら機能を追加していく進め方です。選択肢エは「短期間のサイクルを繰り返す」「機能を順次追加する」と述べており、アジャイル開発の典型的な事例として適切です。
Point
この問題は、記述されている開発の進め方がアジャイル開発に当たるかを判定できるようになることを目的としています。短い期間で反復することと、反復のたびに機能を追加していくことを根拠に、ウォーターフォール開発やPoCなどの別概念と区別する力が求められます。
解くために必要な知識
この問題を解くには、アジャイル開発の進め方と、似た言葉や別の進め方(開発前の検証、工程順の開発など)との違いを理解している必要があります。
用語の整理
| 用語 | 意味 |
|---|---|
| アジャイル開発 | 短い期間を1サイクルとして、計画・設計・実装・テストを繰り返し、機能を少しずつ追加していく開発手法です。 |
| イテレーション | アジャイル開発の1回分の開発サイクルです。固定された期間(例: 1〜4週間程度)で区切って進めることが多いです。 |
他の選択肢に出てくる用語
| 用語 | 意味 |
|---|---|
| PoC(概念実証) | 本格開発の前に、技術や案が実現できるかを小さく試して確認することです。 |
| ウォーターフォール開発 | 要件定義、設計、実装、テストなどを上流から下流へ順番に進め、各工程の完了を確認しながら次へ進む開発手法です。 |
アジャイル開発の特徴
アジャイル開発の事例として扱われやすい記述は、次の要素がそろっているものです。
-
短期間の固定サイクル(例: 1〜4週間程度)
-
サイクルの反復(同じ流れを繰り返す)
-
段階的な機能追加(サイクルごとに動く成果物を増やす)
問題の解法手順
問題文は「アジャイル開発を実施している事例」を1つ選ぶ問題です。
アジャイル開発として判断する観点
次の3点が記述に含まれているかを確認します。
-
短期間の固定サイクルがあること
-
サイクルを繰り返すこと
-
サイクルごとに機能を追加、改善していくこと
各選択肢の確認
| 選択肢 | 短期間の固定サイクル | 反復 | 段階的な機能追加 | 結論 |
|---|---|---|---|---|
| ア | なし | なし | なし | 開発前の検証であり、アジャイル開発ではありません。 |
| イ | なし | なし | なし | 委託先の選び方の話であり、開発手法の説明ではありません。 |
| ウ | なし | なし | なし | 工程を順番に進める説明であり、アジャイル開発ではありません。 |
| エ | あり | あり | あり | アジャイル開発の説明に当たるため正解です。 |
選択肢ごとの解説
- ア:不正解
開発に着手する前にトライアルを行って有効なアルゴリズムを選ぶのは、PoC(概念実証)の説明です。短期間の固定サイクルを繰り返して機能を追加するという記述ではないため、アジャイル開発の事例とはいえません。
- イ:不正解
技術を保有するベンダに開発を委託する内容です。これは外部委託の方針であり、開発を反復で進めるか、工程順に進めるかといった開発手法の説明ではありません。
- ウ:不正解
上流から下流まで各工程の完了を承認しながら順番に進めるのは、ウォーターフォール開発の典型的な説明です。反復して機能を追加する進め方ではないため、アジャイル開発の事例とはいえません。
- エ:正解
固定された短期間のサイクルを繰り返しながら、機能を順次追加するという記述は、イテレーションを回して段階的に機能を増やすアジャイル開発の説明です。
まとめ
アジャイル開発は、固定された短期間のサイクルで開発と評価を繰り返し、成果物を少しずつ改善しながら機能を追加していく進め方です。選択肢エは「短期間のサイクルを繰り返す」「機能を順次追加する」と述べており、アジャイル開発の典型的な事例として適切です。
マネジメント系 > 開発技術 > ソフトウェア開発管理技術
開発に着手する前にトライアルを行って有効なアルゴリズムを選ぶのは、PoC(概念実証)の説明です。短期間の固定サイクルを繰り返して機能を追加するという記述ではないため、アジャイル開発の事例とはいえません。
技術を保有するベンダに開発を委託する内容です。これは外部委託の方針であり、開発を反復で進めるか、工程順に進めるかといった開発手法の説明ではありません。
上流から下流まで各工程の完了を承認しながら順番に進めるのは、ウォーターフォール開発の典型的な説明です。反復して機能を追加する進め方ではないため、アジャイル開発の事例とはいえません。
固定された短期間のサイクルを繰り返しながら、機能を順次追加するという記述は、イテレーションを回して段階的に機能を増やすアジャイル開発の説明です。