平成18年秋期試験問題 午前問39

ソフトウェアの開発モデルの説明のうち,適切なものはどれか。

  • ウォーターフォールモデルは,開発を上流から下流に一方向に進めるモデルであり,開発効率を高めるには,各工程内でのレビューやテストによって品質を確保し,前工程への逆戻りが起こらないようにする。
  • スパイラルモデルは,ウォーターフォールモデルのプロセスを繰り返し,機能を段階的に提供していくモデルで,インクリメンタルプロセスモデルともいう。
  • 成長型プロセスモデルは,一連の開発工程を何回も繰り返しながら開発機能の規模を拡大し,開発コストの増加などのリスクを最小にしつつシステム開発を行うプロセスモデルである。
  • プロトタイピングモデルは,ドキュメントによる要求仕様の確認の困難さを解消するために,ウォーターフォールモデルの工程ごとにプロトタイプを作成し,仕様を確認していくモデルである。
正解 問題へ
分野 :テクノロジ系
中分類:ソフトウェア開発管理技術
小分類:開発プロセス・手法
解説
ウォーターフォールモデルは、最初に開発全体の計画とスケジュールを決めたうえで、要求定義・設計・実装・テスト・運用といった各工程を一つずつ完了させながら、順番に開発を進める手法です。滝の水が上から下へ流れるように、工程を逐次的に進める点が特徴です。

前の工程の成果物をレビューし、その確認が終わってから次の工程に進む流れが基本となるため、各工程の成果物の品質を確保しやすく、開発全体の流れにも一貫性を持たせることができます。また、工程を順番に管理しやすいため、大規模なシステム開発に向いています。ただし、後から前の工程に戻って修正する必要が生じた場合には、多くの手間や費用がかかってしまうという弱点があります。

したがって「ア」が正解です。
  • 正しい。ウォーターフォールモデルの説明です。
  • 機能を段階的に「提供」するのは、インクリメンタルモデル(段階的モデル)の特徴です。
    スパイラルモデルは、最初にシステム全体をサブシステムに分割した上で、サブシステムごとに要件定義・設計・開発・評価を繰り返すことで、開発に係るリスクを最小にしつつ段階的に開発を進める手法です(提供は基本的には1回)。一方、インクリメンタルモデルは、まず中核となる機能を開発して提供し、その後、機能やサブシステムを段階的に開発・提供していく漸近的な手法です。本肢では、機能を段階的に「提供」すると説明されているため、スパイラルモデルではなく、インクリメンタルモデルの説明と判断できます。
  • 一連の開発工程を繰り返すことで、リスクを押さえながら開発を進めるのは、スパイラルモデルの特徴です。
    成長型プロセスモデル(エボリューションモデル)は、最初に概要レベルの仕様やプロトタイプを作り、利用者の反応や要求の変化に合わせてモデリング・要件定義・設計・開発・評価のサイクルを繰り返しながら、開発を進める手法です。
  • プロトタイピングモデルは、開発の初期段階で試作品を作り、利用者の要求をフィードバックして開発を進める手法です。ウォーターフォールの工程ごとに試作品を作成するわけではありません。

Pagetop