SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

29
SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung

Transcript of SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

Page 1: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

Vorlesung #3

ER Modellierung

Page 2: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 2

„Fahrplan“

Vertiefung des ER-Modells anhand von etwas komplexeren Beispielen aus dem Übungsblatt #2

Besprechung der Praktikum-Aufgabe (min,max) Notation in einem ER Diagramm Konsolidierung verschiedener Sichten Kurze Vorstellung von UML, kurzer Exkurs in

Objektorientierung

Page 3: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 3

Page 4: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 4

Page 5: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 5

Page 6: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 6

Page 7: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 7

Page 8: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 8

Page 9: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 9

Page 10: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 10

Page 11: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 11

Konsolidierung: Beobachtungen

Die Begriffe Dozenten und Professoren sind synonym verwendet worden.

Der Entitytyp UniMitglieder ist eine Generalisierung von Studenten, Professoren und Assistenten.

Fakultätsbibliotheken werden sicherlich von Angestellten (und nicht von Studenten) geleitet. Insofern ist die in Sicht 2 festgelegte Beziehung leiten revisionsbedürftig, sobald wir im globalen Schema ohnehin eine Spezialisierung von UniMitglieder in Studenten und Angestellte vornehmen.

Page 12: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 12

Konsolidierung (fortgesetzt)

Dissertationen, Diplomarbeiten und Bücher sind Spezialisierungen von Dokumenten, die in den Bibliotheken verwaltet werden.

Wir können davon ausgehen, dass alle an der Universität erstellten Diplomarbeiten und Dissertationen in Bibliotheken verwaltet werden.

Die in Sicht 1 festgelegten Beziehungen erstellen und verfassen modellieren denselben Sachverhalt wie das Attribut Autoren von Büchern in Sicht 3.

Alle in einer Bibliothek verwalteten Dokumente werden durch die Signatur identifiziert.

Page 13: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 13

Page 14: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 14

/* Objektorientierte (OO) */ Modellierung mit UML Unified Modelling Language UML De-facto Standard für den OO Software-Entwurf Verschiedene Abstraktionsebenen

Teilmodelle für die statische Struktur - z.B.Klassenstruktur des Softwaresystems, die einem ER-Modell entspricht

Sequenzdiagramme – Zusammenspiel von Objekten in komplexen Anwendungen

Anwendungsfälle – use cases Aktivitäts- und Zustandsdiagramme Graphische Notationen für die Zerlegung in

Komponenten/Packages

mächtiger als ER-Modell

Page 15: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 15

Datenbankentwurf mit UML

Datenbankentwurf: strukturelle Modellierung der Klassen und Assoziationen zwischen den Klassen

Objekte entsprechen den Entities Objektklassen beschreiben eine Menge von

gleichartigen Objekten (Entities) Zusammenhänge (Beziehungen,

Relationships) zwischen Objekten werden als Assoziationen zwischen den Klassen beschrieben

Page 16: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 16

UML – Klasse

Zentrales Konstrukt ist die Klasse (class), mit der gleichartige Objekte hinsichtlich Struktur (~Attribute) Verhalten (~Operationen/Methoden)

modelliert werden

Sichtbarkeit:

+ public- private

# in subclasses

StudentenStudenten

+ MatrNr : int+ MatrNr : int

+ Name : String+ Name : String

+ Semester : int+ Semester : int

+Notenschnitt() : float+Notenschnitt() : float

+SummeSWS+SummeSWS

KlassennameKlassenname

AttributeAttribute

OperationenOperationen

Page 17: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 17

UML – Klassen (2)

Beim Datenbankentwurf sind alle Attribute sichtbar, da die Autorisierung detaillierter über DBMS erfolgt

Kein Schlüsselkonzept, sondern systemweite, invariante OIDs (Objektidentifikatoren)

Während der gesamten Lebenszeit des Objekts unveränderbar Identifikation Referenz (Verweise)

Page 18: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 18

UML – Assoziationen

Assoziationen zwischen Klassen entsprechen Beziehungstypen

Abbildung von rekursiven Beziehungen möglich Richtung für den Zugriff auf die assoziierten Objekte

kann angegeben werden, hat in Datenbankentwurf aber keine bedeutende Rolle, da immer in beiden Richtungen traversiert wird

Multiplizität einer Relation analog zu Funktionalitäten des ER-Modells (1:1,1:N,N:M)

Beispiel: Tafel

Page 19: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 19

UML – Assoziationen (2)

+Notenschnitt() : float+SummeWochenstunden() : short

+MatrNr : int+Name : String+Semester : int

Studenten

+AnzHörer() : int+DurchfallQuote() : float

+VorlNr : int+Titel : String

+SWS : int

Vorlesungen

+Hörer

1..*

*

+Nachfolger *

*hören

voraussetzen

Page 20: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 20

UML – Aggregationen

Teil/Ganzes Komposition

exklusive Zuordnung von existenzabhängigen Teilobjekten zu einem übergeordnetem Objekt

Notation ausgefüllte Raute auf der Seite der übergeordneten

Klasse Multiplizität 1

Page 21: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 21

UML – Generalisierung

Generalisierung/Spezialisierung spielen zusammen mit Vererbung eine wichtige Rolle bei der Erstellung wiederverwendbarer Objektklassen

Beispiel: Assistenten und Professoren werden zu Angestellten generalisiert

Page 22: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 22

UML – Generalisierung (2)

AssistentenAssistenten

+Fachgebiet: string+Fachgebiet: string

+Gehalt(): short+Gehalt(): short

ProfessorenProfessoren

+Rang: string+Rang: string

+Notenschnitt(): short+Notenschnitt(): short

+Gehalt(): short+Gehalt(): short

AngestellteAngestellte

+PersNr+PersNr

+Name+Name

+Gehalt(): short+Gehalt(): short

+Steuern()+Steuern()

+Mitarbeiter+Mitarbeiter +Boss+Boss

* arbeiten für 1* arbeiten für 1

Page 23: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 23

UML – weitergehende Möglichkeiten Verhaltensmodellierung Anwendungsfall-Modellierung (use cases)

Identifikation von Akteuren Interaktionen der Beteiligten Sehr informell, intuitiv

Interaktionsdiagramme Formell, strukturiert Kommunikation zwischen Objekten Ablaufreihenfolge mit der vertikalen Zeitachse

Page 24: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 24

UML – use cases

Fakultäten

StudentIn

Vorlesungen anbieten

-Hörer

*

-Lehrveranstaltung

* ProfessorIn

*

-liest

1

Prüfungen durchführen

*

-prüft 1«verwendet»

AssistentIn

*-Beisitzer

1

-Prüfling1

*

Studienplanüberprüfen

«verwendet»

Page 25: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 25

UML – Interaktionsdiagramm

ProfessorInProfessorIn BibliothekBibliothek

VorlesungVorlesung

TerminkalenderTerminkalender Vorlesungsverz.Vorlesungsverz.

RaumvergabeRaumvergabe

Entleihe_Buch()Entleihe_Buch()

Create()Create()

freierTermin()freierTermin()

reserviereTermin()reserviereTermin()

eintragenTermin()eintragenTermin()

ankündigenVorlesung()ankündigenVorlesung()

Page 26: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 26

Page 27: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 27

Page 28: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 01/08.04.2011

Vorlesung #3 - ER Modellierung 28

Das relationale Modell Umsetzung eines ER Schemas in ein relationales

Schema (ER Modell relationales Modell, ER Diagramm relationale Tabellen)

Relationale Modellierung von 1:1, 1:n, n:m Beziehungen, Generalisierung, schwachen Entity-Typen etc.

Die Relationale Algebra (Selektion, Projektion, Vereinigung, relationale Division, Mengendurchschnitt, Joins, kartesisches Produkt etc.)

Ausblick Vorlesung #4

Page 29: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #3 ER Modellierung.

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

Vorlesung #3

Ende