問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 种。每组需要 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 小时。