Entity Relationship Modelling - PowerPoint PPT Presentation

About This Presentation
Title:

Entity Relationship Modelling

Description:

Title: Projektmanagement Subject: IN im ICN CA Author: Siemens AG Last modified by: Kr ning Created Date: 6/28/1999 4:13:29 PM Document presentation format – PowerPoint PPT presentation

Number of Views:69
Avg rating:3.0/5.0
Slides: 29
Provided by: Siem65
Category:

less

Transcript and Presenter's Notes

Title: Entity Relationship Modelling


1
Entity Relationship Modelling
  • Zur Datendefinition beim Datenbankentwurf von
    P.P.-S. Chen entwickelt
  • Modellierung der Objekte der realen Welt mit
    ihren Eigenschaften und Beziehungen
  • Datenstruktur und deren Bedeutung wird
    repräsentiert
  • Wird im Analyseprozess eingesetzt
  • ERM ist ein datenorientierter Ansatz
  • Datenstrukturen sind langlebiger als die
    Funktionen,das System ist zukunftssicherer
  • Datenstrukturen direkt nach den Erfordernissen
    der Realität zu entwickeln, unabhängig von den
    Funktionen der Vergangenheit

2
Entity Relationship Modelling
  • ERM ist auch unter mehreren Namen mit gleicher
    bzw. leicht unterschiedlicher Bedeutung bekannt
  • Information Modelling (IM),
  • Datenstrukturanalyse (DSA) und
  • Semantische Modellierung von Datenstrukturen.
  • Enge Verbindungen zum Relationenmodell,
    Grundlage für das physische Datenbankdesign.
  • Beschreibung von
  • Objekten (Entities)
  • deren Eigenschaften (Attribute),
  • sowie ihren Beziehungen (Relationships)

3
Entity Relationship Modelling Begriffe
  • Entities und Entity-Typen
  • Ein Entity ist ein existierendes, eindeutig
    identifizierbares Objekt, über das Informationen
    gespeichert werden müssen
  • Bei ähnlichen Objekten handelt es sich um
    unterschiedliche Exemplare (Ausprägungen,
    Instanzen) des gleichen Entity-Typs
  • (z. B. Haus, Person, Stadt, Buch, Projekt,
    Abteilung, Mitarbeiter, Strategie, Zeitplan)
  • Alle Entities eines Entity-Typs haben die gleiche
    Art (nicht Ausprägung) von Eigenschaften

4
Entity Relationship Modelling Begriffe
  • Beziehungen und Beziehungs-Typen
  • Eine Beziehung ist eine inhaltliche Verbindung
    zwischen Entities
  • Peter Müller besitzt den weißen Porsche mit
    Kennzeichen M-..
  • Petra Meier besitzt den roten Golf mit
    Kennzeichen S-..
  • Zwischen den Entity-Typen "Person" und "Auto"
    läßt sich ein Beziehungs-Typ "besitzt" definieren
  • (1 Person besitzt kein, ein oder mehrere Autos /
    jedes Auto hat genau einen Besitzer).

5
Entity Relationship Modelling Begriffe
  • Beziehungen (relationships) sind Verknüpfungen
    zwischen zwei oder mehreren Entities
  • Verknüpfte Entities müssen nicht zu verschiedenen
    Entity-Typen gehören
  • Mitarbeiter "betreut" Mitarbeiter
  • Zwischen zwei Entity-Typen können mehrere
    Beziehungs-Typen existieren
  • zwischen den Entity-Typen Mitarbeiter und
    Abteilung die Beziehungs-Typen "arbeitet in und
    "leitet"

6
Entity Relationship Modelling Begriffe
  • Attribute, Werte und Wertebereiche
  • Attribute sind die beschreibende Eigenschaften
    (Merkmale) von Entity-Typen bzw.
    Beziehungs-Typen
  • Dem Attribut ist ein bestimmter Wertebereich von
    zulässigen Werten zugeordnet
  • Es gibt
  • identifizierende Attribute (Identifikatoren,
    Primärschlüssel),
  • referenzierende Attribute (Fremdschlüssel) und
  • charakterisierende (lokale) Attribute
  • Attribute müssen nicht zwingend lesbar sein
  • Farbe, Foto, Video, Geräusch, Fingerabdruck,
    Geruch, oder Geschmack können wichtige
    Eigenschaften darstellen

7
Entity Relationship Modelling Grafische Notation
  • Die grundlegende Notation für Entity Relationship
    Diagramme orientiert sich an der Chen-Notation
  • Entity-Typen Rechteck
  • Beziehungs-Typen Raute

8
Entity Relationship Modelling Grafische Notation
  • Beispiel nach Ward Mellor

9
Entity Relationship Modelling Grafische Notation
  • Erläuterung zum Beispiel
  • "Startet auf" beschreibt die Beziehung zwischen
    vielen verschiedenen individuellen Flugzeugen
    und Pisten
  • Zwischen zwei Entities können mehrere Relationen
    existieren
  • "startet auf" und "landet auf"
  • Ein Entity kann mit mehreren anderen Entities in
    Beziehung stehen
  • "Flugzeug" mit "Pilot", "Passagier" und "Piste
  • Durch eine einzige Relation können 3 oder mehr
    Entities verbunden sein
  • "fliegt mit" verbindet "Pilot", "Passsagier" und
    "Flugzeug
  • Andererseits kann eine Relation auch nur
    Verbindungen zu einem einzigen Entity-Typ haben
  • "Piste" "kreuzt" Piste
  • Entity-Typen repräsentieren nicht immer
    materielle Objekte
  • mündlich mitgeteilter "Flugplan"

10
Entity Relationship Modelling Grafische Notation
  • Assoziierte Entity-Typen

11
Entity Relationship Modelling Grafische Notation
  • Assoziierte Entity-Typen
  • Ein spezieller Landeanflug verknüpft ein ganz
    spezielles Flugzeug mit einer ganz speziellen
    Piste (kennzeichnend für eine Relation)
  • Zusätzlich speichern von Informationen
  • Datum, Uhrzeit, Windrichtung, Windgeschwindigkeit,
    ...
  • Verknüpfung mit anderen Entity-Typen
  • "Pilot"
  • Name gilt sowohl für die Entity als auch für die
    Relation
  • Der Pfeil signalisiert der assozierte Entity-Typ
    ist von den anderen Entity-Typen abhängig

12
Entity Relationship Grafische Notation
  • Generalisierung und Spezialisierung mit Super-
    und Subtypen
  • Entity-Typ und zugehörige Unterkategorien
  • Supertyp wird durch Attribute beschrieben, welche
    auch auf alle Subtypen zutreffen
  • Subtypen haben unterschiedliche Attribute

13
Entity Relationship Modelling Grafische Notation
  • Attributdarstellung
  • Attribute (Eigenschaften) eines Entity-Typs
    können im Diagramm durch Ovale dargestellt
    werden, die mit dem Entity-Typ durch eine Linie
    verbunden werden

14
Entity Relationship Modelling Komplexitätsgrad
/ Kardinalität
  • Komplexitätsgrad (Kardinalität einer Beziehung)
    gibt an, wieviele Exemplare eines Entity-Typs mit
    einem Exemplar des anderen Entity-Typs in
    Beziehung stehen bzw. in wieviel Beziehungen ein
    Entity mindestens und höchstens vorkommen kann
  • ChenKrähenfußPfeilmin-max

15
Entity Relationship Modelling Optionalität
(Muß- oder Kann-Beziehung)
  • Festlegung, ob Muß- oder Kannbeziehung vorliegt
  • ChenKrähenfußPfeilmin-max

16
Entity Relationship Modelling Vorgehensweise
  • Ermittlung der relevanten Entity-Typen
  • Ermittlung der relevanten Beziehungstypen
  • Beschreiben der Entity-Typen durch Festlegung
    ihrer Attribute
  • Beseitigung der Redundanz zwischen verschiedenen
    Entity-Typen
  • Beseitigung der Redundanz innerhalb von
    Entity-Typen

17
Entity Relationship Modelling Vorgehensweise
  • Ermittlung der relevanten Entity-Typen
  • Mögliche Entities
  • Objekte (Firma, Artikel, Auto, Flugzeug, ...)
  • Personen (Lieferant, Kunde, Mitarbeiter, ...)
  • Ereignisse (Bestellung, Lieferung, Vertrag,
    Rechnung, Bilanz, Anfrage, Reklamation, ...)
  • Grundsätze (Zahlungsbedingungen,
    Rechtsvorschriften, ...)
  • Entity muß eindeutig identifizierbar sein
  • Entity-Typ Kunde" wäre z.B. unterscheidbar
    anhand Kundennummer, Name oder Kontonummer
  • Entity muß für die Funktionalität des Systems
    erforderlich sein
  • Für die ermittelten Entities ist der
    Primärschlüssel mit seiner Bedeutung und seinem
    Wertebereich festzulegen

18
Entity Relationship Modelling Vorgehensweise
  • Ermittlung der relevanten Beziehungstypen
  • Erforderliche Beziehungstypen ergänzen
  • Verwendung assoziierter Entity-Typen um
    Beziehungs-Typen mit Attributen zu beschreiben
  • Kardinalität und Optionalität des Beziehungs-Typs
    klären
  • Definition der Fremdschlüssel
  • Festlegung der Fremdschlüsselregeln (zur Wahrung
    der Beziehungsintegrität)

19
Entity Relationship Modelling Vorgehensweise
  • Restriktives DELETESolange noch ein
    Fremdschlüsselwert existiert, der dem zu
    löschenden Primärschlüsselwert entspricht, wird
    die Löschoperation nicht durchgeführt
  • Kaskadiertes DELETE (Weitergabe der
    Löschung)Alle Entities deren Fremdschlüsselwerte
    dem zu löschende Primärschlüsselwert entsprechen,
    werden ebenfalls gelöscht
  • Akzeptierendes DELETEAlle Fremdschlüsselwerte,
    die dem zu ändernden
    Primärschlüsselwert entsprechen, werden auf null"
    gesetzt
  • Nutzerdefiniertes DELETEFalls keine der 3
    Standardregeln die betriebliche Welt korrekt
    beschreibt, so muß eine anwendungsspezifische
    Integritätsregel formuliert werden
  • UPDATE-Regeln gelten analog

20
Entity Relationship Modelling Vorgehensweise
  • Beschreiben der Entity-Typen durch Festlegung
    ihrer Attribute
  • Definition der (charakterisierenden) Attribute
    und Vergabe von sprechenden Namen
  • Abgrenzung Attribut / Entity-Typ
  • Abhängig vom Blickwinkel können Attribute zu
    Entity-Typen werden und umgekehrt. Hilfreiche
    Vorstellung Im Inneren eines Entity-Typen sind
    viele interne Beziehungen entscheidend ist
    jedoch, ob sie für die Außenwelt überhaupt
    relevant sind.

21
Entity Relationship Modelling Vorgehensweise
  • Beseitigung der Redundanz zwischen verschiedenen
    Entity-Typen
  • Generalisierung, Spezialisierung
  • Die gleiche Person kann innerhalb eines
    Datenmodells verschiedene Rollen einnehmen
  • Angestellter, Lieferant, Kunde, Arzt, Patient,
    Geschädigter, Schadensverursacher. Damit
    beispielsweise die Anschrift nach einer
    Anschriftenänderung konsistent bleibt, ist einem
    Generalisierung und Spezialisierung von
    Entity-Typen erforderlich
  • Für das eigene Unternehmen ist der Entity-Typ
    MITARBEITER eine natürliche Person, mit Name,
    Anschrift, Geburtsdatum, ...Beim Entity-Typ
    GESCHÄFTSPARTNER hingegen interessiert in der
    Regel nur die juristische Person.Ob eine
    Generalisierung von MITARBEITER und
    GESCHÄFTSPARTNER zu PERSON sinnvoll ist, richtet
    sich nach dem konkreten Fall.

22
Entity Relationship Modelling Vorgehensweise
  • Beseitigung der Redundanz innerhalb von
    Entity-Typen

23
Entity Relationship Modelling Vorgehensweise
  • Normalisierung (1. Normalform)
  • Ein Entity-Typ befindet sich in der 1.
    Normalform, wenn jedes Attribut einer Entität
    höchstens einen Wert besitzt, d.h. es gibt keine
    Attribute mit Mehrfachwerten / keine
    Wiederholgruppen
  • Attribute mit Mehrfachwerten herauslösen

?
24
Entity Relationship Modelling Vorgehensweise
  • Normalisierung (2. Normalform)Ein Entity-Typ
    befindet sich in der 2. Normalform, wenn die 1.
    Normalform vorliegt und jedes Attribut direkt
    abhängig ist vom gesamten Primärschlüssel, d.h.
    es dürfen keine funktionalen Abhängigkeiten der
    Nichtschlüsselattribute von Schlüsselteilen
    existieren
  • Teilschlüsselabhängigkeit beseitigen

25
Entity Relationship Modelling Vorgehensweise
  • Normalisierung (3. Normalform)Ein Entity-Typ
    befindet sich in der 3. Normalform, wenn die 2.
    Normalform vorliegt und jedes Attribut direkt
    abhängig ist vom gesamten Primärschlüssel, d.h.
    es dürfen keine funktionalen Abhängigkeiten der
    Nichtschlüsselattribute untereinander existieren

26
Entity Relationship Modelling Vorgehensweise
  • Ergebnis der Normalisierung

27
Entity Relationship Modelling Eignung des
ER-Modells
  • Einsatzschwerpunkte
  • Analysephase
  • Ermittlung der relevanten Datenobjekte und ihrer
    Bedeutung
  • Formulierung von Geschäftsregeln, welche sich in
    den Beziehungen zwischen den Datenobjekten
    ausdrücken
  • Festlegung der strategischen Spanne des
    SW-Systems
  • was wird es können
  • was wird es aufgrund der zugrundeliegenden Daten
    nie können
  • Systeme zur Aktualisierung und Darstellung von
    Daten
  • Transformierbarkeit in Relationenmodell /
    Grundlage für Datenbankentwurf
  • Entwicklung von Unternehmensdatenmodellen mit ERM

28
Entity Relationship Modelling Eignung des
ER-Modells
  • Integration von ERM in Structured Analysis (SA)
  • Im Zuge der Erweiterungen der Structured Analysis
    (SA, SA/RT) durch McMenamin Palmer, Ward
    Mellor, HatleyPirbhai und Yourdan wurde ERM in
    SA integriert
  • Analyse der Lebenszyklen der modellierten
    Entity-Typen gibt Aufschluß über wichtige
    Geschäftsvorfälle
Write a Comment
User Comments (0)
About PowerShow.com