ITパスポート 2010年 春期 問33
問題文
ある開発プロジェクトでソフトウェア結合テストを終了し、システムの機能を確認するシステムテストを行っている。このシステムテストで、あるプログラムに不良が多発しているとの報告があった。プロジェクトマネージャが最初に行うべきこととして、最も適切なものはどれか。
選択肢
ア:システムテストを中断し、ソフトウェア結合テストからやり直す。
イ:テストの進捗に遅れが出ないようにするために、問題のあるプログラムのテスト要員を増やす。
ウ:問題のあるプログラムの品質を再評価し、システムテストへの影響を把握する。(正解)
エ:問題のあるプログラムをテスト対象から外し、プログラムを再作成する。
🔒 解説は解答すると表示されます
ソフトウェア結合テスト終了後のシステムテストで不良多発時の初動対応【ITパスポート 解説】
正解の理由
システムテスト(システム全体の機能や振る舞いを確認する試験)で特定プログラムに不良が多発した場合、プロジェクトマネージャ(PM:プロジェクト全体を管理する責任者)がまず行うべきは、そのプログラムの品質を再評価してシステムテスト全体への影響を把握することです。これは選択肢のウにあたります。
理由は単純です。問題の「原因」と「影響範囲」を理解せずに、作業を中断したり人を増やしたり、極端に対象を外したりすると、無駄な手戻りやスケジュール遅延、別の不具合誘発のリスクが高まります。まず影響を評価して優先度(どれを先に直すか)と対処方針(直す/回避策/テスト見直し)を決めるのが合理的です。
(用語)
- 結合テスト:部品やモジュール同士を組み合わせて動作を確認するテスト。
- システムテスト:システム全体の機能や性能を確認するテスト。
- テスト要員:テストを実施する人。
解法ステップ
- 事実確認(短時間のトリアージ)
- 不具合報告の内容(ログ、再現手順、発生頻度)を確認する。
- 再現と分類
- テスト担当者に再現させ、必ず再現手順を確立する。再現できない場合は誤検知や環境差の可能性あり。
- 影響範囲の評価(インパクト分析)
- 当該プログラムがシステム全体に与える影響(機能停止、データ消失、セキュリティ、性能低下など)を評価する。
- 優先順位付け(重大度と緊急度の判断)
- 影響が大きければ即時修正・回避策。軽微ならテストの継続と修正のバッチ化。
- 対策決定と実行
- 修正するなら担当と期限を決め、回避策ならテストスコープ・シナリオを調整。
- コミュニケーション
- スケジュール、リスク、決定事項を関係者(開発、テスト、顧客)に説明する。
- 監視と再評価
- 対策後の再テストで効果を確認し、必要なら方針を修正する。
この順序で動けば、無駄な手戻りや混乱を避けられます。
選択肢別の誤答解説
-
ア: 「システムテストを中断し、ソフトウェア結合テストからやり直す。」
- 中断して結合テストからやり直すのは、原因が明確で全体の結合に起因する場合に限られます。まずは原因と影響を評価せずにやり直すと、大きな工数と遅延を招く恐れがあります。行動が重すぎて非効率です。
-
イ: 「テストの進捗に遅れが出ないようにするために、問題のあるプログラムのテスト要員を増やす。」
- 人を増やす(マンパワー投入)は一見有効ですが、根本原因が未解明のままでは単に多くの人が同じ障害に当たるだけで無駄になります。まず問題の性質(再現性、原因)を明確にすることが先です。
-
ウ: 「問題のあるプログラムの品質を再評価し、システムテストへの影響を把握する。」
- 影響範囲と重大度を把握することで、最適な対処(即修正・回避・テスト継続の判断)ができます。工数やリスクの見積りもこの評価を基に行います。
-
エ: 「問題のあるプログラムをテスト対象から外し、プログラムを再作成する。」
- 一部のモジュールを丸ごとテストから外すのは、リスク回避にならず欠陥を見落とす可能性があります。また再作成は最も時間とコストがかかる選択であり、まずは軽微な修正で対応できるかを検討するべきです。
よくある誤解
- 「不具合が見つかったらすぐ全部やり直し」
- 初動でやり直すと工数が膨張します。まずトリアージして影響範囲を判断するのが合理的です。
- 「人を増やせば早く終わる」
- 人を増やすだけでは原因が解決しません。特にバグ調査は専門性が必要で、多人数化が逆に効率を下げる場合があります。
- 「1つのプログラムの不具合はそのプログラムだけに影響する」
- 実際は他のモジュールやデータ流れに波及することが多く、影響評価が重要です。
補足コラム
-
優先度(Priority)と重大度(Severity)の違い
- 重大度(Severity):不具合がシステムに与える技術的な影響度(例:クラッシュ=高、表示崩れ=低)。
- 優先度(Priority):いつ直すべきかのビジネス判断(例:リリース前なら優先度高)。
- この二つを組み合わせて対処方針を決めます。
-
使えるツール例(用語説明付き)
- バグ管理ツール(不具合を記録・追跡するツール)
- ログ解析ツール(問題発生時の記録を解析するツール)
- CI(継続的インテグレーション:開発中に自動でビルドやテストを行う仕組み)
こうしたツールは、原因特定と再現性確保に役立ちます。
FAQ
Q1: なぜ「影響評価」が最初なのですか?
A1: 影響評価により「どれが本当に緊急で重要か」が分かります。限られた時間とリソースを最も効果的に使うためです。
A1: 影響評価により「どれが本当に緊急で重要か」が分かります。限られた時間とリソースを最も効果的に使うためです。
Q2: どのくらい素早く評価すれば良いですか?
A2: トリアージ(一次評価)はできるだけ短時間(数時間〜1日)で行い、重大な影響が見えれば即対処チームを動かします。詳細評価はその後に深掘りします。
A2: トリアージ(一次評価)はできるだけ短時間(数時間〜1日)で行い、重大な影響が見えれば即対処チームを動かします。詳細評価はその後に深掘りします。
Q3: 人員増加は全くダメですか?
A3: 初動では推奨しませんが、原因が調査済みで単純なテストの工数不足が原因なら有効です。状況に応じた判断が必要です。
A3: 初動では推奨しませんが、原因が調査済みで単純なテストの工数不足が原因なら有効です。状況に応じた判断が必要です。
Q4: システムテスト中に見つかったバグは誰が直すべきですか?
A4: 原則は開発チームが修正します。PMは優先順位付けと調整、テストチームとの連携、顧客への説明を行います。
A4: 原則は開発チームが修正します。PMは優先順位付けと調整、テストチームとの連携、顧客への説明を行います。
関連キーワード: ソフトウェアテスト、結合テスト、システムテスト、テストマネジメント、品質管理、プロジェクトマネジメント、不具合管理、影響分析

\ せっかくなら /
ITパスポートを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

