Herzlich willkommen zur Vorlesung konzeptionelle Modellierung.
Wir wollen kurz wiederholen, wo wir letzte Woche stehen geblieben waren.
Wir haben uns mit dem Entity Relationship Modell als dem weit verbreitetsten semantischen Datenmodell beschäftigt.
Das wir brauchen, um die Mini-Welt, die wir in unserer Datenbank repräsentieren wollen, zunächst formal zu beschreiben, ohne gleich die Implementierung vorweg zu nehmen.
Die wesentliche Zielsetzung, die wir damit verfolgt hatten, war, möglichst einfaches Beschreibungsmittel zu haben, das uns als Mittel zur Kommunikation mit dem Endanwender dient.
Und gleichzeitig eine Methode zu haben, die uns die wichtigsten Dinge doch erlaubt, einigermassen präzise und formal zu beschreiben.
Wir hatten da als wesentliche Modellierungsprimitive Entitytypen und Beziehungstypen unterschieden.
Entitytypen sind Beschreibungen von gleichartigen Entities.
Ein Entity kann alles sein, was Sie in der Datenbank abbilden wollen.
Einfach zu beschreibende Objekte.
Was Sie modellieren, sind solche Entitytypen, die meinetwegen Mitarbeiter.
Sie beschreiben einen Entitytyp, in dem Sie dem noch Attribute zuweisen.
Das sind die beschreibenden Merkmale.
Dann gibt es ein besonderes Attribut, dieses Schlüsselattribut.
Von dem haben wir gesagt, das soll die schöne Eigenschaft haben, Entities zu identifizieren.
Es darf keine zwei Entities geben, mit dem gleichen Wert in diesem Schlüsselattribut.
Ein Wert in diesem Schlüsselattribut identifiziert genau ein Entity.
Entities werden über Beziehungstypen miteinander verknüpft.
Mitarbeiter arbeiten in Abteilungen, Abteilungen haben Mitarbeiter.
Das kann man über einen Beziehungstyp, eine Raut definieren.
Solche Beziehungen kann man auch noch Attribute zuweisen.
Dann haben wir das an einem Beispiel präzisiert.
Das muss man nicht alles im Detail wiederholen.
Wir haben gesagt, wir können diese Beziehungstypen noch genauer präzisieren,
indem wir an die Kanten Kardinalitäten dran schreiben.
Was bedeutet das?
Wenn wir an einer Seite eine Eins stehen haben, in dem Fall ist die sogenannte Chen-Notation,
dann gibt es eine Eins-Entity, eine Eins-Entity,
zudem gibt es höchstens eine Eins-Entity.
Das bedeutet diese Eins hier.
Letztlich definieren wir überall, wo eine Eins steht, eine sogenannte funktionale Abhängigkeit.
Zu einem E2 gibt es höchstens eine Eins-Entity, das ist letztlich eine Funktion, die wir damit definieren.
Umgekehrt, wenn da ein End steht, bedeutet das, zu einem E1 kann es viele E2 geben.
Hier oben haben wir die totale Teilnahme eines Entitytyps an einem Beziehungstyp.
Das bedeutet, zu jedem E2 gibt es mindestens ein E1.
Also jedes E2 steckt in mindestens einer Beziehungsinstanz drin.
Dann haben wir noch die Min-Max-Notationen kennengelernt,
die sich fundamental von dieser Chen-Notation hier oben unterscheidet.
Da definieren wir, an wie vielen Beziehungen nimmt ein Entity dieses Typs mindestens teil
und an wie vielen Beziehungen nimmt das Entity höchstens teil.
Also in diesem Fall ein E1-Entity nimmt mindestens an Min-Beziehungen und höchstens an Max-Beziehungen teil.
Dann wichtige Unterscheidungen noch. Wir haben grundsätzlich immer Unterschieden zwischen intensionaler und extensionaler Ebene unserer Modellierung.
Was wir eigentlich modellieren, was in unseren Entity-Relationship-Diagrammen am Ende zu sehen ist,
das ist immer die intensionale Ebene, nur die Typbeschreibungen.
Wenn wir verstehen wollen, was das letztlich bedeutet, was wir da modelliert haben,
dann lohnt es sich auch mal zu gucken, was bedeutet das denn auf Ausprägungsebene.
Wie sehen denn die einzelnen Entities aus, die ich jetzt damit modelliert habe?
Wie sehen die Integritätsbedingungen aus, die ich letztlich durch mein Modell fixiert habe?
Also wenn wir einen Entity-Typ beschreiben, dann geben wir dem einen Namen und wir weisen dem Attribute zu.
Auf der Ausprägungsebene, das sind dann die einzelnen Entities, die Ausprägungen, die Instanzen, die dazu gehören.
Presenters
Zugänglich über
Offener Zugang
Dauer
01:19:21 Min
Aufnahmedatum
2010-05-04
Hochgeladen am
2011-04-11 13:53:28
Sprache
de-DE