---
# System prepended metadata

title: 2021.04.23（金）③④
tags: [授業ノート, DB26]

---

# 2021.04.23（金）③④
###### tags: `DB26` `授業ノート`

# データモデリング
📝P.v～


**トップダウンモデリング**
* エンティティ
* 主要属性
<span style="color: red">※大まか→細かいでアプローチ</span>

**ボトムアップモデリング**
* 業務機能（プロセスモデル）
* 属性モデル
* 主要画面・要件
<span style="color: red">※ユーザーサイドから需要のアプロ―チ</span>

両方のモデリングの同時並行で
要件の設計を行う（論理モデル）




📝P.2～
# なぜモデリングを行うのか :squid: 
## データモデリングってなに？
### なぜモデリングを行うのか？

**モデリング**
<span style="color: red">システムの対象を定まった記法で図式表現したもの</span>
(文章による曖昧な表現を許さない...絶対に:heart:)


### データモデルの種類
1. 概念モデル
    * システム全体をモデル化し、事象ごとに大まかな分類をしたもの。
    （データベースの大きさなどは決めない、ラフスケッチ）
3. 論理モデル
    * 概念モデルを基に、詳細に落とし込んだもの。ER図上だけの情報。
     （既存のデータベースがある場合、既存データベースやデータベース化されていないファイルからデータ項目をリバースして反映させることもある）
5. 物理モデル
    * 論理モデルを基に、さらに詳細に落とし込んだもの。実際のデータベースの情報と１対１の関係になる。
    
    <span style="color: red">この３つのモデルは、システム開発工程に沿った分類方法であり、モデルの完成度（粗さ）による分類</span>
    
**one fact in one place**
* 1つの事実を表すもの（エンティティと属性の両方）は1か所で管理せよ
→DOA(Data Oriented Approch)の原則

    
## モデリング手順
### システム構築プロセスとモデリングの関係

1. 情報戦略策定
2. 要件定義
3. システム基本設計
4. システム詳細設計
5. プログラム設計
6. 実装・テスト

### トップダウン分析・ボトムアップ分析

:arrow_heading_down: トップダウンは、対象業務全体についてエンティティ（管理対象）を抽出しわかる範囲で定義
（社員、部門）
社員（社員番号、氏名、性別 etc...）

:arrow_heading_up: ボトムアップは、現行のシステムの画面、帳票、データベースなどからテーブルやデータ項目を抽出してデータ項目をエンティティにする
現行システムだけではなく、新たなシステムの画面や帳票のイメージの中から属性を抽出することもある

<span style="text-decoration: underline">aaa</span>
<span style="color: red">aaa</span>

## 雑談 (0→やまぴ 1→みや 2→やすい 3→りょうくん)
1.りょうくんの絵文字のセンスに追いつけない
3.モデリング→イカリング→イカ
1.さすがっすわｗｗ

```flow
st=>start: データモデリング
e=>end: モデル融合
cond=>condition: データモデリング手法
op1=>operation: トップダウンモデリング
op3=>operation: エンティティの切り出し
op5=>operation: 主要属性定義
op7=>operation: エンティティ
op2=>operation: ボトムアップモデリング
op4=>operation: 業務機能（プロセスモデル）
op6=>operation: 属性モデル

st->cond
cond(yes)->op1->op3->op5->e
cond(no)->op2->op4->op6->e
```
