← 教科書一覧へ古典的なソフトウェア開発モデル
頻出約 13 分開発プロセス・手法
概要
このユニットでは、アジャイル以前から使われてきた古典的なソフトウェア開発プロセスモデル(ウォーターフォール・プロトタイピング・スパイラル・RAD)の特徴と適用場面を学ぶ。工程をどの順序・進め方で回すかを定める基本の枠組みであり、特にウォーターフォールは最頻出。各モデルの長所短所の対比が ITパスポートで繰り返し問われる重要分野である。
用語(4)
ウォーターフォールモデル
要件定義から順に各工程を上流から下流へ後戻りせず進める開発モデル。
ウォーターフォールモデルは、要件定義・設計・プログラミング・テストといった工程を、滝が上から下へ流れるように一方向で順番に進める開発手法です。前の工程が完了してから次に進むため、計画や進捗の管理がしやすいのが特長です。
試験では、後戻りを前提としないため上流工程の誤りが下流で発覚すると手戻りが大きい、という弱点が頻出します。仕様が固まっている大規模開発に向く一方、要求が変わりやすい開発には不向きで、この弱点を補うのがプロトタイピングやアジャイルだという対比を押さえましょう。
たとえ工場の流れ作業ラインのようなもの。前の工程の品物が完成してから次の工程へ流れ、いったん下流に進むと前に戻ってやり直すのは大変です。
記憶フックウォーターフォールモデルといえば滝のように上流から下流へ後戻りしない開発
プロトタイピングモデル
開発初期に試作品を作り、利用者の評価で要求を確認しながら進める開発モデル。
プロトタイピングモデルは、開発の早い段階で試作品(プロトタイプ)を作り、利用者に実際に触って評価してもらいながら要求を固めていく手法です。動くものを見せることで、仕様の認識のズレを早期に発見できます。
試験では、要求があいまいな場合や利用者が完成イメージを持ちにくい場合に有効で、ウォーターフォールの「上流の誤りが下流で発覚する」弱点を補う点が問われます。試作と評価を通じて要求を明確化する手法、という位置づけが典型的な出題観点です。
たとえ家を建てる前に模型やモデルルームを見せて「ここをこう変えたい」と確認するようなもの。完成前に試作で認識を合わせます。
記憶フックプロトタイピングモデルといえば試作品で要求を早期に確認
スパイラルモデル
システムを部分に分け、設計・試作・評価の反復をらせん状に繰り返して完成度を高める開発モデル。
スパイラルモデルは、システムを機能のまとまりごとに分割し、各部分について計画・設計・試作・評価のサイクルを繰り返しながら、らせん状に少しずつ完成へ近づけていく手法です。ウォーターフォールの計画性とプロトタイピングの試作・評価を組み合わせた発展形です。
試験では、反復(イテレーション)のたびにリスクを評価しながら進める点や、大規模で不確実性の高い開発に向く点が問われます。後戻りしないウォーターフォールとの違い、反復を重ねる点が頻出の対比ポイントです。
たとえ料理を少量ずつ作って味見し、改良を繰り返して仕上げるようなもの。一気に作らず、試して直すサイクルを何周も回します。
記憶フックスパイラルモデルといえば反復をらせん状に繰り返す発展形
RAD
試作や開発支援ツールを活用し、短期間で素早くシステムを開発する手法。
RAD(Rapid Application Development、迅速なアプリケーション開発)は、プロトタイピングや開発支援ツール、少人数のチームを活用して、短い期間で素早くシステムを作り上げる開発手法です。利用者を巻き込みながら試作と改良を繰り返します。
試験では、「Rapid=迅速」が示すとおり開発期間の短縮を重視する手法である点が問われます。プロトタイピングを発展させ、ツールや反復を使って短納期を実現する点が特徴で、用語の意味(迅速な開発)を押さえておくことが得点につながります。
たとえ出来合いの部品やキットを組み合わせて家具を素早く完成させるようなもの。ゼロから作らず道具と試作を使い、とにかく短時間で仕上げます。
記憶フックRADといえばツールと試作で短期間に迅速開発
まとめ
要点
- ウォーターフォールは工程を上流から下流へ後戻りせず進める基本モデルで、計画管理が容易な反面、上流の誤りによる手戻りが大きいのが弱点。
- プロトタイピングは試作品を利用者に評価させて要求を早期に固め、ウォーターフォールの弱点(仕様の認識ズレ)を補う。
- スパイラルはウォーターフォールとプロトタイピングを組み合わせ、反復をらせん状に繰り返してリスクを抑えつつ完成度を高める発展形。
- RAD はツールや試作、少人数チームを使い、短期間での迅速な開発を重視する手法。
- 4モデルは『アジャイル以前の古典プロセスモデル』として、長所短所を対比して理解するのが頻出の要点。
記憶フック一覧
- ウォーターフォールモデル: ウォーターフォールモデルといえば滝のように上流から下流へ後戻りしない開発
- プロトタイピングモデル: プロトタイピングモデルといえば試作品で要求を早期に確認
- スパイラルモデル: スパイラルモデルといえば反復をらせん状に繰り返す発展形
- RAD: RADといえばツールと試作で短期間に迅速開発
関連の過去問演習は今後のアップデートで追加予定です。