ある企業でスマートフォン向けのアプリケーションソフトウェアの開発を計画しており, 2週間ごとに新機能や不具合の修正を含めた新しいバージョンを繰り返しリリースすることにした。新機能の候補や不具合は一覧表で管理し, 優先順位をつけて開発し, 逐次リリースする方針にした。この開発に採用するソフトウェア開発モデルとして, 最も適切なものはどれか。
令和8年度 ITパスポート試験 問43
マネジメント系ソフトウェア開発管理技術 › 開発プロセス・手法
この問題の解説と、これまでの解答の記録です。
問43
頻出度★★★
解説
問 43
不正解ア
DevOps は開発(Development)と運用(Operations)の部門が密に連携し、自動化を活用してリリースや運用を迅速・継続的に行うための考え方・文化・手法であって、「短い反復で優先順位順に開発する」という開発モデルそのものを指す語ではない。本問が問うているのは反復型の開発モデルなので、最も適切とは言えない。
- イ
正解 正解はイのアジャイル。アジャイル開発は、数週間程度の短い反復(イテレーション/スプリント)を繰り返し、その都度動くソフトウェアをリリースしていく開発モデル。本問の「2週間ごとに新機能や不具合修正を含む新バージョンを繰り返しリリースする」「新機能候補や不具合を一覧表(バックログ)で管理し優先順位をつけて逐次開発・リリースする」という進め方は、優先度順のバックログと短期反復リリースを特徴とするアジャイルに完全に合致する。要求の変化に柔軟に対応しながら小さく作って素早く出す方針なので、最も適切。
不正解ウ
ウォーターフォールは要件定義→設計→実装→テストと工程を上流から下流へ一方向に順番に進める方式で、各工程を完了してから次へ進むため、2週間ごとに繰り返しリリースしたり優先順位を見直しながら逐次出していく進め方には向かない。反復・漸進的なリリースを前提とする本問とは正反対。
不正解エ
リバースエンジニアリングは、既存の製品やプログラムを解析してその構造・仕様・設計を明らかにする手法であり、新しいソフトウェアを作るための開発モデルではない。新規開発の進め方を問う本問の答えにはならない。
ここがポイント
- アジャイル開発=短い反復(スプリント)を繰り返し、優先順位づけしたバックログから小さく作って頻繁にリリースする反復型・漸進型の開発モデル。
- 紛らわしい語の切り分け: DevOps は開発と運用の連携・自動化の考え方、ウォーターフォールは工程を順に進める非反復型、リバースエンジニアリングは既存物を解析する手法であり、いずれも「反復リリースの開発モデル」ではない。
用語