DBデータベーススペシャリスト試験 午前Ⅱ

令和4年度秋期 データベーススペシャリスト 午前Ⅱ 問2

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

社員と年との対応関係をUMLのクラス図で記述する。二つのクラス間の関連が次の条件を満たす場合,a,bに入れる多重度の適切な組合せはどれか。ここで,“年”クラスのインスタンスは毎年存在する。 [条件] (1)全ての社員は入社年を特定できる。 (2)年によっては社員が入社しないこともある。
社員クラスと年クラスを入社年で関連付け,社員側をa,年側をbとしたUMLクラス図,及びa・bの多重度の組合せ表。
社員クラスと年クラスを入社年で関連付け,社員側をa,年側をbとしたUMLクラス図,及びa・bの多重度の組合せ表。

選択肢

  1. ア
    a:0..*,b:0..1
  2. イ
    a:0..*,b:1
  3. ウ
    a:1..*,b:0..1
  4. エ
    a:1..*,b:1
解き方のヒントを見る

関連の読み取り方を整える

図中の要素を個別に判断する前に、関連が示す対象の組合せと、各側で確認すべき観点を分けて整理しましょう。記号の見た目だけで結論を急がず、対応関係を丁寧に追うことが大切です。

この問題で問われていること

この問題では、関連線の両端について「どの対象同士を結ぶか」と「一方の対象から見た関係の範囲」を対応づけて読む手順に絞って確認しましょう。左右を固定せず、視点を明示して整理します。

視点

関連を読むときは、まず対象と関連線の対応を整理し、その後に両端を別々の視点から見ます。図の配置や線の長さではなく、各端に付された情報が何を表すかを落ち着いて確認してください。

確認ポイント

  • 関連の両端で、観察する対象を入れ替えても同じ読み方になっていないか確認する。
  • 各端に示された情報を、対象そのものの性質と関係の範囲に分けて確認する。
  • 図の記号を文章に置き換え、対象・関係・範囲の対応が一貫しているか確認する。
正解と解説を見る

正解

イ

解説

社員と年の関連では、各端の多重度がどちらのクラスから見た対応数を表すかを確認する。全社員に入社年があり、年によって社員がいない場合も許す条件から、図に合う組合せを判断できる。

理由

aは年一つから見た社員の対応数を表し、bは社員一人から見た年の対応数を表します。年クラスのインスタンスは毎年存在し、社員は入社年を特定できるため、条件に合う範囲をそれぞれ設定する。

比較

年によって社員が入社しない場合を許すことは、年から見た社員数の下限に関係する。一方、全ての社員が入社年を特定できることは、社員から見た年の対応数に関係する。

選択肢ア

これは不正解だよ。aの0..*は、年一つに対応する社員がいない場合も含めて複数を表す点で条件に合う。しかし、bの0..1では社員に入社年がない場合も許してしまい、全ての社員が入社年を特定できるという条件を満たさない。

選択肢イ(正解)

これは正解だよ。aの0..*は、一つの年に対応する社員が存在しない場合から複数存在する場合までを表す。bの1は、各社員に対応する入社年が必ず一つあることを表し、二つの条件を同時に満たしている。

選択肢ウ

これは不正解だよ。bの0..1では、社員に対応する入社年がない場合を許してしまうため、全ての社員が入社年を特定できるという条件に反する。また、aを1..*にすると、社員が入社しない年を表せない。

選択肢エ

これは不正解だよ。bの1は、全ての社員に入社年が一つある条件とは整合する。しかし、aの1..*はどの年にも少なくとも一人の社員が必要だと表すため、社員が入社しない年もあるという条件に反する。

学習のポイント

UML関連の多重度を、記号の位置と条件文から読み取る練習をする。

出典:独立行政法人 情報処理推進機構(IPA)令和4年度秋期 データベーススペシャリスト試験 午前Ⅱ 問2(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針