問37
頻出度★★☆
インタフェースを一つだけもつモジュールが 6 個ある。これらのモジュールが相互に結合できるかを試験したい。1 組のモジュールの結合テストに 4 時間を要するとき, 全ての組合せのテストに合計何時間掛かるか。
この問題の解説と、これまでの解答の記録です。
インタフェースを一つだけもつモジュールが 6 個ある。これらのモジュールが相互に結合できるかを試験したい。1 組のモジュールの結合テストに 4 時間を要するとき, 全ての組合せのテストに合計何時間掛かるか。
20 は、組数を 5 組と数えて 5×4 = 20 とした場合の値。6 個を一列につないだときの隣どうしの接続数 (n−1 = 5) にあたり、「相互に」= 全ての 2 個の組合せを試験するという条件を満たさない。全組合せは 15 組なので誤り。
24 は 6×4 = 24、すなわちモジュール 1 個につき 1 回テストすると考えた値。結合テストは「1 組 (2 個)」単位で行うので、数えるべきはモジュール数ではなく組の数 15 である。したがって誤り。
正解 各モジュールはインタフェースを一つだけもつので、結合テストは「2 個のモジュールを 1 組にした組合せ」ごとに 1 回ずつ行う。6 個から 2 個を選ぶ組合せの総数は C(6,2) = (6×5)÷(2×1) = 15 通り。1 組あたり 4 時間を要するので、合計は 15 × 4 = 60 時間となる。したがって「ウ (60)」が正しい。順序は関係しない (A と B の組は B と A の組と同じテスト) ため、順列ではなく組合せで数える点がポイント。
120 は順列 6P2 = 6×5 = 30 組として 30×4 = 120 とした値。A と B の結合テストと B と A の結合テストは同一であり、順序を区別して二重に数えているため過大。正しくは 2 で割った C(6,2) = 15 組で 60 時間。