基本情報技術者 2009年 春期 午前(科目A) 問46
問題文
E-R図の説明はどれか。
選択肢
ア:オブジェクト指向モデルを表現する図である。
イ:時間や行動などに応じて、状態が変化する状況を表現する図である。
ウ:対象とする世界を実体と関連の二つの概念で表現する図である。(正解)
エ:データの流れを視覚的に分かりやすく表現する図である。
🔒 解説は解答すると表示されます
E-R図(実体関連モデル)【午前解説】
正解の理由
正解は ウ です。E-R図(Entity-Relationship図)はデータモデリングの概念図で、現実世界の要素を「実体(エンティティ)」として表し、それらの間の「関連(リレーションシップ)」や「属性」を図示します。E-R図の目的はデータの構造を概念的に整理することであり、選択肢ウの記述がこれに合致します。
解法ステップ
- 問題文のキーワード(E-R図)を確認し、「E」「R」「属性」などの用語を頭に浮かべる。
- 各選択肢のキーワードを見て、E-R図に関係する語(実体・関連・属性)が含まれる選択肢を探す。
- 明らかに振る舞いやプロセスを示す記述(状態図・DFD)やオブジェクト指向特有の記述を除外する。
- 残った選択肢を最終確認し、概念設計(データ構造)に合致する答えを選ぶ。
選択肢別の誤答解説
- ア: オブジェクト指向モデルを表現する図である。
→ 誤り。オブジェクト指向ではクラス図が主要で、メソッドや継承などを表現します。E-R図は概念データモデルです。 - イ: 時間や行動などに応じて、状態が変化する状況を表現する図である。
→ 誤り。これは状態遷移図やステートマシン図の説明であり、E-R図の主旨ではありません。 - ウ: 対象とする世界を実体と関連の二つの概念で表現する図である。
→ 正解。E-R図は実体(エンティティ)と関連(リレーションシップ)を中心に据えた概念モデルです。 - エ: データの流れを視覚的に分かりやすく表現する図である。
→ 誤り。データフロー図(DFD)がデータの流れや処理を示す図であり、E-R図とは目的が異なります。
よくある誤解
- 「E-R図はオブジェクト指向モデルの図」と誤解しやすい:クラス図はオブジェクト指向の構造や振る舞い(メソッド)も表す点で異なります。
- 「状態変化や振る舞いを示す図」と混同する:状態遷移図は状態やイベントを表現し、E-R図は状態変化を扱いません。
- 「データの流れを表す図と同じ」と思う:DFD(Data Flow Diagram)はプロセスやデータ流れを扱い、E-R図はデータ構造を扱います。
補足コラム
E-R図には表記法の違いがあり、Chen記法(実体は長方形、関連は菱形)やCrow's Foot記法(関係の多重度を視覚的に示す)がよく使われます。E-R図は概念設計→論理設計→物理設計という流れで使われ、実体はテーブル、属性はカラム、関連は外部キーや中間テーブルに対応します。
簡単なマッピング例(概念→SQL)
-- 実体 Customer と Order の概念をテーブルに変換
CREATE TABLE Customer (
customer_id INT PRIMARY KEY,
name VARCHAR(100)
);
CREATE TABLE Order (
order_id INT PRIMARY KEY,
order_date DATE,
customer_id INT,
FOREIGN KEY (customer_id) REFERENCES Customer(customer_id)
);
FAQ
Q1: E-R図とクラス図の違いは何ですか?
A1: E-R図はデータの概念構造(実体・属性・関連)に注目し、クラス図はオブジェクト指向でクラスの属性・操作・継承なども表現します。
A1: E-R図はデータの概念構造(実体・属性・関連)に注目し、クラス図はオブジェクト指向でクラスの属性・操作・継承なども表現します。
Q2: 関連に属性を持たせることはできますか?
A2: はい。多対多の関連などでは、関連自体に属性を持たせ、中間エンティティ(リレーションテーブル)として扱うことが一般的です。
A2: はい。多対多の関連などでは、関連自体に属性を持たせ、中間エンティティ(リレーションテーブル)として扱うことが一般的です。
Q3: E-R図は正規化と関係がありますか?
A3: 間接的に関係があります。E-R図で実体と属性を適切に整理することで、論理設計時の正規化が行いやすくなります。
A3: 間接的に関係があります。E-R図で実体と属性を適切に整理することで、論理設計時の正規化が行いやすくなります。
関連キーワード: E-R図、エンティティ、リレーションシップ、属性、データモデリング、概念設計、論理設計、Chen記法、Crow's Foot、正規化

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

