ss 2013 – ibb4b datenmanagement fr 17:00 – 18:30 r 0.012 vorlesung #3 er modellierung

34
SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

Upload: carsten-kenkel

Post on 06-Apr-2015

106 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

Vorlesung #3

ER Modellierung

Page 2: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 2

„Fahrplan“

Schwache Entity-Typen Generalisierung / Spezialisierung Aggregation Übungsblatt #3, Praktkumsblatt 1 Konsolidierung verschiedener Sichten Kurze Vorstellung von UML, kurzer Exkurs in

Objektorientierung

Page 3: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

11.04.23 3

Page 4: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

11.04.23 4

Page 5: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

11.04.23 5

Page 6: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

11.04.23 6

Page 7: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

11.04.23 7

Page 8: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 8

Page 9: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 9

Page 10: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 10

Page 11: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 11

Page 12: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 12

Page 13: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 13

Page 14: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 14

Page 15: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 15

Page 16: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 16

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 17: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 17

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 18: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 18

Page 19: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 19

/* 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 20: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 20

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 21: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 21

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 22: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 22

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 23: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 23

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 24: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 24

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 25: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 25

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 26: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 26

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 27: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 27

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 28: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 28

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 29: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 29

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 30: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 30

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 31: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 31

Page 32: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 32

Page 33: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

© Bojan Milijaš, 12.04.2013 33

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 34: SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R 0.012 Vorlesung #3 ER Modellierung

SS 2013 – IBB4BDatenmanagement

Fr 17:00 – 18:30R 0.012

Vorlesung #3

Ende