データベーススペシャリスト試験 2013年 午前201


UMLを用いて表した図のデータモデルの解釈として、適切なものはどれか。
問題画像
1件の“在庫取引”データを記録する際、2件の“在庫品”データも更新する。(正解)
“在庫品”データは、現在の在庫数量だけでなく、過去の在庫数量も保持する。
倉庫別、品目別に入出庫の状況を把握することはできない。
品目の異なる“在庫品”データ間で“在庫取引”データを記録できる。

解説

UMLを用いたデータモデルの解釈問題【午前2 解説】

要点まとめ

  • 結論:1件の「在庫取引」データ登録時に、移動元・移動先の2件の「在庫品」データを更新する必要があります。
  • 根拠:「在庫取引」は「在庫品」と1対多の関係を2つ持ち、移動元・移動先の在庫品を示すためです。
  • 差がつくポイント:リレーションシップのカーディナリティと制約注釈から、在庫移動の仕組みを正確に理解することが重要です。

正解の理由

選択肢アは、「在庫取引」エンティティが移動元・移動先の「在庫品」エンティティとそれぞれ1対多の関係を持つことから、1件の取引で2つの在庫品データ(移動元と移動先)を更新する必要があると正しく述べています。
他の選択肢は、モデルの関係性や制約に反しているため誤りです。

よくある誤解

「在庫取引」が1つの「在庫品」だけに関係すると誤解し、移動元・移動先の両方を更新しないケースが多いです。
また、品目間の移動が許されない制約を見落とし、異なる品目間の取引を許容する誤解もあります。

解法ステップ

  1. エンティティ間のリレーションシップを確認し、「在庫取引」と「在庫品」が2つの関係(移動元・移動先)で結ばれていることを把握する。
  2. カーディナリティを確認し、「在庫取引」1件に対し「在庫品」が2件関与することを理解する。
  3. 制約注釈から、品目間の移動のみ許されることを確認し、品目が異なる在庫品間の取引は不可と判断する。
  4. 選択肢の内容とモデルの関係性を照合し、正しいものを選択する。

選択肢別の誤答解説

  • ア: 正解。1件の「在庫取引」で移動元・移動先の2件の「在庫品」データを更新する必要がある。
  • イ: 「在庫品」は現在の在庫数量のみを属性として持ち、過去の数量は保持しないため誤り。
  • ウ: 倉庫別・品目別の入出庫状況は「在庫品」と「在庫取引」の関係から把握可能であり誤り。
  • エ: 制約注釈で「同一品目間の移動のみ許す」と明示されているため、品目の異なる在庫品間の取引は不可で誤り。

補足コラム

UMLのER図では、エンティティ間のリレーションシップとカーディナリティを正確に読み取ることが重要です。特に「1対多」や「多対多」の関係は、データ更新の対象や制約を理解する鍵となります。
また、制約注釈は業務ルールを反映しているため、モデル解釈時に必ず確認しましょう。

FAQ

Q: 「在庫取引」が「在庫品」と2つの関係を持つ理由は何ですか?
A: 在庫の移動元と移動先をそれぞれ別の「在庫品」として管理するためです。
Q: 制約注釈の「同一品目間の移動だけを許す」はどういう意味ですか?
A: 在庫取引は同じ品目コードの在庫品間でのみ行われ、異なる品目間の移動は許されません。

関連キーワード: UML, ER図, データモデル, リレーションシップ, カーディナリティ, 制約注釈, 在庫管理, データベース設計
← 前の問題へ次の問題へ →

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