Rückblick
Modellieren ist die Tätigkeit, bei der die meisten Fehler entstehen – und die einzige, bei der Fehler richtig teuer werden. Ein schlechtes Schema lässt sich später kaum noch reparieren, weil bereits Daten darin stehen.
Das kann ich jetzt
- Ich kann aus einem Text Entitätstypen herauslesen und von Attributen unterscheiden. (5.1)
- Ich kann begründen, wann etwas ein eigener Entitätstyp wird und wann nicht. (5.1)
- Ich kann Kardinalitäten bestimmen – in der 1:n-Schreibweise und in der (min, max)-Schreibweise. (5.2)
- Ich kann ein Entity-Relationship-Diagramm lesen und selbst zeichnen. (5.3)
- Ich kann ein Diagramm mit den vier Regeln in Relationenschemata überführen. (5.4)
- Ich kann zwei Entwürfe vergleichen und meine Wahl begründen. (5.5)
Gemischte Aufgaben
Aufgabe 1: Die Stadtbibliothek
Die Stadtbibliothek verwaltet ihren Bestand. Zu jedem Titel sind ISBN, Titel, Erscheinungsjahr und der Verlag bekannt; ein Titel hat eine oder mehrere Autorinnen, und eine Autorin kann mehrere Titel geschrieben haben. Von einem Titel besitzt die Bibliothek mehrere Exemplare, die sich durch eine Inventarnummer unterscheiden und in einem bestimmten Zustand sind. Leserinnen haben einen Ausweis mit Nummer, Name und Geburtsjahr. Eine Leserin kann mehrere Exemplare gleichzeitig ausleihen; jede Ausleihe hat ein Ausleihdatum und ein Rückgabedatum. Über die Jahre kann dasselbe Exemplar von derselben Leserin mehrfach ausgeliehen werden.
a) Nenne alle Entitätstypen mit ihren Attributen. Unterstreiche die Schlüsselattribute.
b) Nenne alle Beziehungstypen mit ihren Kardinalitäten.
c) Zeichne das ER-Diagramm.
d) Begründe: Warum sind Titel und Exemplar zwei verschiedene Entitätstypen und nicht einer?
e) Der letzte Satz des Textes macht eine Aussage, die für die Modellierung entscheidend ist. Welche, und was folgt daraus für den Schlüssel der Ausleihe?
Tipp 1: Wie finde ich die Entitätstypen?
Unterstreiche im Text alle Hauptwörter, über die etwas ausgesagt wird. Frag dann für jedes: Hat dieses Ding eigene Eigenschaften, oder ist es selbst nur eine Eigenschaft von etwas anderem?
Verlag zum Beispiel: Im Text steht nur der Name. Solange nichts weiter über Verlage gesagt wird, genügt ein Attribut.
Tipp 2: zu e)
Wenn dasselbe Exemplar von derselben Leserin mehrfach ausgeliehen werden kann – reicht dann das Paar aus Exemplar und Leserin, um eine Ausleihe eindeutig zu bestimmen?
Aufgabe 2: Vom Diagramm zum Schema
Setze dein Modell aus Aufgabe 1 in Relationenschemata um.
a) Wende die vier Regeln an und schreib alle Relationen auf. Kennzeichne Primärschlüssel und Fremdschlüssel.
b) Bei welcher Beziehung entsteht eine neue Relation, bei welcher nicht? Begründe mit der Regel.
c) Was passiert, wenn man den Fremdschlüssel zwischen Titel und Exemplar falsch herum legt – also titel eine Spalte inventarnummer gibt? Beschreibe die Folge konkret.
d) Welche Information des ER-Diagramms lässt sich im fertigen Schema nicht mehr ablesen?
Aufgabe 3: Zwei Entwürfe beurteilen
Für die Ausleihe schlagen zwei Gruppen unterschiedliche Lösungen vor.
Entwurf A
ausleihe(ausleihe_id, inventarnummer → exemplar, ausweisnummer → leserin,
ausleihdatum, rueckgabedatum)
Entwurf B
exemplar(inventarnummer, zustand, isbn → titel,
ausgeliehen_an → leserin, ausleihdatum)
a) Was leistet Entwurf B, was Entwurf A auch leistet?
b) Nenne zwei Fragen, die sich mit A beantworten lassen und mit B nicht.
c) Welchen Entwurf wählst du? Begründe mit einem Kriterium für gute Modelle.
d) Gibt es eine Situation, in der B trotzdem die bessere Wahl wäre?