古典的なソフトウェア開発モデル
頻出約 26 分4 用語過去問 13 題
この単元の目標
- この単元の開発モデルと手法を、工程を一方向に進めるか、試作や開発の一巡を繰り返すかで分けられる。
- ウォーターフォールモデルで上流の誤りが後から見つかると、なぜ手戻りが大きくなるかを説明できる。
- プロトタイピングモデルとスパイラルモデルで、繰り返す対象の違いを言える。
- RAD が何を重視する手法かを言える。
用語総表(4 語)
用語
ウォーターフォールモデルは、開発を複数の工程に区切り、前の工程を終えて確認してから次の工程へ移る形で、一方向に進める開発モデルである。
要件定義のように開発の初めに近い工程を上流工程、プログラミングやテストのように後の工程を下流工程と呼び、後の工程は前の工程の成果物(文書)を基に作業する。区切りが明確なため計画や進み具合を管理しやすいが、前の工程へ戻らないことを前提にしているので、途中の仕様変更には対応しにくい。上流の誤りが後で見つかり、前の工程へ戻ってやり直すことを手戻りという。
たとえ家を基礎、柱、屋根の順に建てるようなもの。屋根まで載せてから基礎の誤りに気付くと、やり直しが大がかりになる。
覚え方英語の waterfall は「滝」。工程を階段状に並べて描くと、水が段々に落ちていく形に見える。
出題のポイント
- 出題工程ごとに完了を確かめてから次へ進むので、開発がどこまで進んだかという進捗をつかみやすい。
- 出題上流工程の誤りは、見つかる工程が後になるほど手戻りが大きく、1 件当たりの訂正コストも開発の経過とともに増える。
- 出題要求が最初から固まっていて、後から変わりにくい開発に向くモデルである。
この用語の過去問 3 題 ウォーターフォールモデル →
プロトタイピングモデルは、開発の早い段階で試作品(プロトタイプ)を作り、利用者に確かめてもらいながら要求を固める開発モデルである。
利用者は画面や操作を実際に見て意見を言えるので、文書だけでは伝わりにくい要望が早い段階で表に出る。試作と評価は意見がまとまるまで繰り返すことがあり、回数が増えるとそのぶん期間や費用がかかる。
たとえ家を建てる前にモデルルームを見てもらい、間取りや使い勝手の希望を聞き取るようなもの。
覚え方proto- は「最初の」を表す接頭語で、prototype は「最初に作る型」という意味になる。
出題のポイント
- 出題試作品を作る目的は、利用者に早い段階で実物を見てもらい、要求のあいまいさや開発者との認識のずれをなくすことである。
- 出題要求を定義する段階のプロトタイプは、利用者が実際に操作して確かめられる簡単なソフトウェアである。
この用語の過去問 3 題 プロトタイピングモデル →
「ウォーターフォールモデル」と「プロトタイピングモデル」の違い
スパイラルモデルは、システムを部分に分け、部分ごとに計画から評価までの開発の一巡を繰り返しながら、らせん状に完成へ近づける開発モデルである。
1 周ごとに計画を立て、問題になりそうな点(リスク)を見積もってから設計や試作に進み、評価の結果を次の周の計画に生かす。周を重ねるたびに開発する範囲が広がり、システムが少しずつ完成に近づく。
たとえ庭の一角に花を植えて育ち具合を確かめ、その結果を見て次の区画へ花壇を広げていく、を繰り返すようなもの。
覚え方spiral は「らせん」。評価から次の計画へ戻って回るたびに、外へ一回り広がっていく形を思い浮かべる。
出題のポイント
- 出題1 周ごとの評価を次の周の改良や機能の追加へつなげるので、開発の途中で変わる要求にも合わせやすい。
- 混同注意プロトタイピングモデルが繰り返すのは要求を確かめるための試作と評価であり、スパイラルモデルが繰り返すのはシステムの部分を作り上げる開発の一巡である。
この用語の過去問 1 題 スパイラルモデル →
「プロトタイピングモデル」と「スパイラルモデル」の違い
RADは、開発支援ツールや再利用できる部品、試作を活用して、短い期間でシステムを作り上げることを重視する開発手法である。
少人数のチームに利用者も加わり、試作を見ながら改良を重ねて仕上げていく。開発する期間をあらかじめ区切り、その期間内に完成させる進め方をとることが多い。
たとえ既製の部品とキットを使い、注文主と相談しながら組み立てて、短い日数で家具を仕上げるようなもの。
覚え方Rapid Application Development の頭文字。Rapid は「速い」という意味。
出題のポイント
- 混同注意RAD は試作やツールを使って短い期間でシステムを仕上げることを重視し、プロトタイピングモデルは要求を確かめて固めるために試作品を作る。
この用語の過去問 2 題 RAD →
要点
- ウォーターフォールモデルは工程の区切りが明確で進捗を管理しやすい一方、上流の誤りは発見が遅れるほど手戻りが大きい。
- プロトタイピングモデルは試作品を利用者に見せ、要求のあいまいさを早い段階で取り除く。
- スパイラルモデルは周を重ねるごとに開発範囲を広げ、途中で変わる要求にも合わせやすい。
- RAD は開発支援ツールや試作を使い、開発期間の短さを重視する。
この分野の過去問をすべて見る →