平成22年度 秋期 ITパスポート試験 問48 解説 システム開発とテストの対応
システム開発プロセスを要件定義,外部設計,内部設計,プログラミングに分け, テストの種類を運用テスト,結合テスト,システムテスト,単体テストに分けたとき, 図の a〜c に入れる字句の適切な組合せはどれか。
- ア 運用テスト 結合テスト システムテスト
- イ 結合テスト システムテスト 運用テスト ✓ 正答
- ウ システムテスト 運用テスト 結合テスト
- エ システムテスト 結合テスト 運用テスト
解説
この問題は、システム開発における「V字モデル」の対応関係を把握しているかどうかを問うものです。開発工程(左側)とテスト工程(右側)は、粒度の細かい順から対応しており、下から順に「単体テスト」「結合テスト」「システムテスト」「運用テスト」の順で並びます。この順序に基づき、空欄a、b、cにそれぞれ結合テスト、システムテスト、運用テストを当てはめるのが正解です。
V字モデルとは何か
V字モデルとは、開発工程とテスト工程を左右に配置し、それぞれの段階で何を検証すべきかを明確にしたシステム開発の標準的なモデルです。
左側の開発プロセスが下へ行くほど詳細化(設計)していくのに対し、右側のテストプロセスは下から上へ向かって、段階的にシステムを統合し、検証していく構造になっています。 開発側で作成した設計書に対し、テスト側ではその設計が正しく反映されているかを検証します。そのため、対応する階層同士が重要になります。
テストの段階的な目的と対応関係
各工程が何を確認するためのものか、その本質を理解することで丸暗記を防げます。
・単体テスト: プログラムの最小単位(関数やクラスなど)が、内部設計通りに動くか確認します。 ・結合テスト: 複数のプログラムを組み合わせ、内部設計で決めた機能間の連携が正しいかを確認します。 ・システムテスト: システム全体として、外部設計(要件定義の内容をユーザーに見える形にしたもの)通りに動くかを確認します。 ・運用テスト(受入テスト): 要件定義で決めたビジネス上の要求を満たしているか、実際のユーザー環境で確認します。
試験問題としての構造と実務への応用
この問題は、IT開発における「品質の作り込み」という重要な考え方を試験しています。開発の初期段階(要件定義)で決めたことが、最終的なテスト(運用テスト)で正しく実現されているかを保証する仕組みがV字モデルです。
実務においては、この対応関係を意識することが極めて重要です。例えば、結合テストでバグが多発した場合、「内部設計」に何らかの不備や認識の齟齬があったのではないか、といった振り返りが可能になります。開発とテストは別物ではなく、設計と対になるものとして管理することが、高品質なシステム開発の基本となります。