(4)wiw-db-grundlagen

Werbung
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Nochmals zur Wiederholung:
Das generelle Ziel der Datenmodellierung besteht darin, Informationen über
die reale (betriebswirtschaftliche) Welt zu erfassen und zu ordnen, um
daraus Maßnahmen zur Steuerung der Prozesse der realen Welt abzuleiten.
Deshalb muss man
1. Einen Teilbereich der Realität auf Grund des
Bedeutungsinhaltes definieren und mit einem 
Namen identifizieren (Objektbildung)
2. Die essentiellen Merkmale des Objektes als
Attribut definieren und die Wertebereiche

(Domänen) festlegen.
3. Die Zweckbestimmung der Attribute definieren. 
4. Die Struktur der Attribute analysieren.
5. Die Beziehungen zwischen den Objekten
beschreiben.
Da jedes Datenmodell im Endeffekt auf ein realisierbares formales Datenmodell abgebildet werden soll, beeinflussen insbesondere die Struktur der Attribute und der
Beziehungen bereits frühe Phasen der Datenmodellierung.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Die semantische Datenmodellierung
… stellt sich das Ziel,
aus semantischer Sicht
(also in unserem Falle aus betriebswirtschaftlich/wirtschaftsinformatorischer Sicht)
gute (3NF) Datenmodelle zu erstellen.
Es wird also folgender Teil der
Datenmodellierung behandelt
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Reale betriebliche Datenstrukturen
Top-Down-Analyse
Bottom-Up-Analyse
Gesamtsicht
spezielle Nutzersichten
Semantische Datenmodelle
z. B. Entity-Relationship-Modell
(ERM)
formale Ebene
(deskriptive
Regeln)
Formale Datenmodelle
z. B. Hierarchisches DM,
Netzwerk-DM,
Relationales DM
methodische Ebene
- Klassifizierung
- Generalisierung/Spezialisierung
- Aggregation
Konzeptuelles
Datenmodell
(Qualitätsverbesserung
der Datenmodelle der
semantischen Ebene)
Normalisierung
Semantische Ebene
(reales Datenmodell für
einen Anwendungsfall)
Physisches
Datenmodell
(Datenbank)
Datenbasis eines betrieblichen Informationssystems
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Das Entity-Relationship-Modell (ERM
(nach CHEN: The Entity-Relationship Model – Toward a Unified Viewe of Data, 1976 – sekundär u. a. Ferstl/Sinz: Softwarekonzepte der WI; Kempler/Eickler: Datenbanksysteme)
Elemente: Entities (abgrenzbare Objekte)
Entity Set
Entity-Typ
Entity-Name
Relationship (Beziehung
zwischen Entities)
RSName
Beziehungstypen: 1:1
n:1
n:m
Relationship Set
Relationship-Typ
Attribute (beschreiben Entities und RS)
bijektive funktionale Beziehung
funktionale Beziehung
nichtfunktionale Beziehung
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Verwendungszweck von Attributen
Attribute beschreiben die essentiellen Merkmale eines Entitys aus der Sicht der
späteren Nutzung des Datenmodells für einen betriebswirtschaftlich sinnvollen
Zweck.
Verwendungszweck
Bemerkungen
Identifikation
F
F
Eindeutigkeit unabdingbar (Constraint)
für Join erforderlich
Klassifizierung
F
F
ermöglicht Selektion
für Gruppierung unabdingbar
Systematisierung
F
F
ermöglicht Selektion
Beschreibung
(Deskription)
keine sinnvolle Selektion,
Gruppierung und Join möglich
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Wertigkeit von Attributen
Attribute können sein
einwertig
oder
mehrwertig
Beispiel Personaldaten-Modell eines Unternehmens:
- Personalnummer,
- Name,
- Geburtsdatum,
- Geschlecht
- Qualifikationen
Art
Fachrichtung
Abschlussjahr
- Forschungsgebiete
Themen
Patente
Nur einwertige Attribute können ein Kandidat zur Objektidentifikation werden.
Problem: Das relationale Datenmodell als formales Ziel-Datenmodell kann in
einer Relation (Tabelle) nur einwertige Attribute darstellen (1NF).
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Typen semantischer Beziehungen (1)
Fahrer
Alfred
Bruno
Johann
Max
Siegfried
...
fährt
Kraftfahrzeug
Ford Fiesta
BMW
VW Golf I
VW Golf II
Renault
...
Grad: 1 : 1
Verbindlichkeit: obligatorisch für beide Seiten ("muss")
Jeder Fahrer (eines Fuhrparkes) fährt immer nur genau ein Kraftfahrzeug und jedes
Kraftfahrzeug wird von genau einem Fahrer gefahren.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Typen semantischer Beziehungen (2)
Mitarbeiter
Alfred
Bruno
Johann
Max
Siegfried
...
führt
aus
Funktion
Dekan
Studienberater
SG-Sprecher
...
Grad: 1 : 1
Verbindlichkeit: obligatorisch ("muss") nur für eine Seite (Funktion)
Jede Funktion (eines Fachbereiches) wird durch genau einen Mitarbeiter ausgeführt. Ein
Mitarbeiter darf höchstens eine Funktion haben, aber nicht jeder Mitarbeiter muss eine
Funktion haben.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Typen semantischer Beziehungen (3)
Mitarbeiter
Alfred
Bruno
Johann
Max
Siegfried
...
besitzt
Leserausweis
020102
982721
876222
022233
...
Grad: 1 : 1
Verbindlichkeit: nichtobligatorisch ("kann") für beide Seiten.
Jeder Mitarbeiter (einer Hochschule) kann genau einen Leserausweis für die Bibliothek
besitzen. Jeder Leserausweis wird genau an eine Person vergeben. Leserausweise der
Bibliothek können (müssen aber nicht unbedingt nur) an Mitarbeiter vergeben werden.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Typen semantischer Beziehungen (4)
Lager
Lebensmittel
Chemie
…
enthält
Artikel
Mehl
Salz
Zucker
Seife
Zahnpaste
Grad: 1 : n
Verbindlichkeit: obligatorisch ("muss") für die n-Seite (Artikel).
In jedem Lager können mehrere Artikel gelagert werden. Artikel werden immer gelagert,
aber nur in genau einem Lager.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Typen semantischer Beziehungen (5)
Student
leiht
Bücher
Alfred
Bruno
Johann
...
12234556
12345566
23456789
23456777
65543312
34442112
...
Grad: 1 : n
Verbindlichkeit: nichtobligatorisch ("kann") für die n-Seite (Bücher).
Jeder Student kann mehrere Bücher leihen. Jedes Buch kann nur genau an einen
Studenten ausgeliehen werden (muss aber nicht ausgeliehen sein).
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Typen semantischer Beziehungen (6)
Lager
Südstadt
Nordstadt
Hafen
...
enthält
Artikel
Mehl
Salz
Zucker
Seife
Zahnpaste
...
Grad: n : m
Verbindlichkeit: ohne Bedeutung, im Beispielfall nichtobligatorisch.
In jedem Lager können mehrere Artikel gelagert werden. Artikel können in mehreren
Lagern gelagert werden.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Auflösung mehrwertiger Attribute
Beispiel Personaldaten-Modell eines Unternehmens:
- Personalnummer,
- Name,
- Geburtsdatum,
- Geschlecht
- Qualifikationen
Art
Fachrichtung
Abschlussjahr
- Forschungsgebiete
Themen
Patente
Person
1
besitzt
n
Qualifikation
1
besitzt
n
Forschungsgebiet
1
besitzt
n
Themen
Gruppen mehrwertiger Attribute werden als eigenes Entity mit einer 1:n-Beziehung zum (Master-) Objekt formuliert.
Diese Art der Beziehung wird als Master-Detail-Beziehung bezeichnet.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Darstellung dynamischer Domänen
Beispiel: Eine Artikelnummernsystematik soll als Domäne für die Relation
"ARTIKEL" eines Unternehmens dienen.
Artikel
n
hat
Domäne
1
Artikelsystematik
Domänen (Wertevorrat eines Attributes) werden bei großen Wertemengen
und/oder hoher Änderungsfrequenz sinnvoll als eigene Entität dargestellt.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Präzisierung der Beziehungen im ERM
durch Veränderung der Notationsform
Einbeziehung der Verbindlichkeit (Optionalität) einerBeziehung wie folgt:
Grad
obligatorisch nicht obligatorisch
1:1
(1,1)
(0,1)
1:n
(1,* )
(0,* )
Beispiel:
Auftrag
(1,* )
besteht aus
(1,1)
Positionen
Deutung: Ein Auftrag muss aus einer (1) bis n () Position(en) bestehen.
Eine Position muss immer genau einem Auftrag zugeordnet
sein.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Beispiel eines einfachen ERM
Rechnungslegung für eine Lieferung
Kunde
Power-Designer
(Sybase)
(0, *)
erhält
(1,1)
Rechnung
(1,* )
besteht aus
(1,1)
Positionen
Deutung: Ein Kunde erhält (für vorausgegangene Lieferungen) Rechnungen.
Nicht jeder Kunde muss mindestens eine Rechnung erhalten.
Jede Rechnung ist aber genau nur einem Kunden zugeordnet. Eine
Rechnung besteht aus n Positionen, mindestens aber einer Position. Jede Rechnungsposition gehört nur exakt einer Rechnung an.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Entity-Relationship-Modell
Darstellung rekursiver Beziehungen
Beispiel Stückliste
Bauteil
(1,* )
(1,* )
besteht aus
Wird verwendet in
Struktur
Neues Bezeichnungselement:
Rolle
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Zusammenfassender Überblick zum ERM
Entity-Typen
dualen Typ
können Beziehungen eingehen vom …
rekursiven Typ
bilden sachlogische Zusammenhänge ab zwischen …
den Instanzen zweier unterschiedlicher
Entity-Sets.
Diese können modifiziert (in mehrere
Enty-Typen zerlegt) werden, infolge …
mehrwertiger
Attribute.
Relationships
mit Attributen.
dynamischer
Domänen.
Rollen können vergeben werden, sind jedoch
in der Regel nicht notwendig.
den Instanzen des gleichen EntitySets.
Dadurch werden Rollen
notwendig.
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Qualitätsverbesserung von ER-Modellen
Mit dem Ziel der Erstellung qualitativ guter ERM werden die Konstruktionsoperatoren Klassifizierung, Aggregation und Generalisierung/Spezialisierung
(auch Vererbung bzw. Inheritance) benutzt. Von besonderer Bedeutung für die
praktische Modellierung ist die Generalisierung/Spezialisierung.
Beispiel: Das Personal eines Unternehmens besteht aus Arbeitern und
Angestellten. Diese besitzen gemeinsame Attribute, unterscheiden
sich jedoch auch bei den speziellen Attributen zur Lohn- bzw.
Gehaltsberechnung
Generalisierung
Arbeitnehmer
Angestellter
Spezialisierung
Arbeiter
FHTW Berlin
Datenbanken
Prof. Dr. Zschockelt
Methodik der ER-Modellierung
Wo ist der Anwender gefragt?
1. Umfeld bestimmen (z. B. Abteilung Beschaffung). 
2. Wesentliche Objekte als Entity-Kandidaten wählen
(z. B. Lieferanten, Artikel, Bestellungen). 
3. Prüfen, ob gewählte Objekte Entity-Sets sind.
4. Wenn ja: Objekt wird Entity.
5. Attribute zur Beschreibung des Entity ermitteln. 
6. Sind Attribute mehrwertig (z. B. Konten eines Lieferanten), wird die Gruppe
mehrwertiger Attribute ein eigenes Entity (z. B. Bankverbindung). 
7. Sollen Attributswerte eines Entity-Sets aus einer Systematik gewählt
werden (dynamische Domäne), wird die Systematik ein Entity (z. B.
Bankleitzahlenverzeichnis). 
8. Beziehungen (Relationships) zwischen den Entities nach Grad (Cardinality)
und Verbindlichkeit (Mandatory, Dependent) bestimmen. 
9. Sonderfall Vererbung (Inheritance) erkennen.
Tools zur Datenmodellierung: http://www.datenmodelle.de/software.php
Herunterladen