Upload
rikert-apt
View
106
Download
0
Embed Size (px)
Citation preview
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
Vorlesung #3
ER Modellierung
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 2
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
„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
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 3
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 4
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 5
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 6
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 7
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 8
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 9
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 10
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 11
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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.
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 12
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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.
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 13
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 14
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
/* 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
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 15
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 16
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 17
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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)
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 18
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 19
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 20
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 21
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
UML – Generalisierung
Generalisierung/Spezialisierung spielen zusammen mit Vererbung eine wichtige Rolle bei der Erstellung wiederverwendbarer Objektklassen
Beispiel: Assistenten und Professoren werden zu Angestellten generalisiert
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 22
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 23
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 24
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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»
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 25
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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()
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 26
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 27
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
© Bojan Milijaš, 03.04.2009 Vorlesung #3 - ER Modellierung 28
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
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
SS 2009 – IBB4CDatenmanagement
Fr 15:15 – 16:45R 1.006
Vorlesung #3
Ende