SAシステムアーキテクト試験 午前Ⅱ
令和元年度秋期 システムアーキテクト 午前Ⅱ 問21
問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。
問題
選択肢
- ア{A,B} → B又は{A,B} → Aが成立していること
- イA → B → C又はB → A → Cが成立していること
- ウA → C及びB → Cのいずれも成立しないこと
- エC → {A,B}が成立しないこと
解き方のヒントを見る
関係の整理軸を丁寧に確認する
この分野では、属性どうしの依存関係を手掛かりに、与えられた定義と条件がどの範囲で成り立つかを順に整理します。用語の印象だけで判断せず、対象と前提の対応を確認しましょう。
この問題で問われていること
注目する点は、問題中で示された依存関係が、どの属性や条件を前提として述べられているかです。関係の向きと対象範囲を読み取り、定義との対応だけを丁寧に確認してください。
視点
判断を急がず、記号や用語を対象・条件・関係に分けて読みます。そのうえで、設問が求める整理の単位と、各記述が示す範囲が一致しているかを照合します。
確認ポイント
- 依存関係を述べている属性の組合せと、前提になっている属性を区別できているか
- その関係が全体の条件なのか、特定の条件下だけの記述なのかを確認する
- 読み取った関係を、設問で問われている定義や整理の単位と照合する
正解と解説を見る
正解
ウ
解説
完全関数従属性とは、複合属性の左辺全体が右辺を決定する一方で、左辺のどの一部を取り出しても右辺を決定できない関係をいう。
理由
{A,B} → Cが完全関数従属性を満たすには、AとBを組み合わせた全体ではCが決まり、Aだけ、またはBだけではCが決まらない必要がある。
比較
左辺に含まれる属性を右辺へ写す自明な従属性や、逆向きの従属性は、Cが左辺の一部から決まるかという判定とは異なる。
選択肢ア
これは不正解だよ。{A,B} → Bや{A,B} → Aは、左辺に含まれる属性を右辺に取り出す自明な関数従属性であり、通常成立する。完全関数従属性を判定するには、CがAまたはBだけから決まるかを確認する必要があるため、この条件では判定できない。
選択肢イ
これは不正解だよ。A → B → Cが成立すると、推移律によりA → Cが導かれる。同様にB → A → CならB → Cが導かれる。いずれも左辺の一属性だけでCを決められることを示すため、複合属性全体を必要とする完全関数従属性の条件とは反対である。
選択肢ウ(正解)
これは正解だよ。完全関数従属性とは、{A,B}全体ではCを決められる一方、左辺の真部分集合だけではCを決められない状態である。真部分集合に当たるA、BのどちらからもCが決まらないという条件が、複合属性全体への依存を表している。
選択肢エ
これは不正解だよ。C → {A,B}は、右辺のCから左辺の属性AとBを決める逆向きの関数従属性である。完全関数従属性の判定対象は{A,B} → Cにおいて左辺の一部を削れるかどうかなので、この条件の成立・不成立だけでは判定できない。
学習のポイント
部分関数従属性と完全関数従属性の違いを、左辺の削除可能性から判断する。
出典:独立行政法人 情報処理推進機構(IPA)令和元年度秋期 システムアーキテクト試験 午前Ⅱ 問21(公式資料:問題冊子(PDF) / 解答例)
関連する過去問一覧
IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針