Upload
gertrude-zehm
View
103
Download
0
Embed Size (px)
Citation preview
Methoden …\m_erm.ppt Folie:1 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:2 10.08.1999
Rainer Kröning
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)
Methoden …\m_erm.ppt Folie:3 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:4 10.08.1999
Rainer Kröning
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).
Methoden …\m_erm.ppt Folie:5 10.08.1999
Rainer Kröning
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"
Methoden …\m_erm.ppt Folie:6 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:7 10.08.1999
Rainer Kröning
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
Flugzeug landet auf P iste
Methoden …\m_erm.ppt Folie:8 10.08.1999
Rainer Kröning
Entity Relationship Modelling Grafische Notation
Beispiel nach Ward & Mellor
Pilot benutzt F lugplan
Flugzeug
startet auf
P iste
fliegt m it Passagier
benutzt
landet auf
Methoden …\m_erm.ppt Folie:9 10.08.1999
Rainer Kröning
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"
Methoden …\m_erm.ppt Folie:10 10.08.1999
Rainer Kröning
Entity Relationship Modelling Grafische Notation
Assoziierte Entity-Typen
Flugzeug
Landung
Piste
durchgef.von
Pilot
Methoden …\m_erm.ppt Folie:11 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:12 10.08.1999
Rainer Kröning
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
Arbeitnehm er
Gehalts-em pfänger
Lohn-em pfänger
Methoden …\m_erm.ppt Folie:13 10.08.1999
Rainer Kröning
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
Mitarbeiter ProjektArbeitet
in
Nam e
PersNr
Nam e
Kunde
Methoden …\m_erm.ppt Folie:14 10.08.1999
Rainer Kröning
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
Chen
Krähenfuß
Pfeil
min-max
Methoden …\m_erm.ppt Folie:15 10.08.1999
Rainer Kröning
Entity Relationship Modelling Optionalität (Muß- oder Kann-Beziehung)
Festlegung, ob Muß- oder Kannbeziehung vorliegt
Chen
Krähenfuß
Pfeil
min-max
Methoden …\m_erm.ppt Folie:16 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:17 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:18 10.08.1999
Rainer Kröning
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)
Methoden …\m_erm.ppt Folie:19 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:20 10.08.1999
Rainer Kröning
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.
Methoden …\m_erm.ppt Folie:21 10.08.1999
Rainer Kröning
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.
Methoden …\m_erm.ppt Folie:22 10.08.1999
Rainer Kröning
Entity Relationship Modelling Vorgehensweise
Beseitigung der Redundanz innerhalb von Entity-Typen
Buch
Methoden …\m_erm.ppt Folie:23 10.08.1999
Rainer Kröning
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
?
Methoden …\m_erm.ppt Folie:24 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:25 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:26 10.08.1999
Rainer Kröning
Entity Relationship Modelling Vorgehensweise
Ergebnis der Normalisierung
Methoden …\m_erm.ppt Folie:27 10.08.1999
Rainer Kröning
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
Methoden …\m_erm.ppt Folie:28 10.08.1999
Rainer Kröning
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, Hatley&Pirbhai und
Yourdan wurde ERM in SA integriert
Analyse der Lebenszyklen der modellierten Entity-Typen gibt
Aufschluß über wichtige Geschäftsvorfälle