開発技術

基本情報技術者試験ソフトウェアテスト」の問題

マネジメント系開発技術計算問題難易度:normal
判定文 if (A かつ B) において、AとBはそれぞれ真・偽をとる独立した単純条件である。この判定を複数条件網羅(各単純条件の真偽の全組合せを網羅)で完全にテストするために必要となる、AとBの真偽の組合せの最小数は何通りか。
2通り
3通り
4通り
8通り
正解
4通り

複数条件網羅は各単純条件の真偽の全組合せを尽くす基準である。条件はAとBの2個で各々2値をとるため、組合せ数は2の2乗=4通り(真真・真偽・偽真・偽偽)となり、これが必要最小数である。

?選択肢ごとの解説

ア ×2通りは分岐網羅(判定全体の真・偽)で足りる数であり、各条件の全組合せを尽くす複数条件網羅には不足する。
イ ×3通りは組合せの一つを省いた数で、4つの組合せのいずれかが欠けるため複数条件網羅を満たさない。
ウ ○複数条件網羅は各単純条件の真偽の全組合せを尽くす基準である。条件はAとBの2個で各々2値をとるため、組合せ数は2の2乗=4通り(真真・真偽・偽真・偽偽)となり、これが必要最小数である。
エ ×8通りは条件が3個(2の3乗)の場合の組合せ数であり、本問は条件2個なので過大である。

くわしく

複数条件網羅に必要な組合せ数は単純条件数nに対し2のn乗で増える。条件2個なら4、3個なら8と指数的に増大するため、現実には全網羅が困難になりやすく、より少ないケースで効果を狙うMC/DC(改良条件判定網羅)が用いられることもある。本問は基本のn=2を問い、4通りが答えとなる。

本番での押さえどころ

試験のコツ

複数条件網羅の必要数は『2の(単純条件数)乗』。条件2個なら4、3個なら8と即計算する。

覚え方

各条件のオン・オフを真理値表の行と捉え、行数=2のn乗、と表で覚える。

よくある誤り

分岐網羅(2通り)と混同して2を選ぶ誤りが多い。複数条件網羅は判定全体ではなく条件の全組合せである点を区別する。

開発技術の他の問題

この問題を、AIの8-ways解説つきで。

基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。

無料ではじめる →

ukamiru 過去問 · 基本情報技術者試験 · fe-a2-0074

【基本情報技術者試験】ソフトウェアテストの問題 — 解答・解説|ukamiru 過去問