究極の実体関連図チュートリアル(ER図)

公開: 2017-03-07

それで、あなたは実体関連図を学びたいですか? このERダイアグラムのチュートリアルでは、それらの使用法、履歴、記号、表記法、およびERダイアグラムソフトウェアを使用してそれらを描画する方法について説明します。 また、すぐに開始できるようにいくつかのテンプレートを追加しました。

ER図とは何ですか?

実体関連図(ERD)は、システム内のさまざまなエンティティと、それらが互いにどのように関連しているかを視覚的に表したものです。 たとえば、要素ライター、小説、および消費者は、ER図を使用して次のように記述できます。

学生登録システムのER図テンプレート(画像をクリックしてオンラインで変更)

ER図の歴史

データモデリングは1970年代頃に必要になりましたが、データベースやビジネスプロセスをモデル化する標準的な方法はありませんでした。 多くの解決策が提案され議論されましたが、広く採用されたものはありませんでした。

Peter Chenは、彼の論文「実体関連モデル-データの統一されたビューに向けて」で広く採用されているERモデルを紹介したことで評価されています。 焦点は実体と関係にあり、彼はデータベース設計のための図式表現も導入しました。

彼のモデルは、CharlesBachmanによって導入されたデータ構造図に触発されました。 ER図の初期の形式の1つであるバックマン図は、彼にちなんで名付けられました。

ERダイアグラムの詳細な履歴とデータモデリングの評価については、この記事を参照してください。

ER図の用途は何ですか?

ER図の用途は何ですか? それらはどこで使用されますか? これらはほとんどすべてのシステムのモデル化に使用できますが、主に次の分野で使用されます。

データベース設計におけるERモデル

これらは、リレーショナルデータベースの設計に広く使用されています。 ERスキーマのエンティティはテーブル、属性になり、データベーススキーマに変換されます。 これらはデータベーステーブルとそれらの関係を視覚化するために使用できるため、データベースのトラブルシューティングにも一般的に使用されます。

ソフトウェア工学における実体関連図

実体関連図は、ソフトウェアプロジェクトの計画段階でソフトウェアエンジニアリングで使用されます。 これらは、さまざまなシステム要素とそれらの相互関係を識別するのに役立ちます。 一般的に知られているように、データフロー図またはDFDの基礎としてよく使用されます。

たとえば、小売店で使用される在庫ソフトウェアには、購入、アイテム、アイテムタイプ、アイテムソース、アイテム価格などの要素を監視するデータベースがあります。 ERダイアグラムを介してこの情報をレンダリングすると、次のようになります。

属性を持つエンティティを使用したER図の例
属性を持つエンティティを使用したER図の例

この図では、楕円形の内側の情報は特定のエンティティの属性です。

実体関連図(ERD)の記号と表記

このER図チュートリアルで説明されているER図記号
ER図の要素

ERダイアグラムには、エンティティ、属性、関係の3つの基本要素があります。 主な要素に基づいているより多くの要素があります。 それらは、弱いエンティティ、複数値の属性、派生属性、弱い関係、および再帰的な関係です。 カーディナリティとオーディナリティは、関係をさらに定義するためにER図で使用される他の2つの表記法です。

実在物

エンティティは、特定のシステムに関連する人、場所、イベント、またはオブジェクトにすることができます。 たとえば、学校のシステムには、学生、教師、主要なコース、科目、料金、およびその他の項目が含まれる場合があります。 エンティティはERダイアグラムで長方形で表され、単数名詞を使用して名前が付けられます。

弱実体

弱いエンティティは、別のエンティティの存在に依存するエンティティです。 より専門的な用語では、それ自体の属性では識別できないエンティティとして定義できます。 それは主キーを形成するためにその属性と組み合わされた外部キーを使用します。 注文アイテムのようなエンティティは、この良い例です。 注文アイテムは注文がないと意味がないので、注文の有無によって異なります。

実体関連図の弱い実体
ER図の弱実体の例

属性

属性は、エンティティ、関係、または別の属性のプロパティ、特性、または特性です。 たとえば、属性Inventory Item Nameは、エンティティInventoryItemの属性です。 エンティティは、必要な数の属性を持つことができます。 一方、属性は独自の特定の属性を持つこともできます。 たとえば、属性「customer address」には、属性number、street、city、およびstateを含めることができます。 これらは複合属性と呼ばれます。 一部のトップレベルのERダイアグラムでは、簡単にするために属性が表示されていないことに注意してください。 ただし、そうするものでは、属性は楕円形で表されます。

ER図の属性
ER図の属性。属性は独自の属性(複合属性)を持つことができることに注意してください。

複数値属性

属性が複数の値を持つことができる場合、それは複数値属性と呼ばれます。 これは、独自の属性を持つ属性とは異なることに注意することが重要です。 たとえば、教師エンティティは複数のサブジェクト値を持つことができます。

実体関連図の複数値属性
複数値属性の例

派生属性

別の属性に基づく属性。 これは、ER図ではめったに見られません。 たとえば、円の場合、面積は半径から導出できます。

ER図の派生属性
ER図の派生属性

関係

関係は、エンティティがどのように相互作用するかを表します。 たとえば、エンティティ「Carpenter」は、「builds」または「makes」の関係によってエンティティ「table」に関連付けられている場合があります。 関係はひし形で表され、動詞を使用してラベル付けされます。

ER図の関係
実体関連図での関係の使用

再帰的な関係

同じエンティティが関係に複数回参加する場合、それは再帰的関係と呼ばれます。 以下の例では、従業員が上司になり、監督される可能性があるため、再帰的な関係があります。

ER図の再帰的関係
ER図の再帰的関係の例

カーディナリティとオーディナリティ

これらの2つは、関係を数値のコンテキストに配置することにより、エンティティ間の関係をさらに定義します。 たとえば、電子メールシステムでは、1つのアカウントに複数の連絡先を含めることができます。 この場合、関係は「1対多」モデルに従います。 ER図でカーディナリティを表すために使用される表記法がいくつかあります。 Chen、UML、Crow's foot、Bachmanは人気のある表記法の一部です。 次の例では、UMLを使用してカーディナリティを示しています。

ER図のカーディナリティ
UML表記を使用したER図のカーディナリティ

ER図の描き方

以下のポイントは、ER図の作成方法を示しています。

  1. システム内のすべてのエンティティを識別します。 エンティティは、特定の図に1回だけ表示される必要があります。 すべてのエンティティに長方形を作成し、適切な名前を付けます。
  2. エンティティ間の関係を特定します。 線を使用してそれらを接続し、関係を説明する中央にひし形を追加します。
  3. エンティティの属性を追加します。 わかりやすい属性名を付けてください。

簡単そうに聞こえますか? 複雑なシステムでは、関係を特定することは悪夢になる可能性があります。 これは、練習するだけで完璧になるものです。

ER図とデータベース設計をすばやく作成し、チームと協力して、設計の進化に合わせて変更を維持および追跡します。

ERDを作成する

ER図のベストプラクティス

  1. 図の各エンティティ、属性、および関係に正確で適切な名前を付けてください。 シンプルでなじみのある用語は、常に漠然とした技術的な言葉よりも優れています。 エンティティに名前を付けるときは、単数名詞を使用することを忘れないでください。 ただし、形容詞を使用して、同じクラスに属するエンティティ(たとえば、パートタイムの従業員とフルタイムの従業員)を区別することができます。 一方、属性名は、意味があり、一意で、システムに依存せず、簡単に理解できるものでなければなりません。
  2. エンティティ間のあいまいな、冗長な、または不要な関係を削除します。
  3. 関係を別の関係に接続しないでください。
  4. 色を有効に活用しましょう。 色を使用して、類似したエンティティを分類したり、図の重要な領域を強調したりできます。

Createlyを使用したER図の描画

実体関連図を手動で描くことができます。特に、単純なシステムを同僚に非公式に見せている場合はなおさらです。 ただし、より複雑なシステムや外部の視聴者の場合、視覚的に魅力的で正確なERダイアグラムを作成するには、Createlyなどのダイアグラム作成ソフトウェアが必要です。 Createlyがオンラインサービスとして提供しているERダイアグラムソフトウェアは、非常に使いやすく、ライセンスソフトウェアを購入するよりもはるかに手頃な価格です。 また、コラボレーションを強力にサポートしているため、開発チームにも最適です。

ER図テンプレート

以下は、すぐに開始できるように、いくつかのER図テンプレートです。 画像をクリックし、開いた新しいページで[テンプレートとして使用]ボタンをクリックします。 その他のテンプレートについては、ER図テンプレートのセクションを確認してください。

ER図テンプレート
試験データベースのER図テンプレート(テンプレートとして使用する画像をクリックしてください)

クイックスタート用の基本的なER図テンプレート

実体関連図テンプレート
基本的なER図テンプレート(クリックしてテンプレートとして使用)

ER図の利点

ERダイアグラムは、データベースを作成および操作するための非常に便利なフレームワークを構成します。 まず、ERダイアグラムは理解しやすく、効率的かつ正確に操作できるようにするために、人が広範なトレーニングを受ける必要はありません。 つまり、設計者はERダイアグラムを使用して、ITの習熟度に関係なく、開発者、顧客、およびエンドユーザーと簡単に通信できます。

第2に、ERダイアグラムは、データベースを迅速に構築するために使用できるリレーショナルテーブルに簡単に変換できます。 さらに、ERダイアグラムは、特定のソフトウェアアプリケーションにデータを実装するための青写真として、データベース開発者が直接使用できます。

最後に、ERダイアグラムは、組織内のさまざまな関係や操作の説明など、他のコンテキストに適用できます。

ER図チュートリアルに関するフィードバック

私はあなたがER図について知る必要があるすべてをカバーするために最善を尽くしました。 あなたが私がいくつかの部分を逃したと思うならば、コメントセクションでそれを言及することを忘れないでください。 質問をするのにも良い場所です。

参考文献

1.ウィキペディアで公開されている実体関連モデル。
2.About.comのWebサイトで公開されているMikeChappleによるエンティティ関係図