ITパスポート 2017年 春期 問87
問題文
E-R図に関する記述として、適切なものはどれか。
選択肢
ア:構造化プログラミングのためのアルゴリズムを表記する。
イ:作業の所要期間の見積りやスケジューリングを行い、工程を管理する。
ウ:処理手順などのアルゴリズムを図で表記する。
エ:データベースの設計に当たって、データ間の関係を表記する。(正解)
🔒 解説は解答すると表示されます
E-R図に関する記述【ITパスポート 解説】
正解の理由
選択肢の中で、E-R図は「データベースの設計に当たって、データ間の関係を表記する」ものを指します。E-R図は E-R図(Entity-Relationship Diagram:エンティティ(実体)とリレーションシップ(関係)を表す図)の略で、データ(例えば顧客や商品)を「何があるか(エンティティ)」と「それらがどう結び付くか(関係)」という観点で表します。したがって、選択肢エが正解です。
ポイントをかみ砕くと:
- エンティティ(entity):データベースで管理したい「もの」や「人」(例:顧客、商品、注文)。
- 属性(attribute):エンティティが持つ情報(例:顧客名、住所、注文日)。
- リレーションシップ(relationship):エンティティ同士の結びつき(例:顧客が注文をする=顧客と注文の関係)。 E-R図はこれらを図で表し、データベースの論理設計(どんなテーブルが必要か、どう結合するか)に使います。
解法ステップ
- 問題文のキーワードを探す:「E-R図」「データ」「関係」「設計」など。
- 各選択肢の意味を思い浮かべる:
- ア:構造化プログラミング向けの図とは何か?
- イ:所要期間の見積り=プロジェクト管理の図(例:PERT図、ガントチャート)か?
- ウ:処理手順=フローチャートか?
- エ:データと関係=E-R図か?
- E-R図の定義と一致する選択肢を選ぶ。
- ダブルチェック:他の選択肢は処理手順や工程管理に関する用語と一致するか確認する。
この流れで迷わず エ を選べます。
選択肢別の誤答解説
- ア: 構造化プログラミングのためのアルゴリズムを表記する。
→ これは「構造化設計図(例:NS図/Nassi–Shneiderman図など)」や擬似コードに関する説明で、E-R図の役割とは異なります。E-R図はアルゴリズム(処理手順)を示しません。 - イ: 作業の所要期間の見積りやスケジューリングを行い、工程を管理する。
→ これはプロジェクト管理に使う図(PERT図、ガントチャート)に関する説明です。E-R図は時間管理やスケジュールを扱いません。 - ウ: 処理手順などのアルゴリズムを図で表記する。
→ これはフローチャート(処理の流れを示す図)やアクティビティ図(UML)に該当します。E-R図は手順ではなくデータ構造を表現します。 - エ: データベースの設計に当たって、データ間の関係を表記する。
→ これが正しい説明です。E-R図は論理設計段階で重要な道具です。
よくある誤解
- 「E-R図は処理の流れ(プログラムの手順)を示す」
→ 誤りです。処理の流れはフローチャートやシーケンス図が担当します。E-R図は“データ”と“関係”を示します。 - 「E-R図はそのままデータベースの実装図(物理設計)である」
→ E-R図は論理設計に近く、物理設計(実際のテーブル定義、インデックスの設計など)に変換する作業が必要です。実装時には名前や型を決めたり、結合テーブルを作ったりします。 - 「UMLのクラス図と同じ」
→ 似ていますが目的が違います。クラス図はソフトウェア設計(オブジェクト指向)向け、E-R図はデータ中心の設計向けです。見た目が似ている場合もありますが、意味付けが異なります。
補足コラム
E-R図を実際のデータベース表(リレーショナル・データベース)に落とし込む簡単な例:
- エンティティ:顧客(Customer), 注文(Order)
- 属性:Customer → 顧客ID、氏名、住所。 Order → 注文ID、注文日、金額。
- 関係:Customer 1対N Order(1人の顧客が複数の注文を行う) 実装では、Orderテーブルに Customer の主キー(顧客ID)を外部キーとして持たせることで関係を表現します。多対多(N:M)の関係は「中間テーブル(橋渡しテーブル)」を作って解消します(例:学生と講義なら student_course テーブル)。
覚え方のヒント:
- E(Entity)=「もの」・「人」などデータの主体
- R(Relationship)=それらの「つながり」 英語の意味から考えると覚えやすくなります。
FAQ
Q1. E-R図とフローチャートの違いは?
A1. フローチャートは処理の流れ(何をするか順番)を示します。E-R図はデータの構造(何があるか、どうつながるか)を示します。目的が全く異なります。
A1. フローチャートは処理の流れ(何をするか順番)を示します。E-R図はデータの構造(何があるか、どうつながるか)を示します。目的が全く異なります。
Q2. E-R図は設計のどの段階で使う?
A2. 主に論理設計の段階で使い、どんなテーブルが必要か、どのように結合するかを整理します。その後、物理設計(実際のテーブル定義)に移ります。
A2. 主に論理設計の段階で使い、どんなテーブルが必要か、どのように結合するかを整理します。その後、物理設計(実際のテーブル定義)に移ります。
Q3. E-R図に「属性」って何を書く?
A3. 各エンティティが持つ情報(属性)を書きます。例:顧客なら氏名・住所・電話番号。主キー(レコードを一意に特定するデータ)も属性として明示します。
A3. 各エンティティが持つ情報(属性)を書きます。例:顧客なら氏名・住所・電話番号。主キー(レコードを一意に特定するデータ)も属性として明示します。
関連キーワード: E-R図、エンティティ、リレーションシップ、属性、正規化、リレーショナルデータベース、フローチャート、PERT、ガントチャート、構造化設計

\ せっかくなら /
ITパスポートを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

