
う~むむ。。また必要なリレーションを書き漏らしてしまった。

午後Ⅱ試験の概念データモデリングに苦労しているようだね。

問題文も5ページ近くありますし、読み取るのが非常に大変で・・

よし!今日は概念データモデリングのキーワードをテーマに解説していこう!
午後Ⅱ問題の攻略法はどこに?
最大の落とし穴は「書き漏らし」
データベーススペシャリスト試験の午後問題。 あなたは以下のような経験はありませんか?
- リレーション(テーブル間の関係)を余分に書いてしまった
- 必要なリレーションを見逃してしまった
- 重要な属性を記載し忘れた
余分に書いてしまうミスよりも「書き漏らし」のほうが圧倒的に多いはずです。
・必要なリレーションの書き漏らし
・必要な属性の書き漏らし
書き漏らしが起こる「真の原因」
なぜ必要なリレーションを見逃してしまうのでしょうか?
その最大の原因は、問題文中に隠された「キーワード」を見落としてしまうことです。
午後問題の文章は一見すると単なる業務説明文。
しかし実際は、リレーションや属性を特定するための重要なヒントが随所に散りばめられているのです。
合格への鍵は「キーワード発見力」
これらのキーワードを見つけ出し、論理的にリレーションを導き出す力。 これこそが午後問題攻略の核心です。
特に午後Ⅱでは要注意!
文章1文1文に回答に繋がる記載があることがほとんど。
この記事で得られるもの
具体的な過去問を題材に、重要なキーワードを1つずつ解説します。
本記事を読み終える頃には:
・午後問題が格段に解きやすくなる
・隠されたキーワードを見抜く力が身につく
・書き漏らしミスが激減する
令和3年度午後Ⅱ問2で実践!キーワードで完全攻略
ここからは令和3年度午後Ⅱ問2を具体例に、どのようなキーワードがあるかを見ていきましょう。
「属性」に関するキーワード
以下のキーワードがある場合、関係スキーマに属性として持たせる必要があります。
①~をもつ
(配送地域は)配送地域名をもつ。
「配送地域」エンティティに、「配送地域名」属性が必要です。
②~で識別
チェーン法人はその法人であり、チェーン法人コードによって識別する。
「チェーン法人」エンティティに「チェーン法人コード」属性が必要です。
かつ、主キーとなります。
③~を登録する、~を設定する、~を付与する、~を記録する
出荷実績には、車両番号と出荷年月日時刻を記録する。
「出荷実績」エンティティに「車両番号」と「出荷年月日時刻」属性が必要です。
「リレーション」に関するキーワード
リレーションを持つということは、矢印が必要!ということです。
以下のキーワードがある場合は、矢印の有無を確認し、ない場合は追記する必要があります。
①~ごとに
チェーン法人ごとに適用する締め契機は、チェーン法人と協議の上で・・
「チェーン法人」エンティティと「締め契機」エンティティとがリレーションを持つキーワード!
実際の問題では2つとも空欄がないため、連関エンティティを作成することになります。
②~の別に、~の単位に
引当在庫は、物流拠点、商品、製造ロットの別に、その時点の在庫数、引当済数、引当可能数を記録するもので・・・
「引当在庫」エンティティの持つ属性と、リレーションを持つエンティティが分かります。
「引当在庫」エンティティの持つ属性
- 在庫数
- 引当済数
- 引当可能数
「引当在庫」とリレーションを持つエンティティ
- 物流拠点
- 商品
- 製造ロット
(出荷実績は)出荷指示の単位に梱包を納入先別に配送した実績である。
「出荷実績」は「出荷指示」「納入先」とリレーションを持つ、はずです。
今回の問題では、「出荷指示」と「納入先」にリレーションを持たせています。
また、「納入先」というエンティティがないため、それに当たるエンティティは何かを別で探す必要がありました。
③~に対して
出庫は、物流拠点ごとに締め契機の対象の受注に対して行う。
「出庫」は「物流拠点」と「締め契機」とリレーションを持つことが分かります。
※今回の問題では「出庫指示」エンティティです。
④~に基づいて
(梱包実績は)出庫された商品を、出荷指示梱包明細に基づいて配送できるように・・・
「梱包実績」は「出荷指示梱包明細」とリレーションを持ちます。
⑤~を関連付ける。~を紐づける
ケース梱包実績はどのケース出庫実績によるものかを関連付ける。
「ケース梱包実績」は「ケース出庫実績」とリレーションを持ちます。

これは言葉の通りだね!
⑥~をもつ
物流拠点は、・・・物流拠点ごとに複数の配送地域をもつ。
「属性に関するキーワード」の代表格ですが、リレーションで表現する場合もあります。
今回の問題では「配送地域」はエンティティとして存在しています。
そのため、1対多のリレーションで表現することになります。
また、次の点に注意しましょう。
・1対多であるか、1対1であるか。
・1対多の場合、「多」側が「子」である。
・「子」は「親」を参照する外部キーを持つ。
・1対1の場合、基本は時系列が後のエンティティを「子」とする。
まとめ
午後Ⅱ試験で多くの受験生が苦しむ「リレーションや属性の書き漏らし」。
その原因は単純な不注意ではなく、問題文に散りばめられたキーワードを拾い切れていないことにあります。
本記事で紹介したように、
- 「~をもつ」「~で識別」→ 属性のヒント
- 「~ごとに」「~に対して」「~を関連付ける」→ リレーションのヒント
といった言葉を丁寧に拾えば、漏れは大きく減ります。
午後Ⅱの文章は、すべて解答につながる重要な情報です。
1文1文と概念データモデル、関係スキーマを紐づけて読んでいきましょう!