開発技術

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

マネジメント系開発技術計算問題難易度:normal
あるプログラムには分岐の方向(各判定の真・偽)が合計で10方向ある。設計したテストケースを実行した結果、そのうち真側が4方向、偽側が4方向の計8方向が実行された。このプログラムの分岐網羅率(デシジョンカバレッジ)は何%か。
40%
ちょうど80%
50%
90%(9方向実行とした場合)
正解
ちょうど80%

分岐網羅率は『実行された分岐方向数÷全分岐方向数』で求める。実行されたのは真側4と偽側4の計8方向、全体は10方向なので8÷10=0.80、すなわち80%が正しい。残る2方向が未実行である。

?選択肢ごとの解説

ア ×40%は真側4方向だけを分子にし偽側を数え漏らした場合に生じる誤りで、実際は真偽合わせて8方向である。
イ ○分岐網羅率は『実行された分岐方向数÷全分岐方向数』で求める。実行されたのは真側4と偽側4の計8方向、全体は10方向なので8÷10=0.80、すなわち80%が正しい。残る2方向が未実行である。
ウ ×50%は判定の個数を5と数えてそのうち半分とした、あるいは別の母数で割った誤りである。
エ ×90%は9方向実行した場合の値で、本問は8方向なので過大である。

くわしく

分岐網羅では1つの判定につき真・偽の2方向を別個の網羅対象として数える点が重要である。本問の全10方向は判定5個分(各2方向)に相当する。命令網羅より強い基準であり、未実行の2方向に対応する入力を特定して補うことでカバレッジを高める。条件網羅とは独立であり、分岐網羅100%でも各単純条件の真偽が網羅されるとは限らない。

本番での押さえどころ

試験のコツ

分岐網羅の分母は『判定数×2(真偽の方向数)』。実行した方向数を分子に取る。

覚え方

分岐は分かれ道、行き先(真・偽)を1本ずつ数える、と方向単位を意識する。

よくある誤り

判定の個数を分母にしてしまい、真偽2方向を1つと数える誤りが多い。分岐網羅は方向単位で数える。

開発技術の他の問題

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

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

無料ではじめる →

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

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