戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

ITパスポート 2011年 秋期 37


問題文

インタフェースを一つだけもつモジュールが6個ある。これらのモジュールが相互に結合できるかを試験したい。1組のモジュールの結合テストに4時間を要するとき、 全ての組合せのテストに合計何時間掛かるか。

選択肢

20
24
60(正解)
120

🔒 解説は解答すると表示されます

モジュールの結合テスト時間の計算【ITパスポート 解説】

正解の理由

ポイント:
  • モジュール(機能のまとまり)同士が正しく連携するかを確認する結合テスト(モジュール同士が正しくやり取りできるかを見るテスト)を行います。
  • インタフェース(モジュールが接続・やり取りするための入り口)がそれぞれ1つであっても、モジュールAとモジュールBの組合せは A–B の1通りで、B–A を別物としません(順序を区別しない組合せ)。
  • 6個のモジュールから2つを選ぶ組合せは 通り。
  • 1組あたり4時間なので、合計は 時間となります。

解法ステップ

  1. 問題を整理する
    • モジュール:6個
    • テスト対象:モジュールの“組合せ”(順序は無視)
    • 1組の結合テスト時間:4時間
  2. 組合せの数を求める
    • 2つを選ぶ組合せの式:
    • のとき:
  3. 合計時間を計算する
    • 時間

選択肢別の誤答解説

  • ア: 20
    • もし20時間とするなら、組合せの数を5と誤って考えた可能性があります(例:各モジュールを1回だけテストすれば良いと誤解)。しかし実際はモジュール同士の全てのペアをチェックする必要があり、5では不足します。
  • イ: 24
    • 24時間は「6組 × 4時間」などと数え、各モジュールを1回ずつしかテストしない考え方に起因する誤りです。テスト対象は「モジュール同士のペア」なので、6では足りません。
  • : 60 ← 正解
  • エ: 120
    • 120時間は順序を区別して数えた場合の誤りです。具体的には 6×5 = 30(順序を考える順列)を数え、30×4 = 120 としてしまうミス。A–B と B–A を別々にテストする必要は通常ありません(双方向の接続確認を別個に行うという明示がない限り)。

よくある誤解

  1. 順序を区別してしまう(A–B と B–A を別とする)
    • 多くの受験者は「2つ選ぶ」と聞いて順序も考えがちですが、接続テストでは通常順序は無視します。
  2. 自分自身との組合せ(A–A)を含めてしまう
    • 「1組のモジュール」とは通常異なる2モジュールの組合せを指します。自己との結合は問題文に明示がない限り考えません。
  3. 「1回テストすれば十分」として各モジュールを1回だけ数える
    • モジュール間の相互作用はペアごとに異なるため、各ペアを個別に検証する必要があります。

補足コラム

  • 一般式: モジュールが 個、1組当たりのテスト時間が 時間なら、合計時間は です。今回の例では
  • もし「接続の向き(どちらから呼ぶか)が重要」で、A→B と B→A を別々にテストする必要があれば、組合せではなく順列を使います。順序を区別する場合の数は です(今回だと 組で、30×4=120 時間)。
  • 小さな例:モジュールが4個なら組合せは 通り。1組4時間なら合計24時間です。直感確認に便利です。

FAQ

Q1. もしモジュールにインタフェースが複数あったら?
A1. 「インタフェースが複数ある=接続のパターンが増える」ため、どのインタフェース同士を結合するかで数え方が変わります。問題文で「1つだけ」とあるため単純化されています。複数ある場合は「インタフェースごとのペア数」を個別に数えます。
Q2. 自己接続(A–A)は数えますか?
A2. 問題文に特に指示がない限り数えません。自己接続は通常「同じモジュール内のテスト(単体テスト)」に該当します。
Q3. 時間がモジュールごとに異なる場合は?
A3. その場合は各ペアごとに必要時間を合計します。等しいなら一律で掛け算できますが、バラバラなら個別に合計します。

関連キーワード: 結合テスト、組合せ計算、コンビネーション、モジュールテスト、インタフェース、順列と組合せ、テスト工数、ソフトウェア検証、工数見積もり
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

ITパスポート
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について