Dieter Sosna Institut für Informatik Abt. Datenbanken

Ähnliche Dokumente
Relationales Datenmodell

5.2 Entity-Relationship-Modell

Datenbankdesign - Normalisierung

Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt

Rudolf Brinkmann Seite

Datenbanksysteme: Entwurf

Objektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1. Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden:

2 Rationale und reelle Zahlen

Wissenschaftliches Arbeiten Quantitative Methoden

Da ist zunächst der Begriff der Menge.

Körper- und Galoistheorie


Eine Aussage kann eine Eigenschaft für ein einzelnes, konkretes Objekt behaupten:



Lineare Gleichungen Lineare Gleichungssysteme. Lineare Algebra 5. Ein Trainingsheft für Schüler


Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 06. Nov Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 2

2. Relationale Datenbanken

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Legt durch das Argument Dann bzw Sonst fest, wie nach einer Prüfung (Bedingung) verfahren werden soll.

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1


Einführung in die Informatik

Übungen Teil 2: Normalisierung und ER-Modell. Dozent: Stefan Maihack Dipl. Ing. (FH)

Medizininformatik Software Engineering


Lösungen zum Aufgabenblatt Nr. 1: Konstruktion der reellen Zahlen

Das konzeptionelle Datenmodell



Mathematik für Informatiker/Informatikerinnen 2


Kurzeinführung in UML

Teil 2: Dynamische Spiele mit vollständigen Informationen

Kapitel DB:IV (Fortsetzung)


Informatik IIa: Modellierung


PD Dr.-Ing. F. Lobeck. Seite 6







Übung 3. Musterlösungen


Konzeption und prototypische Realisierung eines XML-fähigen Mailtools

1. Erläutern Sie die Aufgaben von Datentypen in der imperativen Programmierung.


Einfache Parkettierungen

Physikalisches Grundpraktikum für Physiker/innen Teil III. Supraleitung


Informatik IIa: Modellierung


Datenbankentwurf. Kapitel 3. Datenbankentwurf 76 / 508


Kapitel 6: Das E/R-Modell

1 Elemente der Wahrscheinlichkeitstheorie

Einführung in Datenbanken

Einführung in die Informatik II

Kapitel 3: Datenbanksysteme


Venndiagramm, Grundmenge und leere Menge

Rückblick: Entity-Relationship-Modell


Kapitel I. Lineare Gleichungssysteme

4 Gleichungen und Ungleichungen

Im gesamten Kapitel sei Ω eine nichtleere Menge. Wir bezeichnen die Potenzmenge

Modellierungskonzepte semantischer Datenmodelle. Semantische Datenmodelle. Das Entity-Relationship Modell

Kapitel 4. Reihen 4.1. Definition und Beispiele

Klausur mit Musterlösung

Ê Ö ÒØ Ò ÃÓÖÖ Ö ÒØ ÈÖÓ º Öº Å Ö Ö Ø Ã ÒÒ Ý ÁÒ Ø ØÙØ Ö ÙØ Ò ÙÒ ÒØÛ Ö Ò Ø ÐÙÒ Ì Ò Ö Ù Ù ÙÒ Ê ÓÙÖ Ò Ô Ö Ò Ù Ò ÍÒ Ú Ö ØØ À ÒÒÓÚ Ö ÈÖÓ º Öº ÃÐ Ù Î Ò Ö Å Ò

ALGEBRA UND MENGENLEHRE

Algorithmen und Datenstrukturen 1 Kapitel 4.1

Objektorientierte Modellierung (1)

Redemittel für wissenschaftliche Texte (zusammengestellt von Natalia Schultis, PH Freiburg)

Kapitel 3: Datenbanksysteme

Induktive Definitionen


4. Datenabfrage mit QBE

Entity Relationship Modell (ERM) (Konzeptueller Datenbankentwurf)

Kapitel DB:IV (Fortsetzung)

Folgen und Grenzwerte

Technische Universität München. Ferienkurs Lineare Algebra 1. Mengenlehre, Aussagen, Relationen und Funktionen. 21. März 2011.

α i +α j Σ j 1 (α i Σ i + α j Σ j) α j α i + α j

Datenbanken Unit 2: Das ER-Modell

ÎÓÖÛÓÖØ Á ÞÙÖ ÚÓÖÐ Ò Ò ÔÐÓÑ Ö Ø Ø Ò Ñ ÒÛĐÓ Ò ÌÖ «Ò ÞÙÖ ÇÖ Ò Ø ÓÒ ÈÖÓ Ø Ì ÒØ Ò ÙÐÙÖ Ð Ô Ø Ó Ø ÝÐ ÒØ Ø Ò Ò Ñ ĐÙÒ ÙÖÓÔĐ ÙÒ ĐÙÒ Ñ Ö Ò ÍÒ Ú Ö ØĐ Ø Ò ÞÙ ÑÑ

Institut für Werkstofftechnik Metallische Werkstoffe

Konzeptuelle Modellierung

3.2 Lineare Optimierung (Entscheidungen unter Sicherheit)

Rückblick: Datenbankentwurf

Stetige Funktionen. Definition. Seien (X, d) und (Y, ϱ) metrische Räume und f : X Y eine Abbildung. D(f) X sei der Definitionsbereich von f.

Transkript:

Ä ¹ÙÒ ÙÒ Ù Ø Ò Ò Ò»Ê¹ÙÒ Ê Ð Ø ÓÒ ÒÑÓ ÐÐ Dieter Sosna Institut für Informatik Abt. Datenbanken Version 0.9 vom 8. Dezember 2008

ÎÓÖÛÓÖؽ In der Arbeit [2] aus dem Jahre 1970 hat Ted Codd, der für IBM Research tätig war, das Relationenmodell vorgestellt. Es enthielt ein konzeptionell neues Herangehen an die Datenbankmodellierung. Vor dem Relationenmodell gab es schon mehrere Versuche, Modelle für die Datenbankarbeit zu entwickeln. So entstanden in den sechziger Jahren des vergangenen Jahrhunderts das hierarchische Modell und das Netzwerkmodell. Sie wurden in den beiden folgenden Jahrzehnten in Datenbankverwaltungssytemen (DBVS, engl. DBMS) implementiert. Nachteilig in beiden Modellen waren die sehr aufwendigen und tiefgreifenden Änderungen in der Datenbank, die notwendig wurden, wenn kleine Veränderungen in der Datenstruktur zu realisieren waren. Das von Codd angeregte Modell zeichnet sich durch Klarheit und Einfachheit aus. Codd benutzte die Relation als Datenstruktur, die leicht an verschiedene Anforderungen angepasst werden kann. Ein anderes Modell, das Entity-Relationship-Modell - kurz E/R-Modell, wurde von Chen ( 2 ) entwickelt. Chen hat dieses Modell 1976 in einem Aufsatz [1] erstmals vorgestellt und es hat sich sehr schnell weltweit durchgesetzt. Obwohl er es primär für den Datenbankeinsatz entwickelt hat, kann es auch in anderen Umgebungen zur Modellierung verwendet werden. ( 3 ) Im Vergleich zum Relationenmodell verwendet das E/R-Modell zwei Grundkonzepte, nämlich die von Entitätsmenge und Relationshipmenge ( 4 ). Viele Modellierungsaufgaben lassen sich mit seiner Hilfe systematisch erledigen. Da zudem ein Regelwerk existiert, wie für Datenbankanwendungen systematisch aus einem E/R-Modell ein dazu passendes Relationenmodell entwickelt werden kann, eignet es sich sehr gut zum logischen Datenbankentwurf, wenn das Ziel der Entwicklung in einer relationalen Datenbank besteht ( 5 ). Die Beschreibung des E/R- und des Relationenmodells sind Inhalt des vorliegenden Lese- und Übungsbuches. Das Lese- und Übungsbuch ist als ergänzende Literatur zu verstehen, es soll auch Ansichten des Themas vermitteln, die in der Vorlesung - meist aus Zeitgründen 1 Entwurf 1 vom 8. Dezember 2008 2 Für eine erste Information siehe http://de.wikipedia.org/wiki/peter_chen 3 Weitere allgemeine Informationen unter der URL http://de.wikipedia.org/wiki/entity-relationship-modell. 4 Wir verwenden hier bewusst die nicht übersetzten englichen Begriffe, um auszudrücken, dass wir uns auf das E/R-Modell beziehen. 5 Zum Entwurf objektorientierter Datenbanken ist das UML-Modell vorzuziehen.

4 Sosna: Lesebuch - E/R-Modell - unberücksichtigt bleiben müssen. Keinesfalls soll und kann es den Besuch von Vorlesungen oder Übungen ersetzen. Dieter Sosna Leipzig, im November 2008 Nutzungsbedingungen: Das Material darf für die Lehre der Universität Leipzig und von Studenten und von natürlichen Personen für ihren persönlichen Gebrauch frei genutzt, kopiert und in elektronischer Form gespeichert und kopiert werden. Jede weitergehenende, insbesondere jeder weitere kommerzielle Nutzung bedarf der schriftlichen Zustimmung des Autors.

ÁÒ ÐØ Ú ÖÞ Ò ½ÅÓ ÐÐ ÖÙÒ Ñ ÐÐ Ñ Ò ÒÙÒ Ò ÖÁÒ ÓÖÑ Ø ¾ ÒØ ØÝ¹Ê Ð Ø ÓÒ Ô¹ÅÓ ÐÐ ½ 1.1 Modellbildung................................ 7 1.1.1 Modellbildung........................... 7 1.1.2 Besonderheiten der Modellbildung der Informatik....... 9 1.1.3 Modellanwendung und Informatik............... 10 2.1 Entitätsmengen............................... 13 2.1.1 Attribute............................... 13 2.1.2 Entitätsmengen........................... 16 2.1.3 Schlüsselkandidaten, Primärschlüssel.............. 17 2.1.4 Ausschluss von der Schlüsselbildung.............. 18 2.1.5 Graphische Darstellung von Entitätsmengen und Attributen. 19 2.2 Relationship-Mengen............................ 22 2.3 Problemfälle................................. 25 2.3.1 Schwache Entitätsmengen..................... 25 2.3.2 Kein Schlüsselkandidat?...................... 27 2.4 Modellierung weiterer Eigenschaften................... 28 2.4.1 Grad einer Relationship-Menge.................. 28 2.4.2 Abbildungstypen.......................... 29 2.4.3 Kardinalitätsrestriktionen..................... 31 2.4.4 Kardinalitätsrestriktionen bei n-ären Beziehungen....... 33 2.5 Defizite im E/R-Modell.......................... 34 2.6 Bewertung.................................. 34 2.7 Ergänzungen / Erweiterungen...................... 35 2.8 Beispiel für einen E/R-Entwurf...................... 37 Ê Ð Ø ÓÒ ÒÑÓ ÐÐ 3.1 Modellbeschreibung............................ 40 3.1.1 Attribute............................... 40 3.1.2 Relationenmengen......................... 40 Grundlegende Merkmale - Begriffe................ 40 Notation............................... 42 Weitere Merkmale......................... 43 3.1.3 Schlüsselkandidaten, Primärschlüssel.............. 44 3.2 E/R - Transformation............................ 45 3.2.1 Fremdschlüssel........................... 46

6 Sosna: Lesebuch - E/R-Modell 3.2.2 Umformregeln........................... 47 Attribute, starke Entitätsmengen................. 47 Relationship-Mengen....................... 48 Schwache Entitätsmengen, mehrfache und zusammengesetzte Attribute........................ 51 Umsetzung der Erweiterungen.................. 54 3.3 Beispiel.................................... 57 3.4 Rücktransformation in das E/R-Modell................. 59 3.5 Bewertung des Relationenmodells.................... 60 Ò Ò Ä Ø Ö ØÙÖÚ ÖÞ Ò 4.1 Bankenbeispiel als E/R-Schema...................... 63 4.2 Notation................................... 65 4.3 Bankenbeispiel - Relationenmodell.................... 67 4.4 Eigene Notizen............................... 72

½ÅÓ ÐÐ ÖÙÒ Ñ ÐÐ Ñ Ò ÒÙÒ Ò Ö ÁÒ ÓÖÑ Ø ½º½ÅÓ ÐÐ Ð ÙÒ ½º½º½ÅÓ ÐÐ Ð ÙÒ Das Ziel dieses Kapitels ist es, einige grundlegende Aussagen über das Wesen der Modellbildung zu treffen und danach auf die Besonderheiten der Informatik einzugehen. Der Ausgangspunkt ist ein Ausschnitt der realen Welt oder der Begriffswelt unseres Denkens. Er wird i.a. Miniwelt genannt. Eine Miniwelt besteht aus Objekten und Beziehungen zwischen diesen Objekten. In der Welt gibt es real existierende Objekte und Objekte, welche ein Produkt des Denkens sind. Auf Objekte und Beziehungen können Aktionen einwirken, die zu Veränderungen der Objekte und Beziehungen führen. Definition 1.1: Modell Unter einem Modell verstehen wir ein komplexes Ergebnis des Denkens, welches aus folgenden Komponenten besteht: einer Menge von Modellobjekten, einer Menge von Beziehungen zwischen den Modellobjekten (Modellbeziehungen) und einer Menge von Modelloperationen, die auf die Modellobjekte und -beziehungen anwendbar sind. Das Ergebnis einer solchen Anwendung ist wieder ein Element aus einer der Mengen der Modellobjekte bzw. -beziehungen.( 1 )( 2 ) Der Zusammenhang zwischen einer Miniwelt und einem dazugehörigen Modell wird durch eine Wissenschaft vermittelt. Deren Begriffe liefern die semantische Beschreibung der Modellobjekte und Modellbeziehungen. Nur sie erlauben dem Menschen, die Semantik eines Modells, seine Beziehung zur Miniwelt zu verstehen. 1 Mit Blick auf das spätere Ziel unterscheiden wir zwischen Modellobjekten und Modellbeziehungen. Es ebenso möglich, die Modellbeziehungen als spezielle Objekte im Modell zu betrachten. 2 Die Eigenschaft, dass die Anwendung einer Modellaktion auf ein Modellobjekt oder eine Modellbeziehung wieder ein solches Objekt bzw. eine solche Beziehung zum Ergebnis hat, ist wesentlich für die mathematische (theoretische) Beschreibung von Modellen. Diese Eigenschaft führt auf den Begriff der Algebra im Sinne einer mathematischen Struktur (s. Wikipedia: URL http://de.wikipedia.org/wiki/algebra#algebra_als_mathematische_struktur). Ein Beispiel aus dem Datenbankbereich ist die Relationenalgebra, die Gegenstand eines weiteren Bandes dieses Lesebuchs sein wird.

8 Sosna: Lesebuch - E/R-Modell Den Vorgang (Prozess) des Abbildens eines Teilgebiets der Welt nennt man Modellieren. Dieser Vorgang wird dadurch charakterisiert, dass in das Ergebnis nicht alle Eigenschaften des zu Modellierenden aufgenommen werden, sondern nur die für einen konkreten Kontext wichtigen. Dies führt i.a. zu einer Vereinfachung des Modells gegenüber dem urprünglichen Sachverhalts und ermöglich dadurch vielfach erst die Anwendungen von Theorien usw. ıcharakteristisch für die Modellierung ist die Tatsache, dass der Zusammenhang zwischen der Welt und dem Modell idealerweise durch einen Isomorphismus beschrieben wird. Zum Ziel der Modellierung gehört auch das Finden geeigneter Modellobjekte, ÃÓÖÖ Ø Ø Modellbeziehungen und Modellaktionen und die Konstruktion des Isomorphismus zur Realität. Die Modellierung ist ein kreativer Prozess, der das Verstehen der Semantik der Objekte der Miniwelt und der Begriffe der vermittelnden Wissenschaft voraussetzt. Die Prüfung der Korrektheit eines Modells beruht im wesentlichen auf der o.g. Forderung, dass das Verhältnis zwischen Miniwelt und Modell durch einen Isomorphismus beschrieben wird. Sie erfolgt durch Versuche, in denen zu Aktionen in der Realität parallel auch die entsprechenden, durch den Isomorphismus bestimmten Modellaktionen auf den entsprechenden Modellobjekten ausgeführt werden und die Ergebnisse unter Einbeziehung des Isomorphismus verglichen werden. Nur wenn die Vergleiche hinreichend oft positiv ausfallen, d.h. realer Versuch und Modellversuch zu isomorphen Ergebnissen führen, gilt die Korrektheit als nachgewiesen, das Modell als korrekt. Dieser Prozess der Prüfung eines Modells bedarf einer sehr wichtigen Anmerkung: Es ist nicht möglich, ein Modell positiv zu evalieren, d.h. seine Korrektheit festzustellen. Ein positiv bewerteter Vergleich zwischen Modellergebnis und entsprechenendem Ergebnis realer Versuche liefert nur keinen Grund, ein Modell als falsch abzulehnen. Die Kunst der Modellevaluierung besteht nun darin, das Modell mit solchen Versuchen zu testen, die auch eventuell problembehaftete Teile des Modells betreffen. Deswegen setzt die die Konzeption der Evaluierung tiefe Kenntnisse der zu modellierenden Miniwelt und des Modells voraus. Sind die zugehörigen Modellrechnungen alle in Übereinstimmung mit den Versuchsergebnissen, kommt die Hoffnung ins Spiel, nämlich die Hoffnung, dass das Modell sich in anderen Fällen ähnlich gut erweist. Dann kann anstatt einer Aktion in der Realität die entsprechende Modellaktion auf Modellobjekten ausgeführt werden. Das Ergebnis - ein Modellobjekt, das mit anderen Modellobjekten durch Modellbeziehungen verbunden ist - lässt sich dann in die Realität zurücktransformieren und liefert ein in der Realität korrektes Ergebnis. Die Gültigkeit oder Anwendbarkeit eines Modells muss immer wieder kritisch eingeschätzt werden, indem die Ergebnisse von Modellrechnungen immer hinsichtlich ihrer Plausibilität hinterfragt werden. Die Anwendbarkeit eines Modells

1 Modellierung 9 kann auf einen Bereich der Realität beschränkt bleiben oder auch später wieder aufgehoben werden, wenn sich neue Erkenntnisse über die Miniwelt ergeben. Dies ist insbesondere im Bereich des wissenschaftlichen Forschung ein häufig zu beobachtender Vorgang. Diesen Vorgang des Ersetzens eines Modells bzw. der ½º½º¾ ÓÒ Ö Ø Ò ÖÅÓ ÐÐ Ð ÙÒ ÖÁÒ ÓÖÑ Ø Feststellung eines nur eingeschränkten Gültigkeitsbereichs kann an der Entwicklung der verschieden Atommodelle in der Physik, insbesondere im 20. Jahrhundert, sehr gut verfolgt werden. Was ist Informatik? Definition 1.2: Informatik Informatik ist die Wissenschaft von der Informationsverarbeitung, der Konstruktion und dem Betrieb der dazu benutzten Maschinen. Die Informatik ist, verglichen mit gestandenen Wissenschaften wie Mathematik und Physik, eine sehr junge Wissenschaft ( 3 ), deren Entwicklung noch sehr rasant verläuft. Deshalb ist es schwierig, eine Definition dieses Wissenschaftsgebiets zu geben und die Definition 1.2: möge als Arbeitsdefinition gelten. Kommentar: In dieser Wissenschaft treffen offenbar zwei Wissenschaftkonzepte zusammen. Das erste Konzept(... Wissenschaft von der Informationsverarbeitung...) betont stärker die theoretische Seite: Hier werden Theorien entwickelt, Themen aud einem hohen Abstraktionsniveau behandelt. Dieser Teil der Informatik ist eng mit einigen Bereichen der Mathematik verbunden, die Übergänge sind teilweise fließend. Im zweiten Konzept (... Wissenschaft von... der Konstruktion und dem Betrieb der dazu benutzten Maschinen.) stellt sich die Informatik in die Reihe der Ingenieurwissenschaften. Neben eigenen Beiträgen werden hier Mathematik, Physik, 3 Wikipedia (URL: http://de.wikipedia.org/wiki/sexagesimalsystem ) Erstmalige Nachweise als schriftliches Rechensystem reichen in die Zeit der Sumerer um 3300 v. Chr. zurück. Der Begriff Informatik wurde 1957 von Karl Steinbruch in einer Publikation verwendet (Wikipedia: URL http://de.wikipedia.org/wiki/informatik). Der Beginn der Wissenschaft Informatik ist sicher früher anzusetzen. War die Shannonsche Theorie der Information (1948) oder die Festlegung von Algorithmen (z.b. die Patentierung des Soundex-Algorithmus im Jahre 1918 durch R. C. Russell ) oder waren die noch früheren die Veröffentlichung von Anleitungen zum Rechnen mit mechanischen Rechenmaschinen der Beginn der Informatik? Nicht zu vergessen ist auch das am 8.1.1889 zum Patent angemeldete Hollerith-System zur Verarbeitung von Daten auf Lochkartenbasis. Diese Frage sollen hier nur aufgeworfen werden.

10 Sosna: Lesebuch - E/R-Modell andere Naturwissenschaften und auch andere Ingenieurwissenschaften genutzt, um die für die Informationsverarbeitung genutzten Maschinen zu beschreiben, die Technologie ihrer Herstellung und Verfahren für ihre Anwendung zu untersuchen und weiterzuentwickeln. Beide Konzepte sind an vielen Punkten verbunden. Von der Informatik selbst sind ihre Anwendungen in anderen Wissenschaftsgebieten zu unterscheiden. Die hier oft vorhandene unklare Begriffsbildung führt andernfalls zu merkwürdigen Ergebnissen: so glaubt jemand häufig, Informatikkenntnisse zu haben, nur weil er ein Textverarbeitungsprogramm nutzt und dort Makros neu erstellt. Niemand käme auf den Gedanken, ein Hochfrequenzingenieur zu sein, nur weil er ein Radio bedienen kann. Hinsichtlich der Einschätzung der Tätigkeit des Programmierens sei auf Weizenbaum [8] verwiesen. Programmieren kann mit einem Handwerk verglichen werden, welches der Informatiker bis zu einem gewissen Grade beherrschen sollte, aber ½º½º ÅÓ ÐÐ ÒÛ Ò ÙÒ ÙÒ ÁÒ ÓÖÑ Ø wie bei jedem Handwerk gibt es auch hier den Fachmann, den Programmierer. Der wiederum hat Programmier-Aufträge in der vorgegebenen Zeit in einer überprüfbaren technischen Qualität zu erledigen. Typisch für die Anwendung der Informatik ist nun ein zweiter, gleichartiger Modellierungsschritt. Jetzt fungiert das Modell als Ausgangspunkt und die Rolle des Modells übernimmt eine rechnerinterne Darstellung (RID), in dem Modellobjekte und -beziehungen einerseits und die Modellaktionen andererseits jeweils Folgen von Zeichen (Zeichenketten) über dem Alphabet {0,1} sind, die nach bestimmten Regeln konstruiert werden und in dem das Ergebnis einer Anwendung einer Zeichenkette aus der Menge der Modellaktionen auf die Zeichenketten der Modellobjekte und -relationen definiert wird. Die Modellierung wird durch Hardware, Betriebssystem, Programmiersprachen und solche Sprachen wie SQL vermittelt. Die Modellverifikation heißt hier Programmtesten. Charakteristisch für diesen zweiten Schritt ist, dass das Modell i.a. formal definiert ist, die Verarbeitung kann durch eine Maschine erfolgen. Im Sinne dieser Definition gehört die Anwendung eines Modells zu den Anwendungen der Informatik. Das heißt aber auch, dass bei der Anwendung die Begriffswelt des Anwendungsgebiets und die Semantik der dort verwendeten Begriffe eine wichtige Rolle spielt. Hier wird also die Informatik durch Vermittlung einer anderen Wissenschaft wirksam. Besonders gut lässt sich dies im Bereich der Datenintegration nachweisen. Hier zeichnet sich als eine Hauptaufgabe die Benutzung und die Verarbeitung der Begriffswelt einer oder mehrerer Wissenschaften ab. Für viele praktisch ausgeführte Modelle muss jedoch festgestellt werden, dass ins-

1 Modellierung 11 Welt Modell RID Objekte Modellobjekte Zeichenketten Aktionen Modellaktionen Zeichenketten =(Vorschriften zur Manipulation von ZK) Isomorphismus Isomorphismus Abbildung 1.1: Modellierung in der Informatik besondere dann, wenn nur mit der zweiten Stufe des Modells gearbeitet wurde bzw. wenn für die Arbeit nur die zweite Stufe zur Verfügung steht, der konkrete Bezug zur Begriffswelt häufig verloren geht bzw. nicht mehr sicher erkennbar ist. Deshalb soll nochmal ausdrücklich festgestellt werden, dass zum Modell, das nach dem ersten Modellierungsschritt festgelegt ist, auch die Beschreibung des Isomorphismus, also des Zusammenhangs mit der Miniwelt gehört.( 4 ) Der zweite Modellierungsschritt ergibt sich aus den in der Informatikdefinition enthaltenen ingenieurwissenschaftlichen Komponente: Algorithmen, Datenstrukturen sowie deren Kodierung in einer Maschine zum Zweck der Informationsverarbeitung. Die Modellierung, die bei der Erstellung einer Datenbank zu leisten ist, fällt in den ersten Schritt der Modellbildung und nur zum Teil in den zweiten. Zum ersten Schritt gehören das Erarbeiten eines semantischen Modells in Form eines E/Roder eines UML-Modells, ggf. auch die Transformation in ein relationales Modell. Das Erstellen der zugehörigen SQL-Anweisungen stellt den Übergang zum zweiten Schritt dar. 4 Diese Forderung wird in den Definitionen 2.2: (Seite 13) und 2.7:(Seite 16) aufgegriffen.

12 Sosna: Lesebuch - E/R-Modell

¾ ÒØ ØÝ¹Ê Ð Ø ÓÒ Ô¹ÅÓ ÐÐ In diesem Modell gibt es zwei Grundelemente: Entitätsmengen und Relationship- Mengen ( 1 ). ¾º½ ÒØ ØØ Ñ Ò Ò Das Entity-Relationship-Modell, kurz E/R-Modell genannt, enthält die Möglichkeit, seine Bestandteile durch Symbole graphisch darzustellen. Diese Darstellungen sind beim Entwurf sehr hilfreich, da sie wesentliche Zusammenhänge in kompakter, übersichlicher Form beschreiben (siehe S. 19). Die Entitätsmengen haben als Elemente Entitäten. Eine Entität ist im Sinne der gegebenen Modelldefinition ein Modellobjekt, mit anderen Worten: Definition 2.1: Eine Entität ist das Modellobjekt zu einem Objekt der zu modellierenden Welt. Da ¾º½º½ ØØÖ ÙØ die zu modellierende Welt nie alles umfassen kann, also stets einen (kleinen) Ausschnitt aus der realen Welt oder / und einer gedanklichen Konstruktion darstellt, wird für diesen zu modellierenden Ausschnitt der Begriff Miniwelt verwendet. Alle Entitäten haben im E/R-Modell (nur) eine gemeinsame Eigenschaft: Entitäten haben in dem Modell nichts als Attribute. Dies hat eine zentrale Bedeutung des Attributbegriffs zur Folge. Alle weiteren Aussagen über diese Modellobjekte müssen als Aussagen über die Attribute formuliert werden. Ein Attribut beschreibt im Modell eine Eigenschaft des Objekts. Definition 2.2: Attribut Ein Attribut ist eine Komponente einer Entität. Ein Attribut wird beschrieben durch folgende Angaben: 1. Name. Der Name eines Attributs ist sein Identifikator. Er muss innerhalb der Attribute der Entität eindeutig sein. 1 Bei diesem Begriff wird absichtlich auf den Versuch eine Übersetzung verzichtet, um Verwechslungen mit später zu besprechenden Bildungen zu vermeiden. Somit wird dieser Begriff fest an dieses Modell gebunden und auch nur in diesem verwendet.

14 Sosna: Lesebuch - E/R-Modell 2. Wertebereich. Der Wertebereich ist die Menge aller Attributwerte, die in der zu beschreibenden Miniwelt für die durch das Attribut modellierte Eigenschaft auftreten können. Für jede Entität wird das Attribut mit einem Wert aus dem Wertebereich belegt. 3. Kontext. Der Kontext erklärt, zu welcher Entität das Attribut gehört. 4. Semantik. Die Semantik eines Attributs erklärt die Bedeutung des Attributs im Kontext der zu modellierenden Realität. Die Beschreibung der Semantik erfordert grundsätzlich Mittel, die das Modell selbst nicht bereitstellt, also eine Metasprache. Der einfachste Weg ist die textuelle Beschreibung der Semantik mit Hilfe eines Fachwortschatzes einer Wissenschaft, deren Begriffe zur Modellbildung verwendet wurden (und der üblichen Sprache). Als Nachteil dieses einfachen Vorgehens sind anzumerken: - das Vokabular wird nicht (umfassend) kontrolliert, es ist also von den Benutzern beliebig erweiter- und ergänzbar, wobei keine Qualitätssicherung möglich ist. - die Beschreibung ist nicht automatisch verarbeitbar. Natürlich hat ein solches Vorgehen auch Vorteile: - durch Menschen lesbar, - leichte Erweiterbarkeit des Wortschatzes zur Beschreibung der Semantik im Falle der Weiterentwicklung der Wissenschaft, die die Modellierung vermittelt. Das Erkennen / Kennen der Semantik der Komponenten ist die Voraussetzung jeder sinnvollen Verwendung des Modells. Beispiel 2.3: Attributbeschreibung Das Attribut Farbe welches die hauptsächlich an der Charosserie vorkommende Farbe sein soll, hat bei einem fiktiven Autotyp X die Werte schwarz, tornadorot, divingblue und bambusgrey. Das Beispiel einer Attributbeschreibung erklärt sich nahezu von selbst. Der Name ist Farbe, der Wertevorrat umfasst die vier angegebenen Zeichenketten, in dem im Beispiel beschriebenen Zusammenhang sind andere Werte für das Attribut Farbe nicht erlaubt. Die anderen Angaben gehören zur Semantik (...die hauptsächlich an der Karosserie vorkommende Farbe...) bzw. zum Kontext (... bei einem fiktiven Autotyp X...). Definition 2.4: Zwei Attribute sind (semantisch) gleich genau dann, wenn sie in den Angaben nach Definition 2.2: mit Ausnahme von Namen und Kontext übereinstimmen. Diese Definition beinhaltet ein Problem. Sie ist für Menschen verständlich und auch praktikabel. Soll jedoch der Vergleich automatisch erfolgen, setzt dies eine Form der

2 E/R-Modell 15 Angaben voraus, die durch Maschinen verarbeitet werden kann, diese Forderung ist für Punkte 4. der Attributbeschreibung i.a. nicht erfüllt. Die Wahl und die Beschreibung der Attribute ist eine schöpferische Leistung im Modellierungsprozess. Die Qualität des Modells kann davon abhängen. Dies wird im Zusammenhang mit der Bildung von Entitätsmengen genauer diskutiert (siehe Abschnitt 2.1.2, S. 16) Es soll noch ausdrücklich angemerkt werden, dass Attribute durchaus komplexer Natur sein können. Dazu gehören sowohl aus Komponenten zusammengesetzte Attribute als auch mehrfache Attribute. So können der Name einer Person aus dem Titel, Vornamen, dem Nachnamen und Namenszusätzen bestehen. Titel und Vornamen selbst können mehrfache Attribute darstellen, genannt seien Wissenschaftler mit mehreren Doktortiteln oder Personen mit mehreren Vornamen. Der Wertevorrat eines solchen komplexen Attributs besteht dann aus dem entsprechenden Kreuzprodukt der Wertevorräte der Komponenten. Definition 2.5: Einfache, mehrfache und zusammensetzte Attribute Ein Attribut, welches für eine Entität mehrere Werte annehmen kann, heißt mehrfaches Attribut. Ein Attribut, welches sich semantisch in mehrere Komponenten aufteilen lässt, welche eine eigene Semantik im Rahmen der betrachteten Miniwelt haben und dessen Komponenten auch einzeln im Modell dargestellt werden, heißt zusammengesetztes Attribut. Die Attribute, die weder zusammengesetzt noch mehrfach sind, heißen einfach. An dieser Definition, besonders an der Festlegung zusammengesetzter Attribute wird deutlich, wie das Verständnis des Modellierers für die Semantik in das Ergebnis des Modellierungsprozesses eingehen kann. Sein Verständnis entscheidet häufig darüber, ob ein Attribut durch Komponenten feiner granuliert dargestellt wird. So kann eine Adresse als einfaches Attribut behandelt werden oder in Komponenten unterteilt werden: Adresse = ( Postleitzahl, Ortsname, Straßenname, Hausnummer, Wohnungsnummer ). Mit Hilfe der Attribute können die Entitäten beschrieben werden: Axiom: Eine Entität wird in E/R-Modell durch die Angabe der dieser Entität zugeordneten Attributnamen-Wert-Paare in ausreichender Weise gekennzeichnet. Wird die Gültigkeit dieses Axioms in Zweifel gezogen, verliert das Modell seine Grundlage. Das Finden der Attribute und die Beschreibung der Entitäten durch die Attribut-Wert-Paare bilden den ersten Schritt der Modellierung.

¾º½º¾ ÒØ ØØ Ñ Ò Ò 16 Sosna: Lesebuch - E/R-Modell Im folgenden Schritt wird die Menge aller Entitäten strukturiert, indem Teilmengen gebildet werden. Definition 2.6: Zwei Entitäten gehören der gleichen Teilmenge der Menge aller Entitäten an, wenn sie in den Mengen ihrer Attribute (nicht der Werte) übereinstimmen. Jede der so gebildeten Teilmengen heißt Entitätsmenge. Auf Grund dieser Definition wird jede Entität jeweils genau einer Teilmenge zugeordnet, es findet also eine Zerlegung der Menge aller Entitäten in Klassen ( 2 ) statt, die hier Entitätsmengen heißen. Nachdem die Attribute festgelegt sind, ist diese Klassenbildung scheinbar ein formaler Schritt. Die Bildung der Entitätsmenge ist jedoch mehr als nur die Zusammenfassung formal gleichartiger Entitäten. Zunächst ist sie abhängig von der Wahl der Attribute der Entitäten, d.h. die Wahl der Attribute darf nicht losgelöst von den Begriffen in der Miniwelt erfolgen. Es ist wesentlich, dass für Entitäten, die zu einem gemeinsamen Oberbegriff in der Miniwelt gehören, auch Attribute gefunden werden, die in ein gemeinsames Konzept passen. Es ist dann zu prüfen, ob die Zusammenfassungen im Rahmen der Begriffswelt, die der Miniwelt zu Grunde liegt, eine eigene Semantik besitzen, ob also eine Entitätsmenge einem Begriff der zu modellierenden Welt entspricht. Die Entitätsmengen bilden eine Grundstruktur des E/R-Modells. Da häufig auf sie zugegriffen wird, erhalten sie jeweils einen eigenen Namen. Und dabei ist mit Blick auf das Endziel der Modellierung auch zu prüfen, ob nicht auch noch generalisiert werden soll. In der Praxis ist häufig zu beobachten, dass das Finden von Attributen und Entitätsmengen und ihre Zuordnung zu den Konzepten der Miniwelt auf iterative Wiederholungen dieser beiden Schritte führt, wobei auch Umwidmungen und Neuschöpfungen auftreten. Das Finden der richtigen Entitätsmengen und der richtigen Attribute ist ein schöpferischer Prozess, dessen Güte die Eignung des Modells direkt beeinflusst. In diesem Sinne ist die gesamte Modellierung ein krativer Prozess, dessen Ergebnis auch von der Erfahrung und dem Verstehen der Beteiligten (Personen) abhängt. Definition 2.7: Die Beschreibung einer Entitätsmenge erfolgt durch folgende Angaben: 1. Name. Der Name einer Entitätsmenge gilt als ihr Identifikator. Er muss also eindeutig sein - zumindest als Name einer Entitätsmenge im Kontext des gerade erstellten Modells. 2 Der Begriff Klasse wird hier im mathematischen Sinn mit der Bedeutung einer vollständigen und disjunkten Einteilung in Teilmengen benutzt.

2 E/R-Modell 17 ¾º½º Ë Ð Ð Ò Ø Ò ÈÖ ÑÖ Ð Ð 2. Menge der Attribute, die für alle Elemente relevant sind. 3. Semantik, ausgedrückt in der Begriffswelt der zu modellierenden Miniwelt. 4. Beschreibung Miniwelt, in der die Entitätsmenge auftritt. Da die Teilmengenbildung den mathematischen Mengenbegriff unterstellt, nach dem es in einer Menge keine Duplikate gibt, ergeben sich für die Modellierung Konsequenzen. So ist durch die Wahl bzw. Festlegung der Attribute dafür zu sorgen, dass Objekte der Miniwelt, die als verschieden anzusehen sind, auch auf unterschiedliche Entitäten abgebildet werden. Nach der Bildung der Entitätsmengen gilt für jede Entitätsmenge, dass sie eine Menge im Sinn des mathematischen Begriffs ist. Da alle Elemente einer Entitätsmenge nach Konstruktion dieser Mengen genau die gleichen Attribute besitzen, die für jede Entität mit Werten belegt werden, kann die Mengeneigenschaft nur erfüllt werden, wenn es in einer Entitätsmenge keine zwei Entitäten gibt, die in allen Attributwerten übereinstimmen. Dies kann man auch anders ausdrücken: Satz 2.8: Durch Angabe der Werte der (aller) Attribute kann eine Entität innerhalb der zugehörigen Entitätsmenge eindeutig bestimmt werden. Schlüsselkandidaten Diese Aussage motiviert die folgende Frage: Reichen evt. weniger als alle Attribute, um aus den Werten für diese Attribute eine Entität eindeutig zu identifizieren? Die Frage muss dabei so verstanden werden, dass die Antwort nicht nur für die derzeit vorhandenen Entitäten gilt, sondern für alle Entitäten, die auf grund der Wertevorräte der Attribute in der betrachteten Miniwelt überhaupt möglich sind. Diese Frage kann i.a. nicht formal durch Untersuchung der Wertevorräte entschieden werden, sondern nur durch Betrachtung der Semantik. Dabei sind sowohl die Attribute als auch die Entitätsmengen und ihre Urbilder in der Miniwelt zu betrachten. In praktischen Beispielen ist meist die Beschreibung der Miniwelt um allgemeines Wissen um das modellierte Gebiet zu ergänzen, damit diese Frage beantwortet werden kann. Definition 2.9: Schlüsselkandidat Eine Teilmenge S der Menge aller Attribute eines Entitätsmenge heißt Schlüsselkandidat g.d.w. gilt: 1. Eine Entität wird durch die Attributwerte des Attribute von S eindeutig bestimmt, d.h. seien E eine Entitätsmenge, e 1,e 2 E mit der Eigenschaft e 1 = e 2 so folgt e 1 S = e 2 S ( 3 ) 3 Mit e S beschreiben wir die Einschränkung von e auf die auf Attribute von S, d.h. es werden nur die Werte dieser Attribute betrachtet.

18 Sosna: Lesebuch - E/R-Modell 2. Aus S kann kein Element weggelassen werden ohne dass die Eigenschaft (1) verloren geht. Die zweite Eigenschaft wird mit dem Begriff Minimalität des Schlüsselkandidaten beschrieben. Sie erweist sich als wesentliche Voraussetzung für die Begriffsbildungen der Normalformenlehre ( 4 ). Da es, wie oben dargelegt, in einer Entitätsmenge keine zwei Elemente geben kann, die in allen Attributen übereinstimmen, muss es in einer Entitätsmenge mindestens eine Attributkombination geben, die die Bedingung 1. erfüllt. Sie enthält im ungünstigsten Fall alle Attribute. Somit ist die Existenz eines Schlüsselkandidaten (theoretisch) gesichert. Primärschlüssel Eventuell gibt es zu einer Entitätsmenge mehrere Schlüsselkandidaten. Aus allen Schlüsselkandidaten wird einer ausgewählt und zum Primärschlüssel erklärt. Aus (theoretischer,) die Funktionalität betrachtender Sicht sind dabei alle Schlüsselkandidaten gleichwertig und die Auswahl könnte nach gusto erfolgen. Wie sich noch zeigen wird, macht es aus praktischen Überlegungen heraus Sinn, möglichst einen Primärschlüssel zu wählen, der wenige Attribute enthält, am besten sind deshalb in der Praxis einzelne Attribute geeignet, wenn sie denn die Bedingung (1) für Schlüsselkandidaten erfüllen, um (2) braucht man sich in diesem Fall nicht zu kümmern. Es wird festgelegt, dass zur Bestimmung einer Entitätsmenge die Feststellung des Primärschlüssels gehört. ¾º½º Ù ÐÙ ÚÓÒ ÖË Ð Ð Ð ÙÒ In der Praxis kann es vorkommen, dass entgegen aller Theorie praktisch kein Schlüsselkandidat gefunden wird. Die Diskussion dieses Falles wird noch etwas verschoben (siehe S. 27). Unbestimmte Werte eines Attributs Bei der Festlegung des Wertevorrats eines Attributs bestehen kaum Einschränkungen. Dies bedeutet, das zum Wertevorrat auch Werte mit einer Semantik gehören können, die eine Unbestimmtheit oder Unsicherheit zu beschreibt. Beispiele dafür sind Wert unbestimmt oder Wert unbekannt oder Existenz des Wertes unsicher oder.... Träte ein solcher Wert in einem Schlüsselkandidaten 4 Es ist vorgesehen, die Normalformenlehre in einem weiteren Lesebuch darzustellen.

2 E/R-Modell 19 auf, bedeutete dies, dass die eindeutige Bestimmtheit einer Entität durch den Schlüsselkandidaten verletzt wird. Da jedoch bei der allgemeinen Betrachtung beim Entwurf des Modells nicht sicher ausgeschlossen werden kann, dass nicht irgendwann später eine Entität mit solchen Werten auftritt, wenn diese in der Attributdefinition zugelassen werden,... wird zusätzlich verboten, dass Attribute mit Werten, die eine Unbestimmtheit ausdrücken, Bestandteil eines Schlüsselkandidaten sein können. Diese Eigenschaft eines Schlüsselkandidaten wird auch als Gegenstandsintegrität bezeichnet ( 5 ). Nichteinfache Attribute Nichteinfache Attribute sind zusammengesetzte oder mehrfache Attribute, in beiden Fällen ist ein Gleichkeitsbegriff definiert: zusammengesetzte Attribute sind gleich wenn sie sie die gleiche Komponentenstruktur haben und komponentenweise gleich sind, mehrfache Attribute sind gleich, wenn sie als Mengen gleich sind (also die gleichen Elemente enthalten). Andernfalls sind sie ungleich. Damit wäre es theoretisch möglich, dass im E/R-Modell zusammengesetzte oder mehrfache Attribute Bestandteile eines Schlüsselkandidaten sind. Dennoch sollten nichteinfache Attribute als Bestandteile eines Primärschlüsels vermieden werden. Der Grund für diese Empfehlung liegt in dem (noch zu besprechenden) Relationenmodell, in welchem nur einfache Attribute existieren. Das Beachten dieser Empfehlung ¾º½º Ö Ô Ö Ø ÐÐÙÒ ÚÓÒ ÒØ ØØ Ñ Ò ÒÙÒ ØØÖ ÙØ Ò sichert, dass Primärschlüssel aus dem E/R-Modell einfach übernommen werden können. Andererseits kann es vorkommen, dass in jedem Schlüsselkandidaten ein nichteinfaches Attribut auftritt und folglich bei Beachtung der Empfehlung kein Primärschlüssel bildbar ist (vgl. hierzu Abschnitte 2.3.2, Seite 27, und 3.2.2,Seite 47). Das E/R-Modell kommt mit einer sehr suggestiven graphischen Darstellungsmöglichkeit einher, die in einer ersten Form schon von Chen (1976) eingeführt wurde und in wesentlichen Zügen hier genutzt werden soll ( 6 ). Diese sogenannten E/R-Diagramme ermöglichen, dass ein Betrachter sich schnell einen Überblick über eine konkrete Modellierung verschafft. Für die verschiedenen Komponenten 5 Siehe http://www.gitta.info/logicmodelin/de/html/dbintegrity_keyinteg.html 6 Eine Übersicht über weitere Notationsansätze findet sich in der freien Enzyklopädie Wikipedia URL: http://de.wikipedia.org/wiki/entity-relationship-modell#er-diagramme

20 Sosna: Lesebuch - E/R-Modell des Modells existieren symbolische Darstellungen. Festlegung: Das Symbol für eine Entitätsmenge besteht aus einem Rechteck mit einem einfachen Rand, in dessem Inneren die Angaben zur Entitätsmenge entsprechen den Ausführungen im Abschnitt 2.7: (S. 16) stehen. Um eine gute übersichtlichkeit auch bei großen Darstellungen zu erhalten, wird i.a. jedoch nur der Name der Entitätsmenge eingetragen, die anderen Angaben werden in Listen außerhalb der Diagramme verwaltet. Die Beschränkung auf die Namen gilt i.a. für alle Komponenten dieser Diagramme. Festlegung: Die Attribute werden durch Kreise (Ellipsen) repräsentiert, die durch eine Strecke mit dem Rechteck ihrer Entitätsmenge verbunden sind. Im Innern der Ellipse befindet sich der Attributname. Entitätsmenge Attribut Entitätsmenge mit Attribut E B Entitätsmenge E mit mehrfachem Attribut B Bei mehrfachen Attributen beseht der Rand aus einer Doppellinie. Bei zusammengesetzten Attributen werden an die Attributkreise weitere Kreise für die Komponenten mittels Strecken angehängt. E A Aa Ab Entitätsmenge E mit zusammengesetztem Attribut A, bestehend aus den Komponenten Aa und Ab Festlegung: Die Attribute, die den Primärschlüssel bilden, werden unterstrichen.

2 E/R-Modell 21 E A B Aa Ab Entitätsmenge E mit zusammengesetztem Primärschlüssel (A,B) Enthält der Primärschlüssel auch ein zusammengesetztes Attribut, bereitet dies in diesem Modell keinerlei Probleme, die Einzigkeitsforderung aus der Schlüsseldefinition ist auf die Komponenten des zusammengesetzten Attributs sinnfällig anzuwenden (vgl. Abschnitt 2.1.4, Seite 19)

demæ Ò Ñ Ò 22 Sosna: Lesebuch - E/R-Modell Beispiel 2.10: Das folgende Bild zeigt die EntitätsmengeÈ Ö ÓÒ Òmit Attributen wie auf Seite 15 beschrieben. So ist deræ Ñ einer Person in der Regel zusammengesetzt, er könnte ausì Ø Ð ÎÓÖÒ Ñ Æ Ñ Ò ÞÙ ØÞ(von, zum,...) und bestehen. Titel und Vorname selbst können mehrfache Attribute darstellen, genannt seien Wissenschaftler mit mehreren Doktortiteln oder Personen mit mehreren Vornamen. Für eine problemlose Primärschlüsseldefinition wird die Existenz einer universellen PersonenkennzahlÈà vorausgesetzt. PKZ Vorname Namenszusatz Personen Name ¾º¾Ê Ð Ø ÓÒ Ô¹Å Ò ÒEntitätsmengeÈ Ö ÓÒ Ò Titel Nachname In einem Modell wird es fast immer mehrere Entitätsmengen geben. Zwischen den Elementen zweier oder mehrerer dieser Mengen bestehen im allgemeinen Beziehungen. Beispiel 2.11: In der Miniwelt einer Universität gibts Professoren und Studenten. Beide haben als Attribut einen Namen, ein Professor eine Personalnummer, Studenten eine Matrikelnummer. Die Nummern bilden jeweils den Primärschlüssel. Sinnvollerweise bilden Professoren und Studenten jeweils eine Entitätsmenge. Zwischen einzelnen Studenten und einzelnen Professoren gibt es Beziehungen: Professor P1 betreut die Diplomarbeiten der Studenten S1,S2. Professor P2 prüft die Studenten S1, S3, S4. Bei einer Prüfung muss natürlich das Fach festgelegt werden, dann ist das Prüfungsdatum und die Note festzuhalten. Diese Daten bilden Attribute der Beziehung. Definition 2.12: Relationship-Mengen Die konkreten Beziehungen zwischen den Entitäten von Entitätsmengen werden zu Mengen gleichartiger Beziehungen zusammengefasst, diese Mengen heißen Relationship-Mengen. Die Gleichartigkeit wird durch die gleichen beteiligten Entitätsmengen und gleiche Attribute induziert. Festgestellt wird sie dann durch die gleiche Semantik.

2 E/R-Modell 23 In unserer Miniwelt entstehen die Relationship-Mengen betreut-da und Prüfung, letztere hat noch die zusätzliche Informationen, die hier Attribute der Relation heißen. Diese Attribute werden wie bei den Entitätsmengen notiert. Festlegung: Im Diagramm wird eine Relationship-Menge durch einen Rhombus dargestellt. Die folgende Abbildung zeigt die Idee der Darstellung (für ein komplettes Diagramm müssen noch einige Angaben hinzugefügt werden): Professoren betreut-da Studenten Name PNR Fach Prüfung Note Name Ma-Nr Datum Relationship-Mengen (unvollständig ( 7 ) ) Satz 2.13: Mathematisch sind die Relationship-Mengen Relationenmengen, also Teilmengen des Kreuzprodukts der Entitätsmengen. Bei zwei durch eine Relationship-Menge Ï Ø Ö Ò Ò Ñ»Ê¹ Ö ÑÑ verbundenen Entitätsmengen besteht die Beziehung (, wenn sie keine eigenen Attribute hat,) aus Paaren von Entitäten. Im Diagramm kann zusätzlich die Rolle angegeben werden, die die Entitäten in der Beziehung realisieren. Im Bild erscheint nur der Rollenname, die Beschreibung der Rolle, ihre Funktion usw. muss in einer Legende erfolgen. Die Beschreibung wird sicher entfallen können, wenn die Bedeutung des Rollennamens allgemeines Wissen ist. 7 Dieses und die folgenden Diagramme sind insofern unvollständig, als dass die sog. Abbildungstypen (vgl. Seite 29) und die Kardinalitätsrestriktionen (vgl. Seite 31) noch fehlen. Beide Angaben modellieren Aspekte der Semantik und sollten deshalb angegeben sein.

24 Sosna: Lesebuch - E/R-Modell Professoren Betreuer betreut-da Diplomand Studenten Prüfer Kandidat Name Prüfung Name Ma-Nr PNR Fach Note Datum Relationship-Mengen mit Rollennamen (unvollständig) Es stellt kein Problem dar, wenn eine Relationship-Menge eine Beziehung einer Entitätsmenge mit sich selbst beschreibt. Solche Beziehungen werden auch reflexive Beziehungen genannt. Typische Beispiele sind: a) Entitätsmenge: Staaten (der Erde), Relationship-Menge: Staat 1 grenzt an Staat 2. b) Entitätsmenge: Personen; Relationship-Menge: Person 1 ist Chef von Person 2 (und umgekehrt ist Person 2 Mitarbeiter von Person 1). c) Entitätsmenge: Personen; Relationship-Menge: Person 1 ist verheiratet mit Person 2. Hier können (wenn man sich auf Deutschland beschränkt) noch die Rollen Ehefrau und Ehemann angegeben werden, und es gilt die Nebenbedingung, dass Polygamie verboten ist. Person Chef Mitarbeiter Mitarbeit Reflexive Beziehung nach b) (unvollständig) Bei reflexiven Beziehungen sind Rollennamen für das Verständnis i.a. unverzichtbar. Beim Übergang zum Relationenmodell (siehe S. 39) können sie unter bestimmten Bedingungen die Grundlage für neue Attributnamen sein, mit denen dann die Rolle gekennzeichnet wird.

¾º ÈÖÓ Ð Ñ ÐÐ ¾º º½Ë Û ÒØ ØØ Ñ Ò Ò 2 E/R-Modell 25 In diesem Abschnitt sollen Probleme gelöst werden, die entstehen, wenn die Primärschlüssel von Entitätsmengen nicht feststellbar sind. Zur Illustration diene zunächst die folgende Miniwelt: Aufgabe 2.14: In einer Firma soll für die Kinder von Mitarbeitern ein Betriebskindergarten eingerichtet werden. Von einen Mitarbeiter seien sein Nachname und die Personalnummer (PNR, Primärschlüssel) bekannt, von den Kindern der Vorname, das Geburtsdatum und ein Lieblingsessen ( 8 ). Und natürlich gibt es eine Beziehung jedes Kindes zu einem Mitarbeiter (, nämlich dessen Kind zu sein). Lösung: Folgende Feststellung vorab: der E/R-Entwurf zu einer Miniweltbeschreibung ist nicht eindeutig, meist gibt es mehrere Lösungen, so auch hier. Die erste Lösung geht davon aus, dass die Kinder als eigenständige Objekte der Miniwelt angesehen werden sollen. Bei dieser Annahme können die Vorgaben mit zwei Entitätsmengen Mitarbeiter und Kinder sowie der Relationship-Menge ist-kind beschrieben werden. Jetzt besteht das Problem, dass die vorgelegten Attribute der Entitätsmenge Kinder nicht geeignet sind, einen Primärschlüssel zu finden. Es ist leicht möglich, dass in dem Kindergarten zwei Kinder mit gleichem Vornamen und gleichen Geburtsdatum existieren. Nach den oben getroffenen Festlegungen kann deshalb Kinder keine Entitätsmenge sein. Nun ist es jedoch so, dass durch die Beziehung zu den Mitarbeitern die Eindeutigkeit erreicht wird. Die Kinder eines Mitarbeiters haben unterschiedliche Vornamen ( 9 ). D.h. der Vorname spielt in Verbindung mit der Beziehung zur Entitätsmenge Mitarbeiter die Rolle eines Primärschlüssels, er wird jetzt Schlüsselergänzung genannt. Definition 2.15: Solche Entitätsmengen, die zur Bestimmung eines Primärschlüssels den Bezug zu einer anderen Entitätsmenge benötigen, heißen im E/R-Modell schwache Entitätsmengen. In der Diagrammdarstellung schwacher Entitätsmengen wird die Schlüsslergänzung wie ein Primärschlüssel unterstrichen, der besondere Status der 8 Es ist nicht die Aufgabe des Datenbankentwurfs, ungewöhnliche Attributkombinationen zu bewerten - sie werden bestmöglich realisiert. 9 Wir sehen hier von den Sonderfällen ab, die durch Scheidung, Wiederheirat u.a. entstehen.

26 Sosna: Lesebuch - E/R-Modell Entitätsmenge durch einen doppelten Rahmen markiert. Wenn die schwache Entitätsmenge Beziehungen zu mehreren anderen Entitätsmengen hat, wird auch diejenige Relationship-Menge doppelt umrandet, die die Eindeutigkeit vermittelt. Mitarbeiter M-hat-K Kinder Vorname Geb.-Dat. Nachname PNR Lieblingsessen Abbildung 2.1: Schwache Entitätsmengen (unvollständig) Dieses Beispiel erlaubt eine zweite Lösung, die ohne die Benutzung der schwachen Entitätsmengen auskommt: In der EntitätsmengeÅ Ø Ö Ø Öwird ein weiteres, mehrfaches AttributÃ Ò Öhinzugefügt. Dieses Attribut selbst ist zusammengesetzt aus den BestandteilenÎÓÖÒ Ñ º¹ غ Ä Ð Ò Ò. Mitarbeiter Kinder Geb.-Dat. Vorname Nachname PNR Lieblingsessen Abbildung 2.2: Betriebskindergarten mit mehrfachem Attribut Hier entfällt natürlich das Problem der Schlüsselfindung. Eine genaue Betrachtung beider Lösungen offenbart, dass sie semantisch nicht gleichwertig sind. Die Modellierung als schwache Entitätsmenge beinhaltet die Aussage, dass Kinder etwas Eigenständiges sind. Bei der zweiten Lösung werden sie als Eigenschaft eines Mitarbeiters aufgefasst. Auch wird dabei ein Kind mit genau einem Mitarbeiter in Beziehung gebracht. Der Lösung als schwache Entitätsmenge ist hier flexibler. Sie erlaubt, dass ein Kind mit mehreren Mitarbeitern in Beziehung steht, etwa wenn beide Eltern in der Firma arbeiten. Dies hat Konsequenzen bei einem möglichen Ausscheiden eines Elternteils aus Firma. Bei der Lösung mit schwachen Entitätsmengen ist dies ohne Probleme möglich, bei der Lösung mit dem mehrfachen Attribut ist in diesem Fall eventuell eine Zuordnung der Kinder zu dem anderen Elternteil notwendig. Das Problem der Vielfachheit einer Beziehung wird noch genauer zu untersuchen sein.

¾º º¾Ã ÒË Ð Ð Ò Ø 2 E/R-Modell 27 Theoretisch dürfte es keine Entitätsmengen geben, zu denen kein Schlüsselkandidat gefunden werden kann (vgl. Abschnitt 2.1.3, S.17), denn in der Miniwelt werden verschiedene Objekte auch unterschieden. Wenn dies im Modell nicht mehr zutrifft, können zwei Gründe dafür genannt werden: Grund 1: die Einhaltung der Empfehlung, einfache Attribute im Primärschlüssel zu verwenden, Grund 2: Es wurden wesentliche Merkmale der Objekte nicht als Attribute im Modell berücksichtigt. Dies kann ein Modellierungsfehler genannt werden. Auch wenn dieser Standpunkt, einen Fehler anzunehmen und eine Modellierung mit weiteren Merkmalen der realen Objekte erneut zu versuchen, logisch ist, gibt es doch praktische Gründe, in einem solchen Fall nach einer weniger aufwändigen Lösung zu suchen. Ein solcher Grund könnte sein, dass die Werte der Attribute, die den Schlüsselkandidaten bilden würden, in der praktischen Anwendung nicht zur Verfügung stehen oder dass die Datenerhebung zu aufwendig wäre oder... oder.... Das folgende Beispiel diene zur Illustration. dassæ Ñ ÎÓÖÒ Ñ Beispiel: Eine Entitätsmenge Studenten soll modelliert werden, zur Verfügung stehen die AttributeÆ Ñ ÎÓÖÒ Ñ ÙÖØ ØÙÑ ÙÖØ ÓÖØ Ò Ö Ømit Wohnungsnummer. Zieht man solche Millionenstädte wie Peking mit in Betracht, so wird klar, dass alle genannten Attribute möglicherweise für die Bildung eines Schlüsselkandidaten gebraucht werden. Hier finden sich leicht Beispiele, Eindeutigkeit der beschriebenen Person gewähr- ÙÖØ ØÙÑ ÙÖØ ÓÖØnicht die leisten, während es nahezu ausgeschlossen ist, dass zwei Personen in allen Attributen übereinstimmen. Damit währe zwar die Bildung eines Schlüsselkandidaten aus allen genannten Attributen möglich, aber praktisch nicht sinnvoll (beispielsweise wegen häufiger Veränderung der Anschrift durch Umzug) Ein solcher zusammengesetzter Schlüssel tritt auch im täglichen Leben auf, ist also überhaupt nicht an die Informatik gebunden. Im universitären aus ÙÖØ ØÙÑ Ð Ø ÙÖØ Ö Leben wurde deshalb schon vor langer Zeit etwas eingeführt, was diese Attributkombination ersetzt: die Matrikelnummer. Ursprünglich war dies die Nummer eines Eintrags im Matrikelbuch. Auf diesen Eintrag wurde bezug genommen, um einen Studenten zu benennen. Natürlich ist diese Matrikelnummer leichter handhabbar als die o.g. Attributkombination. Ein anderes Beispiel einer solchen künstlichen Schlüsselkonstruktion gab es in der DDR in Form der Personenkennzahl, wo ½¼µund einer dreistelligen fortlaufendenæùññ Öein künstlicher Schlüsselkandidat für alle Bürger erstellt wurde. Aber auch die künstlichen Schlüsselkandidaten müssen kritisch hinsichtlich ihrer Gültigkeit hinterfragt werden. Die Matrikelnummer, wie sie heute verwendet wird, ist 6stellig ( + eine Prüfziffer). Dies macht klar, dass sie nicht hochschulübergreifend 10 Der Kreis war eine Verwaltungseinheit.

28 Sosna: Lesebuch - E/R-Modell sein kann und selbst an einer Hochschule nach einigen Jahren Wiederverwendungen auftreten. Soll also ein Student in der Bundesrepublik Deutschland eindeutig festgelegt werden, muss beispielsweise die Kombination ( Hochschule, Immatrikulationsjahr, Matrikelnummer) verwendet werden. Und im Falle der Personenkennzahl hat nun der Lauf der Geschichte dafür gesorgt, dass der Punkt des Ausschöpfens aller Möglichkeiten nie erreicht wird. Aus dem Beispiel der Studentendaten kann der Schluss gezogen werden, dass durchaus ein künstlich erzeugter Schlüsselkandidat sinnvoll sein kann ( 11 ), jedoch muss auch warnend erwähnt werden, dass dadurch die Gefahr eines Verlustes an Semantik besteht: Wählt man ( Name, Vorname, Geburtsdatum, Geburtsort, Anschrift) zum Primärschlüssel, ist jede Kombination der Attributwerte einzig in der Datenbank. Ist die Matrikelnummer der Primärschlüssel, muss die Einzigkeit der Wertekombination der genannten Attribute zur ¾º ÅÓ ÐÐ ÖÙÒ Û Ø Ö Ö Ò Ø Ò zusätzliche Bedingungen ausdrücklich gefordert werden. Deshalb sollte ein künstlicher Primärschlüssel nur ein letzter Ausweg sein und deshalb (möglichst) nicht im E/R-Modell angewendet werden. Er kann in einem späteren Stadium der Modellierung immer noch in ein Modell eingebracht werden. Schon bei der Einführung von Rollen wurde deutlich, dass in der Beschreibung einer Miniwelt noch mehr Informationen enthalten sind als mit Entitätsmengen und Relationship-Mengen ausgedrückt wird. Insbesondere sollen Beziehungen genauer beschrieben werden. Das oben genannte Beispiel der Kinder im Betriebskindergarten (Abschnitt 2.14:) gibt Hinweise, dass insbesondere die Vielfachheit einer Beziehung genauer dargestellt werden sollte. Es existieren mehrere Möglichkeiten der Charakterisierung, die nicht äquivalent sind, also unterschiedliche Merkmale ausdrücken. Es bedarf deshalb einer Vereinbarung, wenn nicht alle Möglichkeiten genutzt werden sollen. Desweiteren darf ¾º º½ Ö Ò ÖÊ Ð Ø ÓÒ Ô¹Å Ò nicht unerwähnt bleiben, dass hier keine Kompatibilität zum UML-Modell besteht, obwohl bei den Kardinalitätsrestriktionen die Notation zum Verwechseln ähnlich ist. Definition 2.16: Der Grad einer Relationship-Menge (ohne eigene Attribute) ist die Anzahl der Entitätsmengen, die in die durch die Relationship-Menge beschriebene Beziehung eingehen. Der Grad einer Relationship-Menge ist stets größer als Eins. Sind n Entitätsmengen beteiligt, nennt man die Beziehung n-är. 11 Eine Untermauerung der Motivation ergibt sich noch aus technischen Fragen in Zusammenhang mit dem Übergang ins Relationenmodell (siehe Abschnitt 3.2, S. 45

2 E/R-Modell 29 Definition 2.17: Eine Relationship-Menge heißt binär g.d.w sie eine Beziehung zwischen genau zwei Entitätsmengen beschreibt.( 12 ) Mathematisch kann eine Relationship-Menge als Teilmenge des Kreuzprodukts der an der Beziehung teilnehmenden Entitätsmengen betrachtet werden. In einem Kreuzprodukt darf natürlich keine Komponente fehlen. Dies bedeutet, es zu jedem Eintrag ¾º º¾ Ð ÙÒ ØÝÔ Ò in einer Relationship-Menge die zugehörigen Einträge in den Entitätsmengen per se geben muss. Diese Feststellung wird sich als wichtig erweisen. Wir werden auf sie beim Übergang zu einem weiteren Modell, dem Relationenmodell, bzw. zu einer Datenbank zurückkommen. Für binäre Relationship-Mengen (und nur für diese!) ist der Begriff des Abbildungstyps erklärt. Es wird zwischen den Typen 1:1, 1:N, N:1 und N:M unterschieden. Der Abbildungstyp wird im Diagramm durch die Zeichen 1, M, N dargastellt: A 1 1 A_B B Abbildung 2.3: Abbildung vom Typ 1:1 Definition 2.18: Die Beziehung A B ist vom Typ 1:1 g.d.w. ein Element der Entitätsmenge A mit höchstens einem Element von B und ein Element der Entitätsmenge B mit höchstens einem Element von A ein Paar bildet. Mit anderen Worten: Die Abbildung ϕ : D(ϕ) B mit dem Definitionsbereich D(ϕ) A ist eine Funktion und ebenso die Umkehrabbildung χ : D(χ) A mit D(χ) B. Wie in der Definition durch D(ϕ) A (D(ϕ) ist Teilmenge von A) ausgedrückt wird, muss nicht jedes Element von A an der Beziehung teilnehmen. Dieser Schluss kann auch für B gemacht werden. Eine solche optionale Teilnahme gilt auch für die folgenden Abbildungstypen. 12 Diese müssen nicht verschieden sein.