1 / 44

Datenbankentwurf

Datenbankentwurf. Abstraktionsebenen des Datenbankentwurfs Konzeptuelle Ebene Implementationsebene Physische Ebene. Allgemeiner „top-down Entwurf“. Entwurfsschritt 1 Anforderungsanalyse. Entwurfsschritt 2. Entwurfsschritt 3. •. Entwurfsschritt 4. Einsatz des Systems.

amy-weeks
Download Presentation

Datenbankentwurf

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs • Konzeptuelle Ebene • Implementationsebene • Physische Ebene

  2. Allgemeiner „top-down Entwurf“ Entwurfsschritt 1 Anforderungsanalyse Entwurfsschritt 2 . Entwurfsschritt 3 . • Entwurfsschritt 4 . . . Einsatz des Systems . . .

  3. Phasen des Datenbankentwurfs Datenverarbeitungs- anforderungen Informations- anforderungen Anforderungs- analyse Anforderungs-spezifikation Konzeptueller Enwurf DBMS- Charakteristika Informations-struktur ER Schema Implementations- entwurf logische Datenbankstruktur Physischer Entwurf Hardware/BS- Charakteristika physische Datenbankstruktur

  4. Anforderungsanalyse • Identifikation von Organisationseinheiten • Identifikation der zu unterstützenden Aufgaben • Anforderungs-Sammelplan • Anforderungs-Sammlung • Filterung • Satzklassifikationen • Formalisierung

  5. Objektbeschreibung Uni-Angestellte Anzahl: 1000 Attribute PersonalNummer Typ: char Länge: 9 Wertebereich: 0...999.999.99 Anzahl Wiederholungen: 0 Definiertheit: 100% Identifizierend: ja Gehalt Typ: dezimal Länge: (8,2) Anzahl Wiederholung: 0 Definiertheit: 10% Identifizierend: nein Rang Typ: String Länge: 4 Anzahl Wiederholung: 0 Definiertheit: 100% Identifizierend: nein

  6. Beziehungsbeschreibung: prüfen • Beteiligte Objekte: • Professor als Prüfer • Student als Prüfling • Vorlesung als Prüfungsstoff • Attribute der Beziehung: • Datum • Uhrzeit • Note • Anzahl: 100 000 pro Jahr

  7. Prozessbeschreibungen • Prozessbeschreibung: Zeugnisausstellung • Häufigkeit: halbjährlich • benötigte Daten • Prüfungen • Studienordnungen • Studenteninformation • ... • Priorität: hoch • Zu verarbeitende Datenmenge • 500 Studenten • 3000 Prüfungen • 10 Studienordnungen

  8. Phasen des Datenbankentwurfs Datenverarbeitungs- anforderungen Informations- anforderungen Anforderungs- analyse Anforderungs-spezifikation Konzeptueller Enwurf DBMS- Charakteristika Informations-struktur ER Schema Implementations- entwurf logische Datenbankstruktur Physischer Entwurf Hardware/BS- Charakteristika physische Datenbankstruktur

  9. Entity/Relationship-Modellierung MatrNr Name Semester • Entity (Gegenstandstyp) • Relationship (Beziehungstyp) • Attribut (Eigenschaft) • Schlüssel (Identifikation) • Rolle Studenten Hörer hören Lehrveranstaltung Vorlesungen VorlNr Titel SWS

  10. voraussetzen Universitätsschema Nach- folger VorlNr MatrNr Vorgänger hören SWS Vorlesungen Name Studenten Titel Semester lesen prüfen Note PersNr Rang arbeitenFür Name Assistenten Professoren Raum Fachgebiet PersNr Name

  11. Funktionalitäten ... ... R E2 E1 N:M N:1 R  E1x E2 E1 E2 1:N 1:1

  12. Funktionalitäten bei n-stelligen Beziehungen E1 P N M R En E2 1 Ek R : E1 x ... x Ek-1 x Ek+1 x ... x En  Ek

  13. Beispiel-Beziehung: betreuen 1 Professoren N betreuen Studenten 1 Seminarthemen Note betreuen : Professoren x Studenten  Seminarthemen betreuen : Seminarthemen x Studenten  Professoren

  14. Dadurch erzwungene Konsistenzbedingungen • Studenten dürfen bei demselben Professor bzw. derselben Professorin nur ein Seminarthema "ableisten" (damit ein breites Spektrum abgedeckt wird). • Studenten dürfen dasselbe Seminarthema nur einmal bearbeiten – sie dürfen also nicht bei anderen Professoren ein schon einmal erteiltes Seminarthema nochmals bearbeiten. Es sind aber folgende Datenbankzustände nach wie vor möglich: • Professoren können dasselbe Seminarthema „wiederverwenden“ – also dasselbe Thema auch mehreren Studenten erteilen. • Ein Thema kann von mehreren Professoren vergeben werden – aber an unterschiedliche Studenten.

  15. Ausprägung der Beziehung betreuen p1 b1 p2 Studenten b2 p3 s1 p4 b3 s2 b4 s3 t1 s4 b5 t2 b6 t3 t4 Professoren Gestrichelte Linien markieren illegale Ausprägungen Seminarthemen

  16. voraussetzen Funktionalitäten Nach- folger VorlNr MatrNr Vorgänger hören SWS Vorlesungen Name Studenten Titel Semester lesen prüfen Note PersNr Rang arbeitenFür Name Assistenten Professoren Raum Fachgebiet PersNr Name N M N M N N M 1 1 N 1

  17. (min, max)-Notation E1 (min1 max1) (minn, maxn) (min2, max2) R En E2 (mini, maxi) Ei R  E1 x ... x Ei x ... x En • Für jedes ei  Ei gibt es • Mindestens mini Tupel der Art (..., ei , ...) und • Höchstens maxi viele Tupel der Art (..., ei , ...) R

  18. Begrenzungsflächendarstellung Polyeder PolyID Beispiel- Polyeder 1 Hülle N FlächenID Flächen N Begrenzung M Kanten KantenID N StartEnde X M Y Punkte Z

  19. Begrenzungsflächendarstellung (4, ) (1,1) (3, ) (2, 2) (2, 2) (3, ) Polyeder PolyID Beispiel- Polyeder 1 Hülle N FlächenID Flächen N Begrenzung M Kanten KantenID N StartEnde X M Y Punkte Z

  20. Schwache, existenzabhängige Entities Höhe GebNr RaumNr Größe N 1 Gebäude liegt_in Räume • Beziehung zwischen "starken" und schwachem Typ ist immer 1:N (oder 1:1 in seltenen Fällen) • Warum kann das keine N:M-Beziehung sein? • RaumNr ist nur innerhalb eines Gebäudes eindeutig • Schlüssel ist: GebNr und RaumNr

  21. Prüfungen als schwacher Entitytyp Note N 1 Studenten ablegen Prüfungen PrüfTeil N N MatrNr umfassen abhalten PersNr VorlNr M M Vorlesungen Professoren • Mehrere Prüfer in einer Prüfung • Mehrere Vorlesungen werden in einer Prüfung abgefragt

  22. Generalisierung Uni-Mitglieder Name is-a Angestellte PersNr Studenten is-a MatrNr Rang Assistenten Professoren Fachgebiet Raum

  23. Universitätsschema mit Generalisierung und (min, max)-Markierung  Nächste Seite

  24. voraussetzen (0,*) (0,*) VorlNr MatrNr Nach- folger Vorgänger hören SWS Vorlesungen Studenten Name (0,*) (3,*) Titel (1,1) (0,*) (0,*) Semester prüfen lesen Note (0,*) (0,*) Fachgebiet Rang (0,*) (1,1) arbeitenFür Professoren Assistenten Raum is-a PersNr Angestellte Name

  25. Aggregation Fahrräder Teil-von Teil-von Rahmen Räder Teil-von Teil-von Teil-von Teil-von Rohre Lenker Felgen Speichen ... ... ... ...

  26. Aggregation und Generalisierung Fahrzeuge is-a mot.-Fahrzeuge Unmot.-Fahrzeuge is-a is-a Fahrräder Motorräder Segler Automobile Teil-von Teil-von Rahmen Räder Teil-von Teil-von Teil-von Teil-von Rohre Lenker Felgen Speichen ... ... ... ...

  27. Konsolidierung von Teilschemata oder Sichtenintegration • Globales Schema • Redundanzfrei • Widerspruchsfrei • Synonyme bereinigt • Homonyme bereinigt Sicht 3 Sicht 1 Sicht 4 Konsoli- Sicht 2 dierung

  28. Möglicher Konsolidierungsbaum S1,2,3,4 S1,2 S3,4 S1 S2 S3 S4 S1,2,3,4 • Mögliche Konsolidierungs-bäume zur Herleitung des globalen Schemas S1,2,3,4 aus 4 Teilschemata S1, S2, S3, und S4 • Oben ein maximal hoher Konsolidierungsbaum • „links-tief“ (left-deep) • Unten ein minimal hoher Konsolidierungsbaum • Balanciert • Beide Vorgehensweisen haben Vor- und Nachteile S1,2,3, S4 S1,2 S3 S1 S2

  29. Drei Sichten einer Universitäts-Datenbank erstellen Titel Studenten Diplomarbeiten betreuen Assistenten Dissertationen verfassen Titel bewerten Professoren Sicht 1: Erstellung von Dokumenten als Prüfungsleistung

  30. Fakultät besitzen Signatur Bibliotheken Dokumente leiten Autoren entleihen Titel UniMitglieder Jahr Datum Sicht 2: Bibliotheksverwaltung

  31. Vorlesungen Bücher Autoren empfehlen Titel Jahr Dozenten Verlag Sicht 3: Buchempfehlungen für Vorlesungen

  32. 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. • Dissertationen, Diplomarbeiten und Bücher sind Spezialisierungen von Dokumenten, die in den Bibliotheken verwaltet werden.

  33. 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.

  34. Signatur besitzen Bibliotheken Titel Fakultät Jahr Dokumente Verlag Autoren Diplomarbeiten Dissertationen Bücher entleihen betreuen bewerten empfehlen leiten Assistenten Professoren Studenten Angestellte Datum UniMitglieder Vorlesungen Personen

  35. Datenmodellierung mit UML • Unified Modelling Language UML • De-facto Standard für den objekt-orientierten Software-Entwurf • Zentrales Konstrukt ist die Klasse (class), mit der gleichartige Objekte hinsichtlich • Struktur (~Attribute) • Verhalten (~Operationen/Methoden) modelliert werden • Assoziationen zwischen Klassen entsprechen Beziehungstypen • Generalisierungshierarchien • Aggregation

  36. Multiplizität • Jedes Element von KlasseA steht mit mindestens i Elementen der KlasseB in Beziehung • ... und mit maximal j vielen KlasseB-Elementen • Analoges gilt für das Intervall k..l • Multiplizitätsangabe ist analog zur Funktionalitätsangabe im ER-Modell • Nicht zur (min,max)-Angabe: Vorsicht!

  37. Klassen und Assoziationen

  38. Aggregation

  39. Begrenzungsflächenmodellierung von Polyedern in UML

  40. Begrenzungsflächendarstellung (4, ) (1,1) (3, ) (2, 2) (2, 2) (3, ) Polyeder PolyID Beispiel- Polyeder 1 Hülle N FlächenID Flächen N Begrenzung M Kanten KantenID N StartEnde X M Y Punkte Z

  41. Anwendungsfälle (use cases)

  42. Interaktions-Diagramm:Modellierung komplexer Anwendungen

  43. Interaktions-Diagramm: Prüfungsdurchführung

More Related