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

システムアーキテクト 2012年 午前2 問10


問題文

学生レコードのデータが正しいかどうかを検証したい。学生レコードを構成するデータ項目には、学籍番号、出身高校コード、学年が含まれ、それぞれを入力とする原因-結果グラフは図のとおりである。テストケースを設計するために、このグラフから作成した決定表として正しいものはどれか。ここで、原因-結果グラフの要素間の関係には、次の表記を用いる。
システムアーキテクト 2012年 午前2 問10の問題画像システムアーキテクト 2012年 午前2 問10の選択肢の画像

選択肢

ア:
イ:
ウ:(正解)
エ:

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

原因-結果グラフの決定表【午前2解説】

正解の理由

図では、三つの原因(正しい学籍番号A・正しい出身高校コードB・正しい学年C)が、それぞれ直線(同値)で「学生レコードを受け付ける」に論理積(∧)でつながり、波線(否定)で「学生レコードを受け付けない」に論理和(∨)でつながっています。式にすると次のとおりです。 つまり、三つとも正しいときだけ受け付け、どれか一つでも正しくなければ受け付けません。決定表では、1列目を「A・B・CがすべてY → 受け付ける」とし、残りの列を「AがN」「BがN」「CがN」(ほかの原因は「–」=問わない)→ 受け付けないとすれば、すべての場合を表せます。この形になっているのはウです。

解法ステップ

  1. 凡例から、直線は同値、波線は否定、「∧」は論理積、「∨」は論理和を表すことを確認する。
  2. 「受け付ける」には三つの原因が直線でつながり、∧で結ばれている → A∧B∧C。
  3. 「受け付けない」には三つの原因が波線でつながり、∨で結ばれている → ¬A∨¬B∨¬C。
  4. 決定表で、受け付ける列は「Y・Y・Y」、受け付けない列は「どれか一つがN(ほかは–)」になっているものを選ぶ。

選択肢別の誤答解説

  • ア:1列目が「N・N・N → 受け付ける」、残りの列が「Y → 受け付けない」となっており、受け付ける条件と受け付けない条件が逆です。
  • イ:1列目が「Y・N・N → 受け付ける」となっており、出身高校コードや学年が正しくないのに受け付けてしまいます。
  • ウ:「Y・Y・Y → 受け付ける」と、「学籍番号がN」「出身高校コードがN」「学年がN」のいずれか → 受け付けない、になっており、式と一致します。
  • エ:3列目が「出身高校コードがY → 受け付けない」となっており、否定(波線)の扱いが誤っています。

よくある誤解

波線を「受け付ける」側への接続と読んだり、∧・∨の記号がどちらの結果に付いているかを取り違えたりしやすい問題です。∧は「受け付ける」側、∨は「受け付けない」側に付いており、同じ三つの原因が両方の結果につながっている点を押さえると読み違えません。

補足コラム

原因-結果グラフは、入力条件(原因)と出力(結果)の論理関係を図にしたもので、そこから決定表を作るとテストケースを漏れなく、かつ少ない数で設計できます。本問のように「受け付けない」が「どれか一つでも不正」という論理和の場合、不正な項目を一つずつ変えた列を作れば足り、8通りの組合せをすべて並べる必要はありません。

FAQ

Q: 決定表の「–」は何を意味しますか? A: その条件がYでもNでも結果が変わらない(判定に関係しない)ことを表します。
Q: 二つ以上の項目が同時に正しくない場合のテストは不要ですか? A: 論理和なので、どれか一つがNであれば結果は同じ「受け付けない」になります。決定表としては一つずつの列で十分ですが、実際のテストで組合せを確認するかどうかは、テストの方針によります。

関連キーワード: 原因結果グラフ、決定表、論理積、論理和、否定、テストケース設計
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

システムアーキテクトを
クイズ形式で学習しませんか?

クイズ画面へ遷移する→

すぐに利用可能!

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

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