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

応用情報技術者 2014年 春期 午前226


問題文

UMLを用いて表した部門と社員の関係を表すデータモデルの説明のうち、適切なものはどれか。
応用情報技術者 2014年 春期 午前2 問26の問題画像

選択肢

社員が1人も所属していない部門は登録できない。
社員は複数の部門に所属することができる。
どの部門にも所属しない社員は登録できない。(正解)
一つの部門に複数の社員は所属できない。

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

多重度とナビゲーション【午前2解説】

正解の理由

図では、部門側の結合点に「1」、社員側の結合点に「」と記されています。UMLの多重度は「ある側の1インスタンスに対して、反対側にいくつのインスタンスが対応できるか」を示します。つまり部門側の「1」は「各社員(反対側のインスタンス)が所属できる部門はちょうど1つである」ことを表し、社員側の「」は「各部門には0個以上の社員が対応し得る」ことを表します。したがって、社員がどの部門にも所属しない(所属数が0である)ことは許容されず、選択肢の が正しいです。
なお、線上の黒塗り三角矢印は関連の向き(ナビゲーション)を示すに過ぎず、多重度の値や必須性を変えるものではありません。

解法ステップ

  1. 各結合点にある多重度(数や「」)を確認する。図は部門側が「1」、社員側が「」。
  2. 多重度の意味を思い出す:「その位置に書かれたクラスのインスタンスが、反対側の1インスタンスに対して何個あり得るか」を示す。
  3. 具体的に読む:
    • 部門側「1」→ 1(部門) = 1つの部門(反対側の社員1人に対して)→ つまり各社員はちょうど1つの部門に所属。
    • 社員側「*」→ 1(社員)に対して0個以上の社員(反対側の部門に対して)→ つまり各部門は多数の社員を持てる(0も許容)。
  4. 選択肢と照合して矛盾がないものを選ぶ。

選択肢別の誤答解説

  • ア: 「社員が1人も所属していない部門は登録できない。」
    • 誤り。社員側の多重度「」は通常 0.. を意味するため、社員がゼロでも部門は成立する(0人でも登録可能)。
  • イ: 「社員は複数の部門に所属することができる。」
    • 誤り。社員が複数部門に所属可能にするには、部門側の多重度(部門の結合点に記された値)が '*' でなければなりません。図では部門側が「1」なので、社員は複数の部門に所属できません。
  • : 「どの部門にも所属しない社員は登録できない。」
    • 正しい。部門側に「1」があるため、各社員は少なくとも1つの部門に所属する必要がある(1..1)。
  • エ: 「一つの部門に複数の社員は所属できない。」
    • 誤り。社員側が「」なので、一つの部門に複数の社員が所属することは可能である(0.. または1..* のいずれかだが、図では 0 を許容することが一般的)。

よくある誤解

  • 多重度が「どちらの側」を指すか混同する:多重度は「その記号が書かれた側のクラスが、反対側の1インスタンスに対して何個あり得るか」を示す点を忘れやすい。
  • '' を「必ず1つ以上」と誤解する:デフォルトの '' は 0..*(ゼロを含む)と読むのが一般的で、必須とは限らない。
  • 矢印(三角)が継承や合成を意味すると誤認する:図上の矢印は関連の向き(ナビゲーション)を示す場合がある。継承は通常図形や位置が異なる(空の三角形で示す等)。

補足コラム

  • 多重度の表記例:
    • 0..1:ゼロか1つ
    • 1:必ず1つ(1..1)
    • 0..* または *:ゼロ以上(無制限)
    • 1..*:少なくとも1つ以上
  • ナビゲーション矢印は「どちらの方向から参照するか」を示すだけで、関係の必須性(最小値)や最大値には直接影響しません。
  • 実務では要件定義時に最小値を明確に書く(0か1か)ことで、DBのNULL許容や外部キー必須性に直結します。

FAQ

Q: 多重度が「1」と書かれているとき、必ずその関係が必須になるのですか?
A: はい。「1」はその側の個数が正確に1つであることを示します。反対側のインスタンスに対して少なくとも1つ(かつ最大1つ)対応します。
Q: '' は常に 0.. ですか?
A: UMLでは通常 '' は 0.. と同義に扱います。必ず1以上にする場合は明示的に 1..* と書きます。
Q: 図の矢印は継承ではないのですか?
A: 問題のように関連線の途中に付いた三角矢印はナビゲーション(関連の向き)を示すケースが多く、継承(generalization)はクラス同士を接続する別形式の矢印(主に空の三角形)で表されます。図の文脈で判断してください。

関連キーワード: 多重度、クラス図、ナビゲーション、関連(association)、UML
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

応用情報技術者
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

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

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