タスク管理Webアプリその9
ER図を書く為に必要な予備知識
1.エンティティ
「エンティティ」とは、データのまとまりの事
エンティティの中にアトリビュートという属性情報がある
2.アトリビュート(属性)
「アトリビュート」とは、エンティティの中の属性情報の事で
そのアトリビュートの中で、「主キー」や「外部キー」も表す
主キーとなる項目は、エンティティ上部で四角に囲いをして明示する
外部キーとなるものは、その項目名の後ろに「(FK)」と書く
その他の項目は、項目名のみ記述する。
3.リレーション
リレーションとは、エンティティ同士の関係性を表現する線。
リレーションの詳細は、「カーディナリティ」という記号を使って表現する。
4.カーディナリティ(多重度)
カーディナリティとは、「1対1」や「多対多」など、リレーションの詳細を
表現する記号。「0以上」といった表現もできる。
リレーションの始点と終点を定められた記号で表現する
本題であるER図の書き方は5段階になる。
1段階目:システムシナリオを確認する
---ユースケース図やユースケース記述などをインプットとして設計していく
上記の設計が終わっていなければ、ER図を書く段階ではない
2段階目:エンティティ洗い出し
1段階で登場したユースケース図やユースケース記述を
もとにエンティティ洗い出しを行う
3段階目:エンティティをマスタとトランザクションに分ける
4段階目:アトリビュート(属性)を洗い出す
この洗い出しには、画面設計書や疑似システムの画面をもとに行うと
効率良く出来る 画面項目がアトリビュートになったりする
そのアトリビュートを図にして視覚的に整理する
最終段階:ER図に落とし込む
リレーションや主キー、外部キーを設計してER図に落とし込む。
リレーションの詳細であるカーディナリティに注意する
どのようなリレーションになるのかは、シナリオによって変化する
業務フローや"アクティビティ図"をもとに当てはめて設計を進める
となると、データベースを使った電子工作作業報告書管理ewrnのWEBアプリや
アリンコス部品管理GUIもER図から書き直すハメになる・・・・
うーんデータベースって奥が深いんだ~~
早速1段階のシステムシナリオの確認から
次に2段階目のエンティティ洗い出し
赤丸部分がエンティティ
エンティティをマスタとトランザクションに分ける
今回は3段階目でやめておく
ソフトをインストールせずに
CSSやjavascpipt,HTMLのコードをブラウザ上で
編集しつつ画面の確認が出来るものを見つけた
「CodePen」というらしい
これを活用しながらDjango開発に役立てたいな
次回はアトリビュート(属性)を洗い出す事から