HOME»データベーススペシャリスト掲示板»H29午後2問2設問3(1)  サブタイプについて
投稿する

[0484] H29午後2問2設問3(1)  サブタイプについて

 DB見習いさん(No.1) 
H29午後Ⅱ  問2  設問3(1)について質問です。
計画生産品と補充生産品を統合した概念データモデル(図6)において、補充要求明細のサブタイプとして計画生産品と補充生産品のものがそれぞれ切り出されているのはなぜでしょうか?

参考書の解説を読むと、サブタイプとして切り出される属性は商品コードのみのようですが、これを切り出す理由が分かりません。
どちらか特有の属性でもなく、補充要求番号をたどれば計画生産品と補充生産品どちらの補充要求なのかも判明すると思います。スーパタイプの補充要求明細テーブルに残しておいても良い属性のような気がするのですが・・

どなたかご教授いただければ幸いです。よろしくお願いします。
2023.05.15 20:28
logres_fanさん(No.2) 
DB ブロンズマイスター
>これを切り出す理由が分かりません。
  ですよねー。まぁ、しょうがないです。設定に従いましょう。
> スーパタイプの補充要求明細テーブルに残しておいても良い属性のような気がするのですが・・
  次の設計段階に進んだ時点で、スーパータイブに統一するか否かを問われるのかもしれません。

  無理やり屁理屈を捻り出してみました。スーパータイブのテーブルに残しておく、これは工場の担当者様目線で考えると、不要なデータと必要データが混在している状態に見えるので、不要な計画生産品補充要求明細のデータを切り分け、必要な補充生産品補充要求明細のデータのみを集約して画面に表示しましょう。と、如何でしょう?(※私の回答は、的外れな場合も多いのでいろんな回答を参考にして下さい。ちなみに、私はスーパータイブのテーブルに統一します。)
  お絵描きモデリングに膨大な時間を費やして深掘りすればするほど、素晴らしいものが出来上がるぅ。どんどんコストを積み上げて稀少価値を追求すればするほど、お客様の満足度も我々の報酬も膨れ上がりウィンウィンみたいな。
  流行り廃れは本当に恐ろしいですよ。
  
2023.05.16 00:43
gawaさん(No.3) 
統合する際に、エンティティ「商品」が排他的サブタイプとして、「計画生産品」と「補充生産品」に切り出されるんでしょうね。
なので、計画生産品補充要求明細と、補充生産品要求明細の外部キーの商品コードは、それぞれ別のエンティティを参照してるんだと思います。よって、サブタイプに分けるのは理にかなっています。
2023.05.18 17:33
 DB見習いさん(No.4) 
お二方ともありがとうございます。

>統合する際に、エンティティ「商品」が排他的サブタイプとして、
>「計画生産品」と「補充生産品」に切り出されるんでしょうね。

なるほど・・確かに商品は計画生産品と補充生産品の2種類があるという文言は見逃していました。
排他的サブタイプに分かれるということは、私は全商品について計画生産される場合と補充生産される場合があるという風に認識していましたが、そうではなく、
計画生産しかされない商品と補充生産しかされない商品に分けられるということなのでしょうか。
ただここで違和感を仮に抱いたとしても、問題の設定として記されている以上切り出されているのは商品コードだろうなと当たりはつけられる訳ですね。。
2023.05.20 14:39
gawaさん(No.5) 
排他的サブタイプと断言できるか怪しいですが、サブタイプに切り分けられるのは確かと思います。

偉そうに解説していますが、私がこの問題に初挑戦したときは、概念データモデルとスキーマの穴埋めで必死になって、設問の前提条件を見落とし、変更前の設計の説明が、「計画生産品」と「補充生産品」に分かれていることする気づきませんでした。
DBの過去問は、あとでじっくり見直すと「そういうことか」と気づけることもあるのですけど、タイムアタックすると余裕がないんですよね。。。
2023.05.20 20:30
logres_fanさん(No.6) 
DB ブロンズマイスター
  商品には、計画生産品と補充生産品のサブタイプがある。だから、補充要求明細も、サブタイプに分ける。これは、単なる慣習ですね。足並みを揃えているだけです。
  パズル的には、全ての商品を補充要求できる場合、スーパータイブ同士をお絵描き、一部の商品しか補充要求できない場合、サブタイプ同士を切り出してお絵描きする、という事なのかもしれませんが。
  うーん、正直なところ、深掘りしなくていいです。ぶっちゃけ概念設計は陰陽道の類なんですよ。ポンチ絵思想を深掘りしても、実務の役には立たないし、頭が固くなるし。プロの仕事を知れば知るほど、唖然としますね。
  
2023.05.21 17:50
gawaさん(No.7) 
問題文をちゃんと読んだら、”商品には計画生産品と補充生産品がある”、と書いてあるので、排他的サブタイプで確定ですね。
また、「サブタイプを切り出した場合は適切なエンティティにリレーションシップを設定する」といういつもの決まり文句もあるので、各々に対応するエンティティ間でリレーションシップを設定するという結論になります。

>ポンチ絵思想を深掘りしても、実務の役には立たないし、頭が固くなるし
個人的には、要件定義でユーザの要求を理解する際は、大体ポンチ絵で正規化するところからですね・・・それに比べると、DBの試験問題のように業務要件と概念データモデルを丁寧に書き下してあるのは、親切極まりないです&現実にはお目にかかれないです。
2023.05.21 19:28
 DB見習いさん(No.8) 
お二方ともありがとうございます。
おっしゃっていただいた通り、”商品には計画生産品と補充生産品がある”という文言をしっかり認識できていれば疑問はないですが、やはり時間との勝負に慣れることですね。。ありがとうございます。
2023.05.31 11:43

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2016-2024 データベーススペシャリストドットコム All Rights Reserved.

Pagetop