問題
問50
システム開発プロジェクトの工程を、システム要件定義,システム設計,プログラミング,テストの順に進めるとき、a~dのうち、品質の管理を実施する必要がある工程として、適切なものだけを全て挙げたものはどれか。
- a システム要件定義
- b システム設計
- c プログラミング
- d テスト
- a, b, c, d
- b, c, d
- c, d
- d
[出典:ITパスポート試験 平成28年度春期 問50]
正解
正解は「ア」です。
解説
正解は「ア:a, b, c, d」です。システム開発プロジェクトにおいて、品質の管理はすべての工程で必要とされます。これは、それぞれの工程が次の工程の土台となるため、どの段階で品質に問題が発生しても、最終的なシステムの品質に影響を及ぼし、手戻りやコストの増加につながるためです。
例えば、家を建てることを考えてみましょう。まず、どんな家が欲しいか話し合う「要件定義(a)」の段階で、家族全員の要望を正確に聞き取り、問題がないかを確認することが重要です。次に、その要望に基づいて家の設計図を描く「システム設計(b)」の段階で、設計が適切か、安全基準を満たしているかなどを確認します。そして、設計図に従って実際に家を建てる「プログラミング(c)」の段階で、一つ一つの作業が丁寧に、正確に行われているかを監督します。最後に、家が完成した後に実際に住んでみて、問題なく機能するかを確認する「テスト(d)」を行います。
このように、システム開発も同様に、すべての工程で計画的に品質を管理し、問題があれば早期に発見・修正することで、最終的に利用者が満足できる高品質なシステムを効率的に開発することができます。
イ(b, c, d):
システム要件定義の工程は、その後の設計や開発の基礎となるため、ここで品質管理を怠ると後工程での手戻りや問題が大きくなる可能性が高いです。
ウ(c, d):
システム要件定義とシステム設計は、プログラミングやテストの前提となる重要な工程であり、これらの段階での品質管理は不可欠です。
エ(d):
テスト工程だけでなく、要件定義、設計、プログラミングといった前工程すべてにおいて、品質の管理が必要です。早期に問題を発見することで、修正コストを低減できます。
難易度
この問題は、システム開発の各工程における品質管理の重要性を問うもので、比較的理解しやすい基本的な知識が問われています。ITパスポート試験の学習者にとっては、開発ライフサイクル全体の流れを把握していれば容易に解答できるでしょう。特に、どの工程も品質確保に不可欠であるという考え方を知っていれば、迷うことなく正解にたどり着けるレベルです。
用語補足
システム要件定義:
ユーザーが「システムに何をさせたいか」という要望を明確にし、文書化する最初の工程です。例えば、新しいオンラインストアを作るとして、「商品を検索できて、カートに入れて、クレジットカードで支払いがしたい」といった具体的な機能を定めることですね。
システム設計:
要件定義で決まった内容を基に、システムがどのように動作するか、どのような部品(モジュール)で構成されるか、どのようにデータが流れるかなどを具体的に計画する工程です。例えば、オンラインストアで決まった機能を、どのデータベースに保存し、どのプログラムで処理するかといった「仕組み」を設計することです。
プログラミング:
システム設計で作成された計画書(設計書)に基づいて、実際にコンピュータが実行できるプログラムコードを作成する工程です。設計図に従って家を建てる作業に例えられます。
テスト:
作成されたシステムやプログラムが、要件通りに正しく動作するか、品質基準を満たしているかを確認する工程です。例えば、オンラインストアが実際に商品を検索でき、カートに入れて、問題なく購入できるかを試してみることです。
対策
この問題のポイントは、システム開発の各工程が独立しているのではなく、密接に連携しており、どの工程においても品質管理が不可欠であるという認識を持つことです。特に、要件定義や設計といった上流工程での品質が、下流工程の効率や最終製品の品質に大きく影響することを理解しておくことが重要です。それぞれの工程でどのような活動が行われ、なぜ品質管理が必要なのかを具体的にイメージできるよう学習を進めましょう。

