応用情報技術者 2024年 秋期 午前2 問29
問題文
次のオブジェクト図 (インスタンスを表す図) に対応する概念データモデルはどれか。ここで、オブジェクト図及び概念データモデルの表きにはUMLを用いる。


選択肢
ア:
イ:(正解)
ウ:
エ:
オブジェクト図から概念データモデルへの変換【午前2 解説】
要点まとめ
- 結論:地域は複数の仕入先を持ち、仕入先は複数の仕入を持つため「地域1対仕入先*」「仕入先1対仕入*」の関係が正しいです。
- 根拠:オブジェクト図で「東京」「大阪」など地域が複数の仕入先に直線で結ばれ、仕入先から複数の仕入へ線が伸びていることから多重度を判断します。
- 差がつくポイント:多重度の向きと数を正確に読み取り、矢印なしの直線で表現された関係を正しく理解することが重要です。
正解の理由
選択肢イは「地域1対仕入先*」「仕入先1対仕入*」「仕入側*対部品1」という多重度を正しく表現しています。
オブジェクト図では「東京」「大阪」など1つの地域に複数の仕入先(11、25、37など)が存在し、仕入先は複数の仕入(#01~#06)を持っています。
また、仕入は1つの部品に対応しているため、部品側は「1」となります。これらの関係性を正確に反映しているのが選択肢イです。
オブジェクト図では「東京」「大阪」など1つの地域に複数の仕入先(11、25、37など)が存在し、仕入先は複数の仕入(#01~#06)を持っています。
また、仕入は1つの部品に対応しているため、部品側は「1」となります。これらの関係性を正確に反映しているのが選択肢イです。
よくある誤解
- 地域と仕入先の関係を「1対1」と誤認し、仕入先が1つだけと考える誤り。
- 仕入先と仕入の関係を逆に捉え、多重度を誤って設定すること。
- 部品と仕入の関係を多対多と誤解し、部品側の多重度を「*」にする誤り。
解法ステップ
- オブジェクト図の各矩形(インスタンス)をクラス(概念データモデルのエンティティ)に対応付ける。
- 地域と仕入先の関係を確認し、1つの地域に複数の仕入先が存在することから「地域1対仕入先*」と判断。
- 仕入先と仕入の関係を確認し、仕入先1つに複数の仕入があるため「仕入先1対仕入*」と判断。
- 仕入と部品の関係を確認し、1つの仕入は1つの部品に対応するため「仕入側*対部品側1」と判断。
- 各関係の多重度を選択肢と照合し、正しいものを選ぶ。
選択肢別の誤答解説
- ア:地域と仕入先の関係が「1対1」となっており、複数の仕入先が存在するオブジェクト図と矛盾。
- イ:正解。多重度がオブジェクト図の関係を正確に反映している。
- ウ:仕入先と仕入の関係が逆で、「仕入先*対仕入1」となっており、仕入先1つに複数の仕入がある図と合わない。
- エ:地域と仕入先の関係が「*対*」となっており、地域は1つの仕入先に複数存在しないため誤り。
補足コラム
UMLのオブジェクト図はインスタンス間の関係を示し、概念データモデルはクラス間の関係を示します。
多重度は「1」「*」などで表し、1は必ず1つ、*は0個以上を意味します。
矢印がない直線は双方向の関係を示し、多重度の向きで関係の数を判断します。
多重度は「1」「*」などで表し、1は必ず1つ、*は0個以上を意味します。
矢印がない直線は双方向の関係を示し、多重度の向きで関係の数を判断します。
FAQ
Q: オブジェクト図の直線に矢印がない場合、関係の向きはどう判断しますか?
A: 矢印がない場合は双方向の関係と考え、多重度の数値で関係の範囲を判断します。
A: 矢印がない場合は双方向の関係と考え、多重度の数値で関係の範囲を判断します。
Q: 多重度「*」は具体的に何を意味しますか?
A: 「*」は0個以上の複数を意味し、対象が複数存在する可能性があることを示します。
A: 「*」は0個以上の複数を意味し、対象が複数存在する可能性があることを示します。
Q: 仕入と部品の関係で「1対1」ではなく「*対1」となる理由は?
A: 1つの部品が複数の仕入に使われる可能性があるため、仕入側は「*」、部品側は「1」となります。
A: 1つの部品が複数の仕入に使われる可能性があるため、仕入側は「*」、部品側は「1」となります。
関連キーワード: UML, オブジェクト図、概念データモデル、多重度、クラス図、データモデリング、関係性分析

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

