Kapitel DB:III (Fortsetzung)

Ähnliche Dokumente
Kapitel DB:III (Fortsetzung)

Konzeptuelle Modellierung

Datenbankentwurf. Abstraktionsebenen des Datenbankentwurfs. 1. Konzeptuelle Ebene. 2. Implementationsebene (Logische Ebene) 3.

Abstraktionsebenen des Datenbankentwurfs

Kapitel DB:IV (Fortsetzung)

Datenbankentwurf. Abstraktionsebenen des Datenbankentwurfs: 3. Konzeptuelle Ebene. 5. Implementationsebene. 7. Physische Ebene.

Abstraktionsebenen des Datenbankentwurfs

Einführung in das Entity-Relationship-Modell

Datenbankentwurf. Objektbeschreibung. Prozeßbeschreibungen. Beziehungsbeschreibung: prüfen. Abstraktionsebenen des Datenbankentwurfs

Kapitel DB:IV (Fortsetzung)

Datenbankentwurf. VO Datenmodellierung. Katrin Seyr. Institut für Informationssysteme Technische Universität Wien.

Rückblick: Entity-Relationship-Modell

Rückblick: Datenbankentwurf

2. Relationale Datenbanken

Datenbanksysteme SS 2009

Kapitel 2: Konzeptuelle Modellierung

Einführung, Entity-Relationship Modell 9. DATENBANKSYSTEME: DAS ENTITY RELATIONSHIP MODELL

Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt

3. Relationales Modell & Algebra

Kapitel DB:III. III. Konzeptueller Datenbankentwurf

3. Relationales Modell & Algebra

Datenbanken 1. Kapitel 2: Datenbankentwurf. Ansprechpartner hat Name Adresse. Geschaeftspartner <pi> Characters (30) Characters (50) ist.

Inhalt. 2.1 Datenbankentwurf. 2.2 Relationales Modell. 2.3 Relationale Entwurfstheorie. 2.4 Relationale Algebra. 2.5 Structured Query Language (SQL)

Datenbankentwurf. Abstraktionsebenen des Datenbankentwurfs. 1. Konzeptuelle Ebene. 2. Implementationsebene. 3. Physische Ebene

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr

5.2 Entity-Relationship-Modell

Kapitel 6: Das E/R-Modell

Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 06. Nov Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 2

Teil III Entity-Relationship-Modell

Datenbankentwurf. Kapitel 3. Datenbankentwurf 76 / 508

Kapitel 3: Datenbanksysteme

Datenmodelle. Einführung in das Entity-Relationship-Modell. Datenbankmodelle. Beispiel für ein ER-Schema. Kunde( Meier, , ) 41, Meier

Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation

Kapitel 3: Datenbanksysteme

Datenbanksysteme: Entwurf

Datenorientierter Ansatz. Datenbankentwurfsschritte. Welche Daten müssen im System verwaltet werden? Wie werden die Daten im System verändert?

Schema: konkrete Beschreibung einer bestimmten. (unter Verwendung eines Datenmodells)

Kapitel 6: Das E/R-Modell. Skript 2003 Christian Böhm

E-R-Modell zu Relationenschema

Kapitel 3: Datenbanksysteme

Kapitel 3: Entity-Relationship-Modell

Einführung in die Datenorganisation. Informationssysteme

Datenmodellierung. Ausschnitt der Realen Miniwelt. Manuelle/intellektuelle Modellierung. Konzeptuelles Schema (E/R- oder UML-Schema)

konzeptueller Entwurf mittels E/R-Modell einfache Funktionalitäten n-stellige Relationships (n>2) (siehe nächste zwei Folien) schwache Entities

Datenbanksysteme SS 2007

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Kapitel 1: Einführung 1.1 Datenbanken?

Kapitel 6: Das E/R-Modell

Inhalte der Veranstaltung

Entwurf: Fortgeschrittene Konzepte

Datenbankentwurf. Kapitel 2. Datenbankentwurf 1 / 64

Logischer Entwurf. Stufen der Entwicklung einer Datenbank. Inhalt. Übersicht. 1. Datenbank - Entwurf ( ER - Diagramm)

3. Relationales Modell

-02- Arbeitsunterlagen

Übung zur Vorlesung Einführung in die Informatik für Hörer anderer Fachrichtungen (WZW) IN8003, SS 2011 Prof. Dr. J. Schlichter

Einführung in Datenbanksysteme

Medizininformatik Software Engineering

Wirtschaftsinformatik 2 Modellierung betrieblicher Informationssysteme - MobIS (theoretische Aspekte der Informationsmodellierung)

Übungsblatt DB:IV. Abzugeben sind, bis , Lösungen zu den Aufgaben 1d, 1e, 3, 7, 9, 12. Aufgabe 1 : Datenintegrität

Grundlagen des relationalen l Modells

Entity Relationship Modell (ERM) (Konzeptueller Datenbankentwurf)

Veranstaltung Pr.-Nr.: Datenmodellierung. Veronika Waue WS 07/08. Phasenschema der Datenbankentwicklung (grob) Informationsanalyse

zu E 1 der Form (0, 1) erfüllen.

Entity Relationship Model

Übungen Teil 1: ER-Modelle. Dozent: Stefan Maihack Dipl. Ing. (FH)

Datenbanken Unit 2: Das ER-Modell

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Datenorganisation. Februar bis Mai Dipl.-Oek. Patrick Bartels Institut für Wirtschaftsinformatik Universität Hannover

Einführung in Datenbanken

Kapitel 5: Das E/R-Modell

Stufen der Entwicklung einer Datenbank. ER-Modell. Datenbank-Entwurf (1) Datenbank-Entwurf (2) 1. Datenbank - Entwurf ( ER - Diagramm)

9. Einführung in das Entity-Relationship-Modell 9-1. ER-Modell. 1. Überblick über den Datenbank-Entwurf. 3. Integritätsbedingungen: Allg.

Datenbanken 1 für Medieninformatiker. 2. Semantische Datenmodellierung 2.3. ERM-Modellierung 2.4. ERM-Erweiterungen

Daten Bank. 2. Vorlesung. Dr. Karsten Tolle PRG2 SS 2014

Das Entity-Relationship-Modell. Prof. Dr. T. Kudraß 1

Das konzeptionelle Datenmodell

3. Grundlagen relationaler Datenbanksysteme

Rückblick: Relationales Modell

Online-Kurs 'Datenbanken und Datenmodellierung'

Datenbanken. Semantische Datenmodellierung:


Übung zu Relationale Datenbanken in der Anwendung

Abschnitt 3: Mathematische Grundlagen

Vorlesung Datenbank-Entwurf Klausur

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

3. Das Relationale Datenmodell

Ausgabe: Eine DBMS unabhängige high-level Repräsentation der Anforderungen, das "konzeptuelle Schema".

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Transkript:

Kapitel DB:III (Fortsetzung) III. Konzeptueller Datenbankentwurf Einführung in das Entity-Relationship-Modell ER-Konzepte und ihre Semantik Charakterisierung von Beziehungstypen Existenzabhängige Entity-Typen Abstraktionskonzepte Konsolidierung, Sichtenintegration Konzeptuelle Modellierung mit UML DB:III-60 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei zweistelligen Beziehungen (Formalismus I für Kardinalitäten) x y E 1 R E 2 Zweistellige Beziehungstypen und ihre Semantik: 1:1-Beziehung Jedem Entity e 1 state(e 1 ) ist höchstens ein Entity e 2 state(e 2 ) zugeordnet und umgekehrt. 1:n-Beziehung Jedem Entity e 1 state(e 1 ) sind beliebig viele (auch gar keine) Entities aus state(e 2 ) zugeordnet, und jedem Entity e 2 state(e 2 ) ist höchstens ein Entity e 1 state(e 1 ) zugeordnet. n:m-beziehung Keine Restriktionen gelten; jedes Entity e 1 state(e 1 ) kann mit beliebig vielen Entities e 2 state(e 2 ) in Beziehung stehen und umgekehrt. DB:III-61 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei zweistelligen Beziehungen (Formalismus I für Kardinalitäten) x y E 1 R E 2 Zweistellige Beziehungstypen und ihre Semantik: 1:1-Beziehung Jedem Entity e 1 state(e 1 ) ist höchstens ein Entity e 2 state(e 2 ) zugeordnet und umgekehrt. 1:n-Beziehung Jedem Entity e 1 state(e 1 ) sind beliebig viele (auch gar keine) Entities aus state(e 2 ) zugeordnet, und jedem Entity e 2 state(e 2 ) ist höchstens ein Entity e 1 state(e 1 ) zugeordnet. n:m-beziehung Keine Restriktionen gelten; jedes Entity e 1 state(e 1 ) kann mit beliebig vielen Entities e 2 state(e 2 ) in Beziehung stehen und umgekehrt. DB:III-62 Conceptual Design STEIN 2004-2016

Bemerkungen: Mit dem Wort Funktionalität wird hier eine Abhängigkeitsbeziehung zwischen Entity-Typen bzw. zwischen Entity-Typen und einem Beziehungstyp bezeichnet. Eine andere Bezeichnung für Funktionalität ist Constraint. Die Semantik von n:1-beziehungen ist analog zu der von 1:n-Beziehungen. Bei jeder Art von zweistelligen Beziehungen kann es Entities aus state(e 1 ) (bzw. state(e 2 )) geben, denen kein Element aus state(e 2 ) (bzw. state(e 1 )) zugeordnet ist. DB:III-63 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei zweistelligen Beziehungen (Formalismus I für Kardinalitäten) x y E 1 R E 2 Beispiele: 1:1-Beziehung. verheiratet -Relation zwischen Männern und Frauen nach europäischem Recht. 1:n-Beziehung. beschäftigen -Relation zwischen Firmen und Personen. n:m-beziehung. unterrichtet -Relation zwischen Studierenden und Professoren. DB:III-64 Conceptual Design STEIN 2004-2016

Bemerkungen: Funktionalitäten stellen Integritätsbedingungen dar, die in der zu modellierenden Welt immer gelten müssen. Die binären 1:1, 1:n und n:1-beziehungen stellen partielle Funktionen dar. Insbesondere ist jede 1:1-Beziehung umkehrbar, und es existieren folgende Funktionen: R : E 1 E 2 R 1 : E 2 E 1 Beispiel: Ehemann: Frauen Männer Ehefrau: Männer Frauen Bei einer 1:n-Beziehung ist die Richtung der Funktion zwingend, vom n-entity-typ zum 1-Entity-Typ. Beispiel: beschäftigen: Personen Firmen DB:III-65 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei zweistelligen Beziehungen (Formalismus I für Kardinalitäten) state(e 1 ) state(e 2 ) state(e 1 ) state(e 2 ) 1:1 1:n state(e 1 ) state(e 2 ) state(e 1 ) state(e 2 ) n:1 n:m DB:III-66 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei zweistelligen Beziehungen (Formalismus I für Kardinalitäten) Alternative graphische Darstellungen für zweistellige funktionale Beziehungen: 1 1 E 1 R E 2 n 1 E 1 R E 2 E 1 R E 2 DB:III-67 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei n-stelligen Beziehungen (Formalismus I für Kardinalitäten) Sei R eine Beziehung zwischen den Entity-Typen E 1,..., E n, wobei die Funktionalität bei Entity-Typ E k, 1 k n, mit 1 spezifiziert ist. Dann wird durch R folgende partielle Funktion vorgegeben: R : E 1... E k 1 E k+1... E n E k [Kemper/Eickler 2011] R n E 1... E k... E n 1 n DB:III-68 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei n-stelligen Beziehungen (Formalismus I für Kardinalitäten) Sei R eine Beziehung zwischen den Entity-Typen E 1,..., E n, wobei die Funktionalität bei Entity-Typ E k, 1 k n, mit 1 spezifiziert ist. Dann wird durch R folgende partielle Funktion vorgegeben: R : E 1... E k 1 E k+1... E n E k [Kemper/Eickler 2011] R Urbildbereich n Bildbereich E 1... E k... E n 1 n DB:III-69 Conceptual Design STEIN 2004-2016

Bemerkungen: n-stellige (n-äre) Beziehungstypen spezifizieren genau die Menge der Funktionen, für deren Signatur gilt: die Bildmenge besteht aus einem Entity-Typ mit der Kardinalität 1; die Urbildmenge ist das kartesische Produkt der restlichen n 1 Entity-Typen. Diese Definition von n-stelligen Beziehungstypen erweitert die binären n:1-beziehungen in kanonischer Weise. Dabei ist der 1-Entity-Typ der rechten Seite in der Rolle des rechten 1-Entity-Typs der binären Funktionalität; die restlichen n 1 Entity-Typen sind zusammen in der Rolle des linken n-entity-typs der binären Funktionalität. n-stellige Beziehungstypen sind in der Regel keine Kurzschreibweise von ( n 2) binären Beziehungstypen. Selbst eine ternäre 1:1:1-Relation R lässt sich nicht zwangsläufig verlustlos bzw. verbundtreu in binäre Beziehungstypen zerlegen. DB:III-70 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei n-stelligen Beziehungen (Formalismus I für Kardinalitäten) Beispiel Prüfungsordnung (= Ausschnitt der realen Welt) : (a) (b) (c) (d) Ein Student darf bei demselben Professor nur ein Seminarthema machen. Ein Student darf dasselbe Thema nur einmal bearbeiten und nicht zu einem anderen Professor damit gehen. Ein Professor kann dasselbe Thema an verschiedene Studenten vergeben. Dasselbe Thema kann von verschiedenen Professoren vergeben werden. DB:III-71 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei n-stelligen Beziehungen (Formalismus I für Kardinalitäten) Beispiel Prüfungsordnung (= Ausschnitt der realen Welt) : (a) (b) (c) (d) Ein Student darf bei demselben Professor nur ein Seminarthema machen. Ein Student darf dasselbe Thema nur einmal bearbeiten und nicht zu einem anderen Professor damit gehen. Ein Professor kann dasselbe Thema an verschiedene Studenten vergeben. Dasselbe Thema kann von verschiedenen Professoren vergeben werden. Konzeptuelles Modell: 1 Professor Student n Note betreut 1 Thema DB:III-72 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei n-stelligen Beziehungen (Formalismus I für Kardinalitäten) Beispiel Prüfungsordnung (= Ausschnitt der realen Welt) : (a) (b) (c) (d) Ein Student darf bei demselben Professor nur ein Seminarthema machen. Ein Student darf dasselbe Thema nur einmal bearbeiten und nicht zu einem anderen Professor damit gehen. Ein Professor kann dasselbe Thema an verschiedene Studenten vergeben. Dasselbe Thema kann von verschiedenen Professoren vergeben werden. Konzeptuelles Modell: 1 Professor Student n Note betreut 1 Thema Analyse des konzeptuellen Modells: zu (a) Abgebildet durch betreut f1 : Professor Student Thema zu (b) Abgebildet durch betreut f2 : Thema Student Professor zu (c) Zugelassen durch betreut f1, betreut f2. zu (d) Zugelassen durch betreut f1, betreut f2. DB:III-73 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei n-stelligen Beziehungen (Formalismus I für Kardinalitäten) Beispiel Prüfungsordnung (= Ausschnitt der realen Welt) : (a) (b) (c) (d) Ein Student darf bei demselben Professor nur ein Seminarthema machen. Ein Student darf dasselbe Thema nur einmal bearbeiten und nicht zu einem anderen Professor damit gehen. Ein Professor kann dasselbe Thema an verschiedene Studenten vergeben. Dasselbe Thema kann von verschiedenen Professoren vergeben werden. Konzeptuelles Modell: 1 Professor Student n Note betreut 1 Thema Analyse des konzeptuellen Modells: zu (a) Abgebildet durch betreut f1 : Professor Student Thema zu (b) Abgebildet durch betreut f2 : Thema Student Professor zu (c) Zugelassen durch betreut f1, betreut f2. zu (d) Zugelassen durch betreut f1, betreut f2. DB:III-74 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei n-stelligen Beziehungen (Formalismus I für Kardinalitäten) Beispiel Prüfungsordnung (= Ausschnitt der realen Welt) : (a) (b) (c) (d) Ein Student darf bei demselben Professor nur ein Seminarthema machen. Ein Student darf dasselbe Thema nur einmal bearbeiten und nicht zu einem anderen Professor damit gehen. Ein Professor kann dasselbe Thema an verschiedene Studenten vergeben. Dasselbe Thema kann von verschiedenen Professoren vergeben werden. Konzeptuelles Modell: 1 Professor Student n Note betreut 1 Thema Analyse des konzeptuellen Modells: zu (a) Abgebildet durch betreut f1 : Professor Student Thema zu (b) Abgebildet durch betreut f2 : Thema Student Professor zu (c) Zugelassen durch betreut f1, betreut f2. zu (d) Zugelassen durch betreut f1, betreut f2. DB:III-75 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Funktionalitäten bei n-stelligen Beziehungen (Formalismus I für Kardinalitäten) Beispiel Prüfungsordnung (= Ausschnitt der realen Welt) : (a) (b) (c) (d) Ein Student darf bei demselben Professor nur ein Seminarthema machen. Ein Student darf dasselbe Thema nur einmal bearbeiten und nicht zu einem anderen Professor damit gehen. Ein Professor kann dasselbe Thema an verschiedene Studenten vergeben. Dasselbe Thema kann von verschiedenen Professoren vergeben werden. Konzeptuelles Modell: 1 Professor Student n Note betreut 1 Thema Analyse des konzeptuellen Modells: zu (a) Abgebildet durch betreut f1 : Professor Student Thema zu (b) Abgebildet durch betreut f2 : Thema Student Professor zu (c) Zugelassen durch betreut f1, betreut f2. zu (d) Zugelassen durch betreut f1, betreut f2. DB:III-76 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen [min, max]-notation (Formalismus II für Kardinalitäten) [min 1, max 1 ] [min n, max n ] R E 1... E n Schreibweise: R(E 1 [min 1, max 1 ],..., E i [min i, max i ],..., E n [min n, max n ]) DB:III-77 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen [min, max]-notation (Formalismus II für Kardinalitäten) [min 1, max 1 ] [min n, max n ] R E 1... E n Schreibweise: R(E 1 [min 1, max 1 ],..., E i [min i, max i ],..., E n [min n, max n ]) Semantik der [min, max]-notation: Die Anzahl der Beziehungsinstanzen vom Typ R mit Beteiligung der Instanz e i vom Typ E i ist zwischen min i und max i : i {1,..., n} e i state(e i ) : min i {t state(r) t.e i = e i } max i t.e i bezeichne die Projektion der Beziehungsinstanz t auf den Entity-Typ E i. DB:III-78 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen [min, max]-notation (Formalismus II für Kardinalitäten) [min 1, max 1 ] [min n, max n ] R E 1... E n Schreibweise: R(E 1 [min 1, max 1 ],..., E i [min i, max i ],..., E n [min n, max n ]) Semantik der [min, max]-notation: Die Anzahl der Beziehungsinstanzen vom Typ R mit Beteiligung der Instanz e i vom Typ E i ist zwischen min i und max i : i {1,..., n} e i state(e i ) : min i {t state(r) t.e i = e i } max i t.e i bezeichne die Projektion der Beziehungsinstanz t auf den Entity-Typ E i. DB:III-79 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen [min, max]-notation (Formalismus II für Kardinalitäten) Beispiele: arbeitet_in(mitarbeiter[0,1], Raum[0,3]) Mitarbeitern ist ein oder kein Raum zugeordnet. Pro Raum gibt es höchstens drei Mitarbeiter. verantwortlich_für(mitarbeiter[0,*], Computer[1,1]) Es gibt Mitarbeiter, die für keinen Computer verantwortlich sind aber auch Mitarbeiter, die für mehrere Computer verantwortlich sind. Jedem Computer ist genau ein Mitarbeiter zugeordnet, der verantwortlich für diesen Computer ist. DB:III-80 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen [min, max]-notation (Formalismus II für Kardinalitäten) Beispiele: arbeitet_in(mitarbeiter[0,1], Raum[0,3]) Mitarbeitern ist ein oder kein Raum zugeordnet. Pro Raum gibt es höchstens drei Mitarbeiter. verantwortlich_für(mitarbeiter[0,*], Computer[1,1]) Es gibt Mitarbeiter, die für keinen Computer verantwortlich sind aber auch Mitarbeiter, die für mehrere Computer verantwortlich sind. Jedem Computer ist genau ein Mitarbeiter zugeordnet, der verantwortlich für diesen Computer ist. DB:III-81 Conceptual Design STEIN 2004-2016

Bemerkungen: Eine spezielle Wertangabe für max i ist. Sie dient zum Anzeigen einer unbegrenzten Anzahl. [0, ] bedeutet keine Einschränkung und ist die Standardannahme, wenn keine Kardinalitäten angegeben sind. R(E 1 [0, 1], E 2 ) entspricht einer partiellen funktionalen Beziehung R : E 1 E 2. R(E 1 [1, 1], E 2 ) entspricht einer totalen funktionalen Beziehung R : E 1 E 2. Die Kardinalitätsangabe auf der rechten Seite verrät auch etwas über die Surjektivität der Abbildung: [0, ] bedeutet, dass nicht jedes Element in einer Beziehung stehen muss; [1, ] bedeutet, dass jedes Element erreicht wird, die Funktion also surjektiv ist. DB:III-82 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Formalismus I versus Formalismus II Unterschied in der Semantik: Die Semantik der Kardinalitäten bei Formalismus I bezieht sich auf Instanzen von Entity-Typen. Die Semantik der Kardinalitäten bei Formalismus II ([min, max]-notation) bezieht sich auf Instanzen von Beziehungstypen. DB:III-83 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Formalismus I versus Formalismus II Unterschied in der Semantik: Die Semantik der Kardinalitäten bei Formalismus I bezieht sich auf Instanzen von Entity-Typen. Die Semantik der Kardinalitäten bei Formalismus II ([min, max]-notation) bezieht sich auf Instanzen von Beziehungstypen. Somit kann eine partielle Funktion R : E 1 E 2 graphisch u.a. auf folgende Arten dargestellt werden: E 1 R E 2 n 1 E 1 R E 2 [0,1] [0,*] E 1 R E 2 DB:III-84 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Umwandlung n-stelliger Beziehungen Beispiel für die Umwandlung einer dreistelligen Beziehung in drei zweistellige Beziehungen: Titel Vorlesung empfiehlt-p-v Titel Vorlesung Professor empfiehlt Professor empfiehlt-v-b Fach Name Buch Fach Name empfiehlt-p-b Buch ISBN ISBN DB:III-85 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Umwandlung n-stelliger Beziehungen (Fortsetzung) ursprünglicher Zustand: Professor Vorlesung empfiehlt Buch (ISBN) Pearl Datenbanken 0-341... Pearl IT-Systeme 2-305... Graham Datenbanken 2-305... Graham IT-Systeme 2-305... Zustände der drei zweistelligen Beziehungen: empfiehlt-p-v Professor Vorlesung Pearl Datenbanken Pearl IT-Systeme Graham Datenbanken Graham IT-Systeme empfiehlt-p-b Professor Buch (ISBN) Pearl 0-341... Pearl 2-305... Graham 2-305... Vorlesung empfiehlt-v-b Buch (ISBN) Datenbanken 0-341... IT-Systeme 2-305... Datenbanken 2-305... DB:III-86 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Umwandlung n-stelliger Beziehungen (Fortsetzung) ursprünglicher Zustand: Professor Vorlesung empfiehlt Buch (ISBN) Pearl Datenbanken 0-341... Pearl IT-Systeme 2-305... Graham Datenbanken 2-305... Graham IT-Systeme 2-305... Zustände der drei zweistelligen Beziehungen: empfiehlt-p-v Professor Vorlesung Pearl Datenbanken Pearl IT-Systeme Graham Datenbanken Graham IT-Systeme empfiehlt-p-b Professor Buch (ISBN) Pearl 0-341... Pearl 2-305... Graham 2-305... empfiehlt-v-b Vorlesung Buch (ISBN) Datenbanken 0-341... IT-Systeme 2-305... Datenbanken 2-305... DB:III-87 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Umwandlung n-stelliger Beziehungen (Fortsetzung) ursprünglicher Zustand: Professor Vorlesung empfiehlt Buch (ISBN) Pearl Datenbanken 0-341... Pearl IT-Systeme 2-305... Graham Datenbanken 2-305... Graham IT-Systeme 2-305... Pearl Datenbanken 2-305... Problem 1 Zustände der drei zweistelligen Beziehungen: empfiehlt-p-v Professor Vorlesung Pearl Datenbanken Pearl IT-Systeme Graham Datenbanken Graham IT-Systeme empfiehlt-p-b Professor Buch (ISBN) Pearl 0-341... Pearl 2-305... Graham 2-305... empfiehlt-v-b Vorlesung Buch (ISBN) Datenbanken 0-341... IT-Systeme 2-305... Datenbanken 2-305... DB:III-88 Conceptual Design STEIN 2004-2016

Charakterisierung von Beziehungstypen Umwandlung n-stelliger Beziehungen (Fortsetzung) ursprünglicher Zustand: Professor Vorlesung empfiehlt Buch (ISBN) Pearl Datenbanken 0-341... Pearl IT-Systeme 2-305... Graham Datenbanken? 2-305... Graham IT-Systeme 2-305... Pearl Datenbanken 2-305... Problem 12 Zustände der drei zweistelligen Beziehungen: empfiehlt-p-v Professor Vorlesung Pearl Datenbanken Pearl IT-Systeme Graham Datenbanken Graham IT-Systeme empfiehlt-p-b Professor Buch (ISBN) Pearl 0-341... Pearl 2-305... Graham 2-305... empfiehlt-v-b Vorlesung Buch (ISBN) Datenbanken 0-341... IT-Systeme 2-305... Datenbanken 2-305... Web-Services 1-100 DB:III-89 Conceptual Design STEIN 2004-2016

Bemerkungen: Verschiedene Zustände der dreistelligen Relation (oben) bilden auf dieselben zweistelligen Relationen (unten) ab. Bei der Umkehrung dieser Zerlegung (von unten nach oben) können zusätzliche Tupel enstehen. Die illustrierte Problematik wird als die Eigenschaft der Verlustlosigkeit bzw. Verbundtreue in der Entwurfstheorie relationaler Datenbanken behandelt. Die im Beispiel durchgeführte Zerlegung ist nicht verlustlos: verloren gegangen ist die Information, dass Pearl das Buch 2-305 für IT-Systeme, aber nicht für Datenbanken empfiehlt. Mit den drei zweistelligen Beziehungstypen können auch Zusammenhänge abgebildet werden, die vorher in der dreistelligen Relation nicht möglich waren: ein Buch (1-100) wird für eine Vorlesung (Web-Services) empfohlen, für die keine Professorin angegeben ist. Manche Datenbanksysteme bieten für die Modellierung nur binäre Beziehungstypen an. DB:III-90 Conceptual Design STEIN 2004-2016

Existenzabhängige Entity-Typen Bisher vorausgesetzt: Entities existieren autonom und sind innerhalb ihres Typs über die Schlüsselattribute eindeutig identifizierbar. DB:III-91 Conceptual Design STEIN 2004-2016

Existenzabhängige Entity-Typen Bisher vorausgesetzt: Entities existieren autonom und sind innerhalb ihres Typs über die Schlüsselattribute eindeutig identifizierbar. Aus Modellierungssicht sind auch Entity-Typen sinnvoll, die 1. von einem anderen, übergeordneten Entity-Typ abhängig sind, 2. in Kombination mit dem Schlüssel des übergeordneten Entity-Typs eindeutig identifizierbar sind. Beispiel: Größe Straße Gebäude GebNr 1 n liegt-in Raum RaumNr DB:III-92 Conceptual Design STEIN 2004-2016

Bemerkungen: Existenzabhängige Entity-Typen werden auch als schwache Entity-Typen bezeichnet. Existenzabhängige Entity-Typen werden durch doppelt umrandete Rechtecke, die Beziehung zu dem übergeordneten Entity-Typ durch eine doppelt umrandete Raute und die zugehörige Kante durch eine Doppellinie repräsentiert. Die Beziehung eines existenzabhängigen Entity-Typs zu dem übergeordneten Entity-Typ ist meist n:1, manchmal 1:1, aber nie n:m. Existenzabhängige Entity-Typen haben im Allgemeinen keinen Schlüssel, der alle Entities eindeutig identifiziert. Statt dessen gibt es ein Attribut (bzw. eine Menge von Attributen), das alle existenzabhängigen Entities, die einem übergeordneten Entity zugeordnet sind, voneinander unterscheidet. Diese Attribute werden im ER-Diagramm gestrichelt unterstrichen. DB:III-93 Conceptual Design STEIN 2004-2016

Abstraktionskonzepte Generalisierung / Spezialisierung Die Generalisierung wird im konzeptuellen Entwurf eingesetzt, um eine bessere im Sinne von natürlichere Strukturierung der Entity-Typen zu erzielen. DB:III-94 Conceptual Design STEIN 2004-2016

Abstraktionskonzepte Generalisierung / Spezialisierung Die Generalisierung wird im konzeptuellen Entwurf eingesetzt, um eine bessere im Sinne von natürlichere Strukturierung der Entity-Typen zu erzielen. Vorgehensweise: Die Eigenschaften ähnlicher Entity-Typen werden faktorisiert und einem gemeinsamen Obertyp zugeordnet. Eigenschaften, die nicht faktorisierbar sind, verbleiben beim jeweiligen Untertyp, der somit eine Spezialisierung des Obertyps darstellt. Beispiel: Prüfer IST Mitarbeiter Fach PersNr Institut Prüfer( Institut, PersNr, Fach) }{{} geerbt von Mitarbeiter DB:III-95 Conceptual Design STEIN 2004-2016

Bemerkungen: Im Beispiel ist Mitarbeiter der generellere Obertyp und Prüfer der speziellere Untertyp. Ein wichtiges Prinzip der Generalisierung ist die Vererbung: ein Untertyp erbt alle Eigenschaften des Obertyps. Bei der Übersetzung in das Relationenmodell werden Generalisierungsbeziehungen besonders behandelt. DB:III-96 Conceptual Design STEIN 2004-2016

Abstraktionskonzepte Generalisierung / Spezialisierung (Fortsetzung) Die Entities eines Untertyps sind gleichzeitig Entities des Obertyps; es handelt sich also um eine Teilmengenbeziehung: state(e 1 ) state(e 2 ) E 1 IST E 2 Schreibweise: E 1 IST E 2 Hinsichtlich der Teilmengensicht sind zwei Fälle von besonderem Interesse: 1. Disjunkte Spezialisierung Die Mengen der Entity-Untertypen eines Entity-Obertyps sind paarweise disjunkt. 2. Vollständige Spezialisierung Die Menge des Entity-Obertyps enthält keine unspezialisierten Elemente sondern ergibt sich vollständig durch die Vereinigung der Mengen der Entity-Untertypen. DB:III-97 Conceptual Design STEIN 2004-2016

Abstraktionskonzepte Generalisierung / Spezialisierung (Fortsetzung) Die Entities eines Untertyps sind gleichzeitig Entities des Obertyps; es handelt sich also um eine Teilmengenbeziehung: state(e 1 ) state(e 2 ) E 1 IST E 2 Schreibweise: E 1 IST E 2 Hinsichtlich der Teilmengensicht sind zwei Fälle von besonderem Interesse: 1. Disjunkte Spezialisierung Die Mengen der Entity-Untertypen eines Entity-Obertyps sind paarweise disjunkt. 2. Vollständige Spezialisierung Die Menge des Entity-Obertyps enthält keine unspezialisierten Elemente sondern ergibt sich vollständig durch die Vereinigung der Mengen der Entity-Untertypen. DB:III-98 Conceptual Design STEIN 2004-2016

Abstraktionskonzepte Generalisierung / Spezialisierung (Fortsetzung) Graphische Notation als Standard-Beziehungstyp: Prüfer IST Mitarbeiter Fach PersNr Institut Alternative graphische Notation: Prüfer is-a Mitarbeiter Fach PersNr Institut DB:III-99 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Modellierungsproblematik Ausschnitt der realen Welt DB:III-100 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Modellierungsproblematik Sicht 1 Sicht 5 globales Schema Sicht 4 Ausschnitt der realen Welt Sicht 3 Sicht 2 Konsolidierung - redundanzfrei - widerspruchsfrei - Synonyme bereinigt - Homonyme bereinigt -... DB:III-101 Conceptual Design STEIN 2004-2016

Bemerkungen: [DB:II Entwurfsprozess > Konzeptueller Entwurf] Bei größeren Anwendungen ist es nicht praktikabel, den konzeptuellen Entwurf in einem Guss durchzuführen; sinnvoll ist die Aufteilung in verschiedene Anwendersichten. Konsolidierung bedeutet die Zusammenfassung einzelner Sichten zu einem globalen Schema, das u.a. redundanz- und widerspruchsfrei ist. Bei der Konsolidierung einer größeren Anwendung sollte man schrittweise vorgehen, so dass man jeweils nur zwei Teilschemata gleichzeitig betrachtet. Arten von Widersprüchen, die bei einer Konsolidierung aufzulösen sind: unterschiedliche Benennung gleicher Sachverhalte (Synonyme) gleiche Benennung unterschiedlicher Sachverhalte (Homonyme) Sachverhalt einmal als Entity-Typ und ein andermal als Beziehungstyp modelliert (struktureller Widerspruch) widersprüchliche Funktionalitätsangaben widersprüchliche Datentypen, widersprüchliche Schlüsselattribute DB:III-102 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Beispiel: drei Sichten einer Universitätsdatenbank Erstellung von Dokumenten Bibliotheks -verwaltung Buchempfehlungen DB:III-103 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Beispiel: drei Sichten einer Universitätsdatenbank Erstellung von Dokumenten Student Assistent erstellt betreut Masterarbeit Titel verfasst Dissertation Professor bewertet Titel Bibliotheks -verwaltung Buchempfehlungen DB:III-104 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Beispiel: drei Sichten einer Universitätsdatenbank Erstellung von Dokumenten Bibliotheks -verwaltung Bibliothek Fakultät leitet besitzt entleiht Dokument Signatur Autor Jahr UniMitglied Datum Titel Buchempfehlungen DB:III-105 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Beispiel: drei Sichten einer Universitätsdatenbank Erstellung von Dokumenten Bibliotheks -verwaltung Buchempfehlungen Vorlesung Autor Titel empfiehlt Buch Jahr Dozent Verlag DB:III-106 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Beispiel: drei Sichten einer Universitätsdatenbank Erstellung von Dokumenten Student Assistent erstellt betreut Masterarbeit Titel verfasst Dissertation Professor bewertet Titel Bibliotheks -verwaltung Bibliothek Fakultät leitet besitzt entleiht Dokument Signatur Autor Jahr UniMitglied Datum Titel Buchempfehlungen Vorlesung Autor Titel empfiehlt Buch Jahr Dozent Verlag DB:III-107 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Beispiel: drei Sichten einer Universitätsdatenbank Erstellung von Dokumenten Student Assistent erstellt betreut Masterarbeit Titel verfasst Dissertation Professor bewertet Titel Bibliotheks -verwaltung Bibliothek Fakultät leitet besitzt entleiht Dokument Signatur Autor Jahr UniMitglied Datum Titel Buchempfehlungen Vorlesung synonym Autor Titel empfiehlt Buch Jahr Dozent Verlag DB:III-108 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Beispiel: drei Sichten einer Universitätsdatenbank Erstellung von Dokumenten Student Assistent erstellt betreut Masterarbeit Titel verfasst Dissertation Professor bewertet Titel generalisieren Bibliotheks -verwaltung Bibliothek Fakultät leitet besitzt entleiht Dokument Signatur Autor Jahr UniMitglied Datum Titel Buchempfehlungen Vorlesung Autor Titel empfiehlt Buch Jahr Dozent Verlag DB:III-109 Conceptual Design STEIN 2004-2016

Konsolidierung, Sichtenintegration Beispiel: drei Sichten einer Universitätsdatenbank Erstellung von Dokumenten Student Assistent erstellt betreut Masterarbeit Titel verfasst Dissertation Professor bewertet Titel Bibliotheks -verwaltung Bibliothek Fakultät leitet? besitzt entleiht Dokument Signatur Autor Jahr UniMitglied Datum Titel Buchempfehlungen Vorlesung Autor Titel empfiehlt Buch Jahr Dozent Verlag DB:III-110 Conceptual Design STEIN 2004-2016

Bemerkungen: Aufgabe ist die Konsolidierung dieser Sichten in ein Schema. Die Entity-Typen Dozent und Professor sind synonym verwendet worden. Der Entity-Typ UniMitglied ist eine Generalisierung der Entity-Typen Student, Professor und Assistent. Fakultätsbibliotheken werden von Angestellten und nicht von Studierenden geleitet: der Beziehungstyp leitet in Sicht 2 sollte revidiert werden. Die Entity-Typen Dissertation, Masterarbeit und Buch sind Spezialisierungen des Entity-Typs Dokument. Alle an der Universität erstellten Diplomarbeiten und Dissertationen werden in Bibliotheken verwaltet. Die Beziehungtypen erstellt und verfasst in Sicht 1 modellieren denselben Sachverhalt wie das Attribut Autor vom Entity-Typ Dokument in Sicht 2. Alle in einer Bibliothek verwalteten Dokumente werden durch die Signatur identifiziert. DB:III-111 Conceptual Design STEIN 2004-2016