Kommunikation und Datenhaltung

Größe: px
Ab Seite anzeigen:

Download "Kommunikation und Datenhaltung"

Transkript

1 Kommunikation und Datenhaltung Datenbankmodelle für den Entwurf

2 Überblick über den Datenhaltungsteil Motivation und Grundlagen Architektur von Datenbanksystemen Datenbankanfragen Relationenmodell und Relationenalgebra Relationale Datenbanksprachen (SQL) Datenbankentwurf ER- und E Abbildung von en auf das Relationenmodell Relationaler Entwurf Sprachen zur Datenbankdefinition Transaktionsverwaltung Anfrageoptimierung Datenbankanwendungsentwicklung 2

3 Überblick über dieses Kapitel Datenbankentwurf Semantik von E 3

4 Warum dieses Kapitel? I Institut für Programmstrukturen und Datenorganisation (IPD) E Bisher Anfragen auf ein gegebenes Schema Jetzt Entwurf: Wie Schema entwerfen? Wichtigkeit des Themas: Analogie zu Anwendungsentwicklung komplexes Problem strukturierte Herangehensweise 4

5 Warum dieses Kapitel? II Institut für Programmstrukturen und Datenorganisation (IPD) E Wichtigkeit des Themas (Fortsetzung): Es gibt standardisierte Notation für Entwurfsergebnisse auf hoher Ebene. Kommunikation mit anderen Beteiligten leichter, Werkzeug-Unterstützung bei Verfeinerung und Implementierung sowie Verwaltung der Entwurfsergebnisse. Es gibt Qualitätskriterien für Entwurf; Theorie hierzu basiert auf diesem und folgenden Kapiteln. 5

6 Motivation Institut für Programmstrukturen und Datenorganisation (IPD) E Elementare Fragen beim Datenbank- Entwurf: Welche Daten in die Datenbank? Wie strukturiert/ angeordnet? Was für Inhalte sind zulässig? Was für Anfragen sollten grundsätzlich möglich sein? Beantwortung dieser Fragen: bzw. DB-Modellierung. Es gibt unterschiedliche Sprachen hierfür. Sprachen mehr oder weniger eng an zu verwendender DB-Technologie orientiert. 6

7 Institut für Programmstrukturen und Datenorganisation (IPD) Überblick über dieses Kapitel Datenbankentwurf Semantik von E 7

8 Datenbankentwurf Anforderungen E Datenhaltung für mehrere Anwendungssysteme und mehrere Jahre Anforderungen an Entwurf Anwendungsdaten jeder Anwendung sollen aus Daten der Datenbank ableitbar sein (und zwar möglichst effizient) Nur vernünftige (wirklich benötigte) Daten sollen gespeichert werden Nicht-redundante Speicherung 8

9 Datenbankentwurf Entwurfsschritte E Anforderungsanalyse Konzeptioneller Entwurf (Verteilungsentwurf) Logischer Entwurf Datendefinition Physischer Entwurf (Implementierung & Wartung) 9

10 Eigenschaften der Entwurfsschritte Anforderungen an jeden Entwurfsschritt: E 1. Informationserhaltung In jeder nachfolgenden Phase werden dieselben Informationen dargestellt, wenn auch detaillierter und konkreter. 2. Konsistenzerhaltung Alle in einer Phase spezifizierten Regeln und Einschränkungen sind für die nachfolgenden Phasen verbindlich. 10

11 Anforderungsanalyse E Ausgangsbasis: Situationen und Sachverhalte eines Ausschnitts der realen Welt Vorgehensweise: Sammlung des Informationsbedarfs Bestimmung der relevanten Informationen Ergebnis: Informale Beschreibung des Fachproblems (z.b. Texte, Tabellen etc., eventuell in Pflichtenheft) Wichtige Unterscheidung: Information über Daten -> Diese Vorlesung Information über Funktionen -> Softwaretechnik 11

12 Konzeptioneller Entwurf E Erste formale Beschreibung des Fachproblems Vgl. Spezifikationsphase der Software-Entwicklung. Sprachmittel: Semantisches Datenmodell Ergebnis: Semantisches oder konzeptuelles Schema, z.b. als (E)ER-Diagramm oder als diagramm. Randbedingung: Semantisches Modell ist noch unabhängig von speziellem Datenmodell eines Datenbanksystems. Andererseits: Übergang zu den Datenmodellen der Datenbanksysteme soll einfach sein. 12

13 Logischer Entwurf Institut für Programmstrukturen und Datenorganisation (IPD) E (Automatische) Übersetzung des semantischen Schemas in logisches Schema, das Datenmodell des ausgewählten Realisierungs -DBMS Z.B. (E)ER in Relationenmodell Verbesserung des Datenbankschemas anhand von Gütekriterien wie Redundanzvermeidung. Z.B. Normalisierung des relationalen Schemas (relationaler Entwurf) 13

14 Datendefinition Institut für Programmstrukturen und Datenorganisation (IPD) E Umsetzung des logischen Schemas in Sprache einer eines realen DBMS Realisierung der Integritätssicherung durch Sprachkonstrukte des DBMS Definition der Benutzersichten Abwägung wie intensiv die speziellen Möglichkeiten des DBMS ausgenutzt werden sollen: Verbleiben im Standard ( Portierbarkeit) Ausnutzung von Besonderheiten ( Effizienz) 14

15 Physischer Entwurf Institut für Programmstrukturen und Datenorganisation (IPD) E Klärung von Fragestellungen, die mit Leistungsoptimierung hinsichtlich der speziellen Anwendung zu tun haben. Möglichkeiten: Parametereinstellungen Auswahl von Implementierungstechniken Beispiele: Beschreibungen der physischen Datenorganisation Etablierung von Indexstrukturen 15

16 Institut für Programmstrukturen und Datenorganisation (IPD) Überblick über dieses Kapitel Datenbankentwurf Semantik von E 16

17 E Ein Datenbankmodell legt fest statische Eigenschaften für a) Objekte, b) inklusive der Standard-Datentypen, die Daten über die und Objekte darstellen können, 2. dynamische Eigenschaften für a) Operationen, b) zwischen Operationen, 3. Integritätsbedingungen für a) Objekte b) Operationen 17

18 E Entity-Relationship-Modelle Ursprung: P. P. Chen, 1976 Entity: Objekt, über das Informationen zu speichern sind, z. B. Vorlesung, Buch, Lehrperson; auch Informationen über Ereignisse: Prüfungen; Relationship: Beziehung zwischen Entities, z. B. eine Lehrperson hält eine Vorlesung, Attribut: Eigenschaft von Entities oder, z. B. die ISBN eines Buchs, der Titel einer Vorlesung, Semester, in dem Vorlesung gehalten wird. 18

19 Ein einfaches Beispiel Institut für Programmstrukturen und Datenorganisation (IPD) Titel Zeitplan E Professor Name Fach Telefon # Iiest Semester Autor Titel Vorlesung Empfehlung Buch ISBN 19

20 ierungskonzepte I E Im folgenden Vorstellung der Modellierungskonzepte des s. Werte: (int) der Wertebereich Z (die ganzen Zahlen) mit +,,,, =, <, (string) der Wertebereich C* (Folgen von Zeichen aus der Menge C) mit +, =, <,... Allgemein: (D) Interpretation von D, mögliche Werte einer Entity-Eigenschaft. 20

21 E ierungskonzepte II Entities:, etwa E1, E2 E (E) Menge der möglichen Entities vom Typ E; wird hier nicht festgelegt (etwa Menge isomorph zu natürlichen Zahlen), 21

22 E ierungskonzepte III Entities:, etwa E1, E2 E i (E) Menge der aktuellen Entities vom Typ E in einem Zustand i (, Sigma, für state (Zustand); Index i im folgenden weglassen, wenn eindeutig.) Aktuelle Entities müssen mögliche Elemente sein: (E) (E); ferner gefordert: (E) endlich. 22

23 E ierungskonzepte IV : Beziehungstypen Notation n-stelliger Beziehungstypen: E 1 R E I E n 23

24 ierungskonzepte V E mögliche Ausprägungen: (R) = (E 1 )... (E n ) aktuelle nur zwischen aktuellen Entities: (R) (E 1 )... (E n ) 24

25 ierungskonzepte VI E Textuelle Notation: R(E 1,, E n ) Rollennamen: verheiratet(frau:person, Mann:Person) Reihenfolge (verheiratet(person,person)) wäre ausreichend für Festlegung, wer Mann und wer Frau, aber fehleranfällig. Stattdessen Rollennamen. In Grafik entspr. Beschriftung der Kanten. 25

26 ierungskonzepte VII Attribute: E E A : D Semantik einer Attributdeklaration: Ein Attribut A eines E ist im Zustand eine Abbildung (A): (E) (D) Anders ausgedrückt: Attributwert eines Entities abhängig vom Zustand. Attributwerte nur für aktuelle Entities. 26

27 ierungskonzepte VIII Beziehungsattribute: E Semantik: (A): (R) (D) Textuelle Notation für mit Attributen: E(A 1 : D 1,..., A m : D m ) (Wertebereiche werden oft weggelassen) für Beziehungstypen mit Attributen: R(E 1,..., E n ; A 1,..., A p ) R A : D 27

28 Semantik eines ER-Schemas E Jeder Zustand eines ER-Schemas ist eine Zuordnung E (E) (E) R(E 1,..., E n ;...) (R) (E 1 )... (E n ) E(..., A i : D,...) (A i ): (E) (D),... R(...;..., A i : D,...) (A i ): (R) (D),... bei gegebener fester Interpretation der Datentypen durch Wertebereiche und der durch vorgegebene Mengen möglicher Entities. 28

29 E Institut für Programmstrukturen und Datenorganisation (IPD) Zwei- vs. mehrstellige I Dreistellige Beziehung: Professor Name Fach Titel empfiehlt ISBN Vorlesung Buch 29

30 E Institut für Programmstrukturen und Datenorganisation (IPD) Zwei- vs. mehrstellige II Mögliche Umwandlung in zweistellige wirklich das gleiche modelliert? Professor Name Fach P-V P-B Titel Vorlesung V-B Buch ISBN 30

31 E Institut für Programmstrukturen und Datenorganisation (IPD) Ausprägungen im Beispiel I Korrekte Ausprägung der dreistelligen Beziehung. empfiehlt Professor Vorlesung ISBN Heuer DB Heuer DB Saake DB Saake DB Ausprägungen der drei 2-stelligen : P-V Professor Heuer Heuer Saake Saake Vorlesung DB1 DB2 DB1 DB2 P-I Professor ISBN Heuer Heuer Saake V-I Vorlesung ISBN DB DB DB

32 Ausprägungen im Beispiel II E Ausprägungen der drei 2-stelligen Beziehungstypen P-V Professor Heuer Heuer Saake Saake Vorlesung DB1 DB2 DB1 DB2 entsprechen aber auch: P-I Professor ISBN Heuer Heuer Saake V-I Vorlesung ISBN DB DB DB Professor Vorlesung ISBN Heuer DB Heuer DB Heuer DB Saake DB Saake DB

33 E Ausprägungen im Beispiel III Jetzt außerdem möglich: P-V Professor Heuer Heuer Saake Saake Vorlesung DB1 DB2 DB1 DB2 P-I Professor ISBN Heuer Heuer Saake V-I Empfehlung für Buch liegt vor, ohne zu sagen, von wem Vorlesung ISBN DB DB DB DB

34 Funktionale E Textuell: R: E 1 E 2 Graphisch: Professor Fach Telefon# Name sitzt-in Zimmer Zimmer # Gebäude Jedem Professor lässt sich maximal ein Zimmer zuordnen, nicht aber umgekehrt. Bedeutung: (R): (E 1 ) (E 2 ) 34

35 Identifizierung durch I E Für Entity-Typ E(A 1,..., A m ) sei Teilmenge {S 1,..., S k } der Attribute gegeben, die attribute. Es gilt: {S 1,..., S k } {A 1,..., A m } In jedem Datenbankzustand identifizieren die aktuellen Werte der attribute eindeutig Instanzen des Entity-Typs E: e 1, e 2 (E): ( (S 1 )(e 1 ) = (S 1 )(e 2 )... (S k )(e 1 ) = (S k )(e 2 )) (e 1 = e 2 ) Notation: Markieren durch Unterstreichung: E(..., S 1,..., S i,...) 35

36 Identifizierung durch II E vs. kandidaten. Beispiel: Buch(ISBN, Titel, Autor, Verlag, Preis, Erscheinungsjahr), Buch(ISBN, Titel, Autor, Verlag, Preis, Erscheinungsjahr) Eine ausgewählte Alternative ist Primärschlüssel. 36

37 Abhängige I Institut für Programmstrukturen und Datenorganisation (IPD) E Abhängiger Entity-Typ: Identifikation über funktionale Beziehung. Buch Exemplar InventarNr Ausleiher Rückgabe gehört-zu Buch Titel ISBN Szenario: Bibliothek Abhängige Entities im : funkt. Beziehung ist Bestandteil des. Jedem Exemplar lässt sich genau ein Buch zuordnen. 37

38 Abhängige II Alternative Notation. Institut für Programmstrukturen und Datenorganisation (IPD) E Buch Exemplar InventarNr Ausleiher Rückgabe N 1 gehört-zu Erläuterungen: N 1 bedeutet funktionale Beziehung in angegebener Richtung. InventarNr ist partieller. Buch Titel ISBN 38

39 Die IST-Beziehung I Institut für Programmstrukturen und Datenorganisation (IPD) E Prüfer IST Mitarbeiter Fach Personal # Jeder Prüfer-Instanz Institut ist genau einer Mitarbeiter-Instanz zugeordnet: Spezialfall eines abhängigen Entity-Typs. (Nur Beziehung ist ; zwei Prüfer, die gleichem Mitarbeiter zugeordnet sind, sind identisch.) 39

40 Die IST-Beziehung II Institut für Programmstrukturen und Datenorganisation (IPD) E Prüfer IST Mitarbeiter Fach Institut Personal # Nicht jeder Mitarbeiter ist zugleich Prüfer. Englisch: is-a, Spezialisierungsbeziehung. 40

41 Die IST-Beziehung III Institut für Programmstrukturen und Datenorganisation (IPD) E Prüfer IST Mitarbeiter Fach Was ist, wenn ein Mitarbeiter mehrere Fächer prüft? Institut Personal # 41

42 Die IST-Beziehung IV Institut für Programmstrukturen und Datenorganisation (IPD) E Prüfer IST Mitarbeiter Fach Attribute des Entity-Typs Mitarbeiter treffen auch auf Prüfer zu: vererbte Attribute. Prüfer(Name, Personal#, Fach) von Mitarbeiter Nicht nur Deklarationen vererben sich, auch aktuelle Werte. Bedeutung: (Prüfer) (Mitarbeiter) Institut Personal # 42

43 Die IST-Beziehung: Alternative Notation E Prüfer Fach Mitarbeiter Institut Personal # 43

44 Motivation E Man will einschränken, an wievielen Entität teilnehmen kann/muß. Quantitative Aussagen hilfreich/sinnvoll. Beispiel: Fußballmannschaft besteht aus 11 Spielern. Zwei alternative Notationen: Standardkardinalität, Teilnehmerkardinalität 44

45 Teilnehmerkardinalität I Institut für Programmstrukturen und Datenorganisation (IPD) E Mannschaft besteht-aus [11, 11] bestehtaus [1, 1] Mannschaft Spieler FCB Kahn FCB Ballack VfB Meira Spieler 45

46 Teilnehmerkardinalität II Weitere Beispiele: Institut für Programmstrukturen und Datenorganisation (IPD) E Klasse Lehrer [28, 35] bestehtaus [1, 1] [4, 8] unterrichtet [7, 10] Was bedeutet das Zweite? Schüler Klasse 46

47 Teilnehmerkardinalitäten III E [min_1, max_1] [min_n, max_ n] R E 1 Notation für Kardinalitätsangaben an einem Beziehungstyp: R(E 1,..., E i [min i, max i ],..., E n ) Kardinalitätsbedingung: min i {r r R r.e i =e j } max i Spezielle Wertangabe für max i ist. Standardannahme ist [0, *] E n 47

48 Teilnehmerkardinalität Beispiele E arbeitet_in(mitarbeiter[0,1],raum[0,3]) Jedem Mitarbeiter ist in der Regel ein Raum zugeordnet, aber einige (externe) Mitarbeiter haben kein Arbeitszimmer. Pro Zimmer arbeiten maximal drei Mitarbeiter. benutzt(mitarbeiter[0,*],rechner[1,1]) Jedem Rechner ist genau ein Mitarbeiter zugeordnet. Jeder Mitarbeiter benutzt beliebige Rechner. 48

49 Übersicht und (Partielle) Funktionale Beziehung: E E 1 ( Einem E 1 ist max. ein E 2 zugeordnet, jedem E 2 beliebige E 1. ) Abhängiger Entity-Typ (totale funktionale Beziehung): E 1 ( Jedem E 1 ist genau ein E 2 zugeordnet, jedem E 2 beliebige E 1. ) IST-Beziehung (Spezialfall vom abhängigem Entity-Typ): E 1 R R IST E 2 E 2 E 2 R(E 1 [0, 1], E 2 [0, *]) R(E 1 [1, 1], E 2 [0, *]) R(E 1 [1, 1], E 2 [0, 1]) ( Jedem E 1 ist genau ein E 2 zugeordnet, jedem E 2 max. ein E 1. ) 49

50 Standardkardinalität I Institut für Programmstrukturen und Datenorganisation (IPD) E Mannschaft 1 bestehtaus 11 Spieler Kardinalitätsangabe genau 'andersherum' wie bei der Teilnehmerkardinalität Anschaulich: Eine Mannschaft steht mit 11 Spielern in Beziehung. 50

51 Vereinfachte Kardinalitätsangaben Für binären Beziehungstyp: E E_1 ist äquivalent zu E_1 1 N R [0, *] [1, 1] R Die Angabe N entspricht. E_2 E_2 Nicht dasselbe wie funktionale Beziehung: E_1[0, *] -> E_2[0, 1] 51

52 Standardkardinalität II Institut für Programmstrukturen und Datenorganisation (IPD) E Mannschaft 1 bestehtaus 11 In der Literatur auch: 'lookup constraint' Wie kommt die Kardinalitätsangabe zu einer an der Beziehung beteiligten Entität E1 zustande? Instanzen der anderen an Beziehung beteiligten Entities fixieren. Wieviele Instanzen von E1 stehen hiermit in Verbindung? Spieler 52

53 Standardkardinalität III Institut für Programmstrukturen und Datenorganisation (IPD) E Mannschaft Beispiele: 1 bestehtaus 11 Spieler Spieler fixieren (genau) eine Mannschaft Kardinalitätsangabe 1. dto. Mannschaft 11 Spieler. 53

54 Spezielle Kardinalitätsangaben E Bezeichnungen für spezielle Kardinalitätsangaben: m:n-beziehung, 1:n-Beziehung, 1:1-Beziehung. 54

55 E Institut für Programmstrukturen und Datenorganisation (IPD) Standard- vs. Teilnehmerkardinalität Anderswo auch Intervallangaben für Standardkardinalität. In dieser Vorlesung: Teilnehmerkardinalität Intervallangaben in eckigen Klammern. Standardkardinalität eine Zahl bzw. Konstante. In Prüfung bitte explizit angeben, welche Notation Sie verwenden. Standard- und Teilnehmerkardinalität unterscheiden sich in den Ausdrucksmöglichkeiten nur bei mehrwertigen. 55

56 E Weitere Überlegungen I Dreistellige Beziehung: Professor Fach Name (Teilnehmerkard.) [1; 3] Titel empfiehlt ISBN Vorlesung Buch Keine Aussage möglich, wie Buch-Empfehlungen sich auf Vorlesungen verteilen! 56

57 E Weitere Überlegungen II Dreistellige Beziehung: Professor Fach Name Jetzt Standard- Kardinalität. 1 Titel empfiehlt ISBN Vorlesung Buch Entity mit 1 an Kante von anderen Entities funktional abhängig. 57

58 Optionalität von Attributen Institut für Programmstrukturen und Datenorganisation (IPD) E Professor Name Fach Telefon # Iiest Semester Vorlesung Zeitplan Titel 58

59 E Weitere Konzepte I Strukturierte Attributwerte im Person Adresse Name Vorname Telefon # Straße Nummer Ort Mengenwertiges Attribut 59

60 E Weitere Konzepte II Abgeleitete Attributwerte im. Monatsgehalt Angestellter Gehaltsmonate Name Vorname Jahresgehalt Jahresgehalt = Monatsgehalt * Gehaltsmonate 60

61 Institut für Programmstrukturen und Datenorganisation (IPD) Überblick über dieses Kapitel Datenbankentwurf Semantik von E 61

62 Erweiterungen des s I E Spezialisierung und Generalisierung Spezialisierung entspricht IST-Beziehung: Prüfer Spezialisierung von Mitarbeiter. ( Prüfer ist stets Mitarbeiter. ) Prüfer IST Mitarbeiter Fach Personal # Institut 62

63 Erweiterungen des s II E Spezialisierung und Generalisierung (Forts.) Partitionierung: Spezialfall der Spezialisierung, mehrere disjunkte. Partitionierung von Büchern in Monographien und Sammelbändern. Monographie Sammelband IST IST Buch Anm.: Das ist keine richtige Partitionierung! 63

64 Erweiterungen des s III E Spezialisierung und Generalisierung (Forts.) Generalisierung: Entities in einen allgemeineren Kontext. Person oder Institut als Ausleiher. ( Ausleiher ist stets Person oder Institut ; Person muß kein Ausleiher sein.) Ausleiher hat nur Ausleiher-mäßige Attribute. 64

65 Erweiterungen des s IV E Komplexe Objekte Aggregierung: Entity aus einzelnen Instanzen anderer zusammengesetzt. Fahrzeug zusammengesetzt aus Motor, Karosserie,... Sammlung oder Assoziation: Mengenbildung. Team als Gruppe von Personen. 65

66 Erweiterungen des s V E höheren Typs Spezialisierung und Generalisierung auch für Beziehungstypen. Beispiel: Beziehung Ausleihe zu Kurzausleihe spezialisiert. zwischen Beziehungsinstanzen: zweiter und höherer Ordnung. 66

67 Institut für Programmstrukturen und Datenorganisation (IPD) Überblick über dieses Kapitel Datenbankentwurf Semantik von E 67

68 E Ein Erweitertes (EER) Übernommene Grundkonzepte des ER- Modells: Werte: Standard-Datentypen des s. Entities bzw.. bzw. Beziehungstypen. Attribute: unverändert. Funktionale : unverändert. : erweitertes Konzept, neue Notation. Nicht übernommen: IST-Beziehung ersetzt durch Typkonstruktor. Abhängige durch erweitertes konzept sowie objektwertige Attribute ersetzt. 68

69 notation im E E Buch Exemplar Ausleiher Rückgabe Nummer gehört-zu Buch Titel ISBN Anmerkung: veränderte notation erforderlich, da bei objektwertigen Attributen nicht mehr durch Unterstreichen darstellbar 69

70 Objektwertige Attribute im E I E Buch Titel ISBN Von: Ein objektwertiges Attribut kann sein: für den Entity-Typ, für den es deklariert wird, für den Entity-Typ, der Bildbereich des Attributes ist. BuchExemplar Nummer Ausleiher Rückgabe 70

71 Objektwertige Attribute im E II Buch BuchExemplar E Titel ISBN Exemplare: list Ein objektwertiges Attribut kann sein: für den Entity-Typ, für den es deklariert wird, für den Entity-Typ, der Bildbereich des Attributes ist. Nummer Ausleiher Rückgabe Alternativen zu list (Liste): set (Menge), bag (Multimenge) 71

72 E Typkonstruktor Ein einziges Modellierungskonzept für Spezialisierung / IST-Beziehung, Generalisierung, Partitionierung. Eingabetypen verbunden mit Basis des Dreiecks. Ausgabetypen verbunden mit Spitze. Eingabetypen bei Spezialisierung, Partitionierung: Der (oder die) allgemeinere(n) Typ(en). Eingabetypen bei Generalisierung: Die spezielleren Typen. 72

73 Allgemeiner Typkonstruktor E Ausgabetypen sind Spezialisierungen der Eingabetypen i (InTyp i ) j (OutTyp j ) InTyp InTyp n OutTyp 1 OutTyp n 73

74 Spezialisierung mit Typkonstruktor E Mitarbeiter Institut Personal # Spezialisierung (IST-Beziehung) notiert mit dem Typkonstruktor des EER- Modells. Prüfer Fach 74

75 Mehrfache Spezialisierung E Person Adresse Name Vorname Mitarbeiter ist eine spezielle Person Student ist eine spezielle Person beide erben die Attribute von Person Kann Person Mitarbeiter & Student sein? Mitarbeiter Student Zimmer MatrikelNr. 75

76 Mehrfachspezialisierung Institut für Programmstrukturen und Datenorganisation (IPD) E Person Adresse Name Vorname Mitarbeiter Student Zimmer MatrikelNr. Mehrfachspezialisierung zu StudHilfskraft: (StudHilfskraft) (Student) (Mitarbeiter) Mehrfachspezialisierungen sind nur erlaubt, wenn die Eingabe-Typen direkt oder indirekt aus einer gemeinsamen Ausgangsklasse konstruiert wurden. StudHilfskraft Stundenzahl 76

77 Generalisierung I Institut für Programmstrukturen und Datenorganisation (IPD) E LKW PKW Kennzeichen Nutzlast Verantwortlicher Stellplatz Kennzeichen #Personen Verantwortlicher Stellplatz 77

78 Generalisierung II Institut für Programmstrukturen und Datenorganisation (IPD) LKW Kennzeichen E Nutzlast PKW #Personen Kennzeichen Fahrzeug Verantwortlicher Stellplatz Eigenschaften dieser Modellierung: Weniger fehleranfällig, unübersichtlich. Beispiel: Fahrzeug ist Generalisierung von LKW, PKW Warum nicht Mehrfachspezialisierung? 78

79 E Generalisierung III Notation: Typkonstruktor für Generalisierung. In Typ 1 In Typ n Out Typ Bedeutung: i (InTyp i ) (OutTyp) 79

80 Beispiel für Generalisierung E Mitarbeiter Personal # Institut Institut Warum ist hier Generalisierung besser als mehrfache Spezialisierung? Ausleiher berechtigt-bis Institutsname 80

81 Partitionierung I Institut für Programmstrukturen und Datenorganisation (IPD) E Bücher ISBN Monographien Thema Sammelbände Autorenliste Beispiel: Bücher können Monographien oder Sammelbände sein, aber auch etwas ganz anderes 81

82 Partitionierung II Institut für Programmstrukturen und Datenorganisation (IPD) E Semantik: In Typ Teilmengenbeziehung: (InTyp) i (OutTyp i ) Disjunktheit der Partitionen: i, j: i j (OutTyp i ) (OutTyp j )= Out Typ 1 Out Typ n 82

83 Totale Partitionierung Institut für Programmstrukturen und Datenorganisation (IPD) E Ist die totale Partitionierung hier sinnvoll? Ausleiher Ausleiher-ID berechtigt-bis = Mitarbeiter Personal # Institut Institut Institutsname Mengenbeziehung hier: (InTyp) = i (OutTyp i ) 83

84 Partitionierung vs. Spezialisierung E Partitionierung: Buch ISBN Titel Verlag Mehrfache Spezialisierung: Person Name Vorname Monographie Autor Sammelband Herausgeber Mitarbeiter Zimmer Student Adresse MatrikelNr. 84

85 Partitionierung vs. Generalisierung I E Dokument DokID Titel Standort a) Partitionierung Dokument DokID Titel Buch ISBN Autor Zeitschrift Jahrgang ISSN Buch ISBN Autor Zeitschrift Standort b) Generalisierung Jahrgang ISSN 86

86 Partitionierung vs. Generalisierung II E Fortsetzung des Beispiels: Partitionierung es gibt Dokumente, die weder Buch noch Zeitschrift sind. (Z. B. Video); Generalisierung Nicht jedes Buch muß Dokument sein. Hier im Beispiel Dokument muß in Bibliothek vorhanden sein. Man beachte die im vorangegangenen Beispiel. 87

87 Partitionierung vs. Generalisierung III E Vergleich: Partitionierung: (Dokument) (Buch) (Zeitschrift) Generalisierung: (Dokument) (Buch) (Zeitschrift) 88

88 Diskussion Institut für Programmstrukturen und Datenorganisation (IPD) E Warum überhaupt? Historische Entwicklung, didaktische Gründe. Darstellung, daß es mehrere Modelle mit unterschiedlichen Daseinsberechtigungen geben kann. 89

89 Institut für Programmstrukturen und Datenorganisation (IPD) Überblick über dieses Kapitel Datenbankentwurf Semantik von E 90

90 Objektorientierte Entwurfsmodelle E Seit Beginn der 90er Jahre: Ansätze zur objektorientierten Analyse und zum objektorientierten Entwurf. Ansätze der ersten Generation: Object Modelling Technique (OMT) von Rumbaugh Methoden von Jacobson, Booch, u.a. Ab Mitte der 90er Jahre: Vereinheitlichung zur Unified Modeling Language () (Booch, Jacobson, Rumbaugh). 91

91 E Entwurf mit I Bestandteile der Modellierung: Objektmodell: Anreicherung von Een um objektorientierte Konzepte (Unterstützte Konzepte:,, Generalisierung, Aggregation, statische Integritätsbedingungen, abgeleitete Informationen). Außerdem: Methoden, Modellierung von Objekt-Instanzen. Dynamikmodell: Beschreibung des dynamischen Verhaltens eines Objektes in Form von Übergangsautomaten (Übergänge entsprechen Systemereignissen). 92

92 Entwurf mit II Institut für Programmstrukturen und Datenorganisation (IPD) E Bestandteile der Modellierung (Fortsetzung): Funktionenmodell: Datenflußdiagramme zur Darstellung globaler Berechnungsabläufe (elementare Konzepte: Datentransformation, agierende Objekte, Datenspeicher), Anwendungsfälle, Implementierungsdiagramme, weitere hier nicht genannte. 93

93 E Objektmodell von Geht über E hinaus hier insbesondere wichtig: diagramm: Entspricht Datenbankschema-Notation, ~> beschreibt Typen von Kollektionen von Instanzen. Objektdiagramm: Beschreibt Einzelobjekte. Beschreibung von strukturellen Aspekten (Attribute, ) und Operationen. Formulierung von Integritätsbedingungen und Ableitungsregeln (textuell, Object Constraint Language). 95

94 Darstellung von I Institut für Programmstrukturen und Datenorganisation (IPD) E Attribute name: typ = initwert { Zusicherung } Beispiel: Alter: integer = 0 {Alter >= 0 and Alter < 125} Operationen name(parameterliste) 96

95 E Darstellung von II Verschiedene Arten von, speziell abstrakte (Notation: { abstract }), Metaklassen und parametrisierte. Sichtbarkeit von Attributen (private, protected, public) sowie readonly-attribute. Abgeleitete (berechnete) Attribute durch vorangestelltes /-Symbol. attribute durch Unterstreichung. 97

96 E I Standardfall: Binäre (Assoziationen) Professor name:string fach:string telefonnr:number = 4242 * ist zugeordnet 1 Lehrkraft beschäftigt Lehreinheit Institut name:string fachbereich:string Bezeichner der Beziehung mit Leserichtung (keine funktionale Beziehung), Rollennamen für Implementierung von Referenzattributen. 98

97 II Institut für Programmstrukturen und Datenorganisation (IPD) E Fortsetzung: analog zu Standardkardinalitäten ( 1 Institut beschäftigt Professoren. ). Auch Angaben 0..1 oder 0..3 möglich, sowie zusammengesetzte Angaben wie z.b. 0..2, 6, 10..*. 99

98 E mit Attributen mit Attributen als degenerierte. 100

99 E Qualifizierende Zugriffsschlüssel für spätere Implementierung. 101

100 Weitere Institut für Programmstrukturen und Datenorganisation (IPD) E Abgeleitete Beispiel: berechnete Referenz zur Abkürzung mehrstufiger Referenzpfade. Notation: Bezeichner mit vorangestelltem /-Symbol. n-stellige Notation wie im durch Raute. 102

101 E Aggregation in I Aggregation über binäre Assoziation mit besonderer Notation. Ganzes Komposition: Abhängige Objekte als Spezialfall. Ganzes 0..1 besteht aus * 1..1 besteht aus * Teil existenzabhängiges Teil 103

102 Aggregation in II Aggregation Institut für Programmstrukturen und Datenorganisation (IPD) E PC Monitor Drucker Maus Tastatur Tower Schnittstelle Hauptplatine CD Laufwerk Komposition Diskettenlaufwerk Festplatte Gehäuse Tower existenzabhängig von PC, Drucker jedoch nicht. 105

103 E Aggregation in III Baumdarstellung für mehrere aggregierte Teile. Ganzes 1..* * Teil A Teil B Teil C 106

104 E Spezialisierung in I Spezialisierung mit Vererbung. Unterklasse A Oberklasse Angabe von Zusicherungen (overlapping, disjoint, complete, incomplete) möglich. Unterklasse B 107

105 E Beispiel: Spezialisierung in II {disjoint} A {incomplete} {overlapping} {overlapping} B C D E 108

106 Spezialisierung mit Diskriminator I E Geschlecht Person Status Mann Frau Professor Student Diskriminator Begriff Spezialisierung hat hier andere, allgemeinere Bedeutung als im EER- Kontext steht für alle semantischen. 109

107 E Spezialisierung mit Diskriminator II Spezielle Form der Spezialisierung. Aufzählungsattribut (Diskriminator) teilt Instanzen in Unterklassen auf. Wertebereich des Diskriminators: Beteiligte namen. Unterklasse A Oberklasse Diskriminator Unterklasse B 110

2. Datenbankmodelle für den Entwurf

2. Datenbankmodelle für den Entwurf 2. Datenbankmodelle für den Entwurf Grundlagen von Datenbankmodellen Entity-Relationship-Modelle Objektorientierte Modelle: UML VL Datenbanken I 2 1 Grundlagen von Datenbankmodellen Begriff Datenbankmodell

Mehr

Teil III Entity-Relationship-Modell

Teil III Entity-Relationship-Modell Teil III Entity-Relationship-Modell Entity-Relationship-Modell 1 Datenbankmodell 2 ER-Modell 3 Weitere Konzepte im ER-Modell Sattler / Saake Datenbanksysteme Letzte Änderung: Okt. 2016 3 1 Lernziele für

Mehr

Datenmodelle. Einführung in das Entity-Relationship-Modell. Datenbankmodelle. Beispiel für ein ER-Schema. Kunde( Meier, , ) 41, Meier

Datenmodelle. Einführung in das Entity-Relationship-Modell. Datenbankmodelle. Beispiel für ein ER-Schema. Kunde( Meier, , ) 41, Meier Einführung in das Entity-Relationship-Modell Datenmodelle Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation Grundbestandteile von

Mehr

Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation

Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation Einführung in das Entity-Relationship-Modell Datenmodelle Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation Grundbestandteile von

Mehr

Datenbanken 1. Kapitel 2: Datenbankentwurf. Ansprechpartner hat Name Adresse. Geschaeftspartner <pi> Characters (30) Characters (50) ist.

Datenbanken 1. Kapitel 2: Datenbankentwurf. Ansprechpartner hat Name Adresse. Geschaeftspartner <pi> Characters (30) Characters (50) ist. Datenbanken 1 Kapitel 2: Datenbankentwurf Ansprechpartner hat Name Adresse Geschaeftspartner Characters (30) Characters (50) ist Haendler Rabatt Integer Spediteur Verfuegbar Characters (20) Kunde

Mehr

Rückblick: Entity-Relationship-Modell

Rückblick: Entity-Relationship-Modell Rückblick: Entity-Relationship-Modell Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben

Mehr

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

Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt 2. Datenbankentwurf Motivation Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt Fehler sind umso teurer zu beheben, je weiter die Entwicklung bzw. der Einsatz

Mehr

Kapitel DB:IV (Fortsetzung)

Kapitel DB:IV (Fortsetzung) Kapitel DB:IV (Fortsetzung) IV. Logischer Datenbankentwurf mit dem relationalen Modell Das relationale Modell Integritätsbedingungen Umsetzung ER-Schema in relationales Schema DB:IV-45 Relational Design

Mehr

Kapitel DB:IV (Fortsetzung)

Kapitel DB:IV (Fortsetzung) Kapitel DB:IV (Fortsetzung) IV. Logischer Datenbankentwurf mit dem relationalen Modell Das relationale Modell Integritätsbedingungen Umsetzung ER-Schema in relationales Schema DB:IV-46 Relational Design

Mehr

2. Relationale Datenbanken

2. Relationale Datenbanken 2. Relationale Datenbanken Inhalt 2.1 Entity-Relationship-Modell 2.2 Relationales Modell 2.3 Relationale Entwurfstheorie 2.4 Relationale Algebra 2.5 Structured Query Language (SQL) 2 2.1 Entity-Relationship-Modell

Mehr

Kapitel DB:III (Fortsetzung)

Kapitel DB:III (Fortsetzung) Kapitel DB:III (Fortsetzung) III. Konzeptueller Datenbankentwurf Einführung in das Entity-Relationship-Modell ER-Konzepte und ihre Semantik Charakterisierung von Beziehungstypen Existenzabhängige Entity-Typen

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme ER-Modellierung M. Lange, S. Weise Folie #3-1 ER-Modellierung Wiederholung - Drei-Ebenen-Schema-Architektur - ANSI-SPARC-Architektur - Fünf-Schichten-Architektur ER-Modellierung

Mehr

Kommunikation und Datenhaltung

Kommunikation und Datenhaltung Kommunikation und Datenhaltung von ER-Modellen auf das Relationenmodell Überblick über den Datenhaltungsteil Einleitung Motivation und Grundlagen Architektur von Datenbanksystemen Datenbankanfragen Relationenmodell

Mehr

Kapitel DB:III (Fortsetzung)

Kapitel DB:III (Fortsetzung) Kapitel DB:III (Fortsetzung) III. Konzeptueller Datenbankentwurf Einführung in das Entity-Relationship-Modell ER-Konzepte und ihre Semantik Charakterisierung von Beziehungstypen Existenzabhängige Entity-Typen

Mehr

Kapitel 6: Das E/R-Modell

Kapitel 6: Das E/R-Modell Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2013/2014 Vorlesung: Prof. Dr. Christian Böhm Übungen:

Mehr

Rückblick: Datenbankentwurf

Rückblick: Datenbankentwurf Rückblick: Datenbankentwurf Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben Gegenstände

Mehr

Teil IV Datenbankentwurf

Teil IV Datenbankentwurf Teil IV Datenbankentwurf Datenbankentwurf 1 Phasen des Datenbankentwurfs 2 Weiteres Vorgehen beim Entwurf 3 Kapazitätserhaltende Abbildungen 4 ER-auf-RM-Abbildung Sattler / Saake Datenbanksysteme Letzte

Mehr

3. Relationales Modell & Algebra

3. Relationales Modell & Algebra 3. Relationales Modell & Algebra Inhalt 3.1 Relationales Modell Wie können wir Daten mathematisch formal darstellen? 3.2 Übersetzung eines konzeptuellen Modells Wie können wir ein konzeptuelles Modell

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur : Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Kapitel 3: Datenbanksysteme : PDDr. Peer

Mehr

DB-Entwurf im ER-Modell

DB-Entwurf im ER-Modell DB-Entwurf im 1 Datenbankentwurf 2 Datenbankmodell 3 4 Erweiterungen des s 5 Weiteres Vorgehen beim Entwurf Sattler / Saake Datenbanksysteme Wintersemester 2006/7 4 1 Datenbankentwurf Entwurfsaufgabe Datenhaltung

Mehr

5. Datenbankentwurf. Entwurfsaufgabe. Phasenmodell. Konzeptioneller Entwurf. ER-Abbildung auf andere Datenbankmodelle

5. Datenbankentwurf. Entwurfsaufgabe. Phasenmodell. Konzeptioneller Entwurf. ER-Abbildung auf andere Datenbankmodelle 5. Datenbankentwurf Entwurfsaufgabe Phasenmodell Konzeptioneller Entwurf ER-Abbildung auf andere Datenbankmodelle Andreas Heuer, Gunter Saake Datenbanken I 5-1 Anforderungen an Entwurfsprozeß Informationserhalt

Mehr

Medizininformatik Software Engineering

Medizininformatik Software Engineering Vorlesung Software Engineering Inhaltsverzeichnis 1. Einleitung 2. Software und Medizinprodukt 3. Vorgehensmodelle 4. Strukturierter Entwurf von Echtzeitsystemen 4.1 Echzeit, was ist das? 4.2 Einführung

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2008 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

3. Relationales Modell & Algebra

3. Relationales Modell & Algebra 3. Relationales Modell & Algebra Inhalt 3.1 Relationales Modell Wie können wir Daten mathematisch formal darstellen? 3.2 Übersetzung eines konzeptuellen Modells Wie können wir ein konzeptuelles Modell

Mehr

5.2 Entity-Relationship-Modell

5.2 Entity-Relationship-Modell 5.2 Entity-Relationship-Modell Mod-5.8 Entity-Relationship-Modell, ER-Modell (P. Chen 1976): Kalkül zur Modellierung von Aufgabenbereichen mit ihren Objekten, Eigenschaften und Beziehungen. Weitergehende

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2018 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

Datenbankentwurf. Kapitel 3. Datenbankentwurf 76 / 508

Datenbankentwurf. Kapitel 3. Datenbankentwurf 76 / 508 Kapitel 3 Datenbankentwurf 76 / 508 Phasen des Datenbankentwurfs Phasen des Datenbankentwurfs Anforderungsanalyse Spezifikation Konzeptueller Entwurf Konzeptuelles Schema Logischer Entwurf Logisches Schema

Mehr

Datenorientierter Ansatz. Datenbankentwurfsschritte. Welche Daten müssen im System verwaltet werden? Wie werden die Daten im System verändert?

Datenorientierter Ansatz. Datenbankentwurfsschritte. Welche Daten müssen im System verwaltet werden? Wie werden die Daten im System verändert? .RQ]HSWLRQHOOHU'DWHQEDQNHQWZXUI Datenorientierter Ansatz Welche Daten müssen im System verwaltet werden? Wie werden die Daten im System verändert? Datenbankentwurfsschritte Datenverarbeitungsanforderungen

Mehr

Das Entity-Relationship-Modell. Prof. Dr. T. Kudraß 1

Das Entity-Relationship-Modell. Prof. Dr. T. Kudraß 1 Das Entity-Relationship-Modell Prof. Dr. T. Kudraß 1 Datenmodell Datenmodelle System von Konzepten zur abstrakten Darstellung eines Ausschnitts der realen Welt mittels Daten Verschiedene Abstraktionsebenen

Mehr

3. Relationales Modell

3. Relationales Modell 3. Relationales Modell entwickelt von Codd (1970) beruht auf dem mathematischen Begriff der Relation, den man anschaulich mit dem der Begriff Tabelle vergleichen kann alle Informationen sind in Relationen

Mehr

Datenbanksysteme: Entwurf

Datenbanksysteme: Entwurf Wichtigste Themen hier: Datenbanksysteme: Entwurf DB Entwurf ist in der Regel eingebettet in ein größeres Projekt: siehe Informationssysteme Die Daten dienen einem Zweck und sind dennoch universell nutzbar:

Mehr

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1 Fundamentals of Software Engineering 1 Inhaltsverzeichnis 1. Einführung 2. Allgemeine Modellbildung - Klassische Konzepte des Software Engineering- 2.1 Das Kontextmodell 2.2 Entscheidungstabellen 2.3 Zustandsmodelle

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Relationaler Datenbankentwurf II Vorlesung Datenbankmanagementsysteme Relationaler Datenbankentwurf II M. Lange, S. Weise Folie #6-1 Wiederholung Relationaler Datenbankentwurf

Mehr

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

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 Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 06. Nov. 2009 Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 2 Aufgabe 1: ER-Modellierung 1. Siehe Unterstreichungen in

Mehr

Entwurfsaufgabe. 4. Datenbankentwurf. Anforderungsanalyse. Phasenmodell. Entwurfsaufgabe

Entwurfsaufgabe. 4. Datenbankentwurf. Anforderungsanalyse. Phasenmodell. Entwurfsaufgabe 4. Datenbankentwurf Entwurfsaufgabe Entwurfsaufgabe Phasenmodell Konzeptioneller Entwurf ER-bbildung auf andere Datenbankmodelle Datendefinitionssprachen nforderungen an Entwurfsprozeß Informationserhalt

Mehr

Entwurfsaufgabe Phasenmodell Konzeptioneller Entwurf ER-Abbildung auf andere Datenbankmodelle Datendefinitionssprachen

Entwurfsaufgabe Phasenmodell Konzeptioneller Entwurf ER-Abbildung auf andere Datenbankmodelle Datendefinitionssprachen 4. Datenbankentwurf Entwurfsaufgabe Phasenmodell Konzeptioneller Entwurf ER-bbildung auf andere Datenbankmodelle Datendefinitionssprachen VL Datenbanken I 4 1 Entwurfsaufgabe nforderungen an Entwurfsprozeß

Mehr

Kapitel 6: Das E/R-Modell

Kapitel 6: Das E/R-Modell Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Dsteme Skript zur Dsteme I Wintersemester 2010/2011 Kap/R-Modell : PD Matthias Schubert Übungen: Thomas Bernecker,

Mehr

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1 Vorlesung 3 Fundamentals of Software Engineering 1 Inhaltsverzeichnis 1. Einführung 2. Allgemeine Modellbildung - Klassische Konzepte des Software Engineering- 2.1 Das Kontextmodell 2.2 Entscheidungstabellen

Mehr

Daten Bank. 2. Vorlesung. Dr. Karsten Tolle PRG2 SS 2014

Daten Bank. 2. Vorlesung. Dr. Karsten Tolle PRG2 SS 2014 Daten Bank 2. Vorlesung Dr. Karsten Tolle PRG2 SS 2014 Letzte Vorlesung Grundbegriffe SQL create table insert select Dr. Karsten Tolle PRG2 SS 2014 2 Heute Übersicht Modellierung (ER-Diagramme) Entitäten

Mehr

Abstraktionsebenen des Datenbankentwurfs

Abstraktionsebenen des Datenbankentwurfs Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 1. Konzeptuelle Ebene 2. Implementationsebene 3. Physische Ebene 1 Objektbeschreibung Uni-Angestellte - Anzahl: 1000 - Attribute PersonalNummer

Mehr

3. Objektorientierte Analyse

3. Objektorientierte Analyse 3. Objektorientierte Analyse 3. Systemanalyse Witzfrage (nach Booch 9): Welches ist der älteste Beruf: Arzt, Bauingenieur oder Systemanalytiker? Anforderungsanalyse Analyse Anforderungs- Ermittlung Anforderungs-

Mehr

Das konzeptionelle Datenmodell

Das konzeptionelle Datenmodell Das konzeptionelle Datenmodell Signifikanz der Datenmodellierung Anforderungsanalyse Effizienz der Anwendung. Redundanzfreiheit. Datenintegrität. Reibungsarme Umsetzung des Datenmodells in das physikalische

Mehr

Konzeptuelle Modellierung

Konzeptuelle Modellierung Kapitel 2 Konzeptuelle Modellierung 2.1 Das Entity-Relationship-Modell Die grundlegenden Modellierungsstrukturen dieses Modells sind die Entities (Gegenstände) und die Relationships (Beziehungen) zwischen

Mehr

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

PD Dr.-Ing. F. Lobeck. Seite 6 Seite 6 Datenbanken Datenbank: Eine geordnete Menge von Daten. Speicherung erfolgt unabhängig von speziellen Anwenderprogrammen. Ebenso sollte die Hardwareunabhängigkeit gesichert werden. Zu einem Datenbankmanagementsystem

Mehr

Einführung in die Datenorganisation. Informationssysteme

Einführung in die Datenorganisation. Informationssysteme Einführung in die Datenorganisation Informationssysteme Informationen Sind Kenntnisse über Sachverhalte Daten sind abgelegte Informationen Nachrichten sind Informationen zur Weitergabe Drei Betrachtungsebenen

Mehr

Datenbankentwurf. Abstraktionsebenen des Datenbankentwurfs. 1. Konzeptuelle Ebene. 2. Implementationsebene (Logische Ebene) 3.

Datenbankentwurf. Abstraktionsebenen des Datenbankentwurfs. 1. Konzeptuelle Ebene. 2. Implementationsebene (Logische Ebene) 3. Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 1. Konzeptuelle Ebene 2. Implementationsebene (Logische Ebene) 3. Physische Ebene 1 Objektbeschreibung Uni-Angestellte - Anzahl: 1000 - Attribute

Mehr

Vorlesung Informationssysteme

Vorlesung Informationssysteme Saarbrücken, 07.05.2015 Information Systems Group Vorlesung Informationssysteme Vertiefung zu Kapitel 3: Von (E)ER nach UML Erik Buchmann ([email protected]) Foto: M. Strauch Aus den Videos wissen

Mehr

Entwurf: Fortgeschrittene Konzepte

Entwurf: Fortgeschrittene Konzepte Bisher: Entwurf als grafisches Diagramm mit Entitätsmengen (auch weiche) Beziehungsmengen Attribute Assoziationstypen, Beziehungstypen und ausschließlich 2 stellige Beziehungen Extended / Enhanced (Erweitertes)

Mehr

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

Modellierungskonzepte semantischer Datenmodelle. Semantische Datenmodelle. Das Entity-Relationship Modell DEVO. Semantische Datenmodelle DEVO.4 Modellierungskonzepte semantischer Datenmodelle Äquivalente Begriffe: Objekttypenebene = Objektklassenebene = Schema (Schema-level), Objektebene = Exemplarebene (Instance-level)

Mehr

Vorlesung Informationssysteme

Vorlesung Informationssysteme Saarbrücken, 21.04.2015 Information Systems Group Vorlesung Informationssysteme Vertiefung zu Kapitel 2: ER-Modell Erik Buchmann ([email protected]) Wer hat noch keine Gruppe? Bitte im Q&A-Forum

Mehr

6.3 Entity-Relationship-Modell. Einführendes Beispiel

6.3 Entity-Relationship-Modell. Einführendes Beispiel 6.3 Entity-Relationship-Modell Entity-Relationship-Modell, ER-Modell (P. Chen 1976): Kalkül zur Modellierung von Aufgabenbereichen mit ihren Objekten, Eigenschaften und Beziehungen. Weitergehende Zwecke:

Mehr

Objektrelationale Datenbanken

Objektrelationale Datenbanken Objektrelationale Datenbanken Ein Lehrbuch von Can Türker, Gunther Saake 1. Auflage Objektrelationale Datenbanken Türker / Saake schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG dpunkt.verlag

Mehr

Entity Relationship Modell (ERM) (Konzeptueller Datenbankentwurf)

Entity Relationship Modell (ERM) (Konzeptueller Datenbankentwurf) Entity Relationship Modell (ERM) (Konzeptueller Datenbankentwurf) 10.02.14 Ahmad Nessar Nazar 1 Reale Welt Sie bekommen von einer Reifenhandels Firma den Zuschlag, eine Verwaltungsdatenbank zu entwerfen,

Mehr

Kapitel 5: Das E/R-Modell

Kapitel 5: Das E/R-Modell Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Vorlesung Wintersemester 2014/2015 Kapitel 5: Das E/R-Modell Vorlesung: PD Dr. Arthur Zimek

Mehr

Einführung in Datenbanken

Einführung in Datenbanken Einführung in Datenbanken Dipl.-Inf. Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik [email protected] Raum 2.202 Tel. 03943 / 659 338 1 Inhalt 1. Grundlegende Begriffe der Datenbanktechnologie

Mehr

Kapitel DB:III. III. Konzeptueller Datenbankentwurf

Kapitel DB:III. III. Konzeptueller Datenbankentwurf Kapitel DB:III III. Konzeptueller Datenbankentwurf Einführung in das Entity-Relationship-Modell ER-Konzepte und ihre Semantik Charakterisierung von Beziehungstypen Existenzabhängige Entity-Typen Abstraktionskonzepte

Mehr

Geoinformation Abbildung auf Tabellen

Geoinformation Abbildung auf Tabellen Folie 1 von 32 Geoinformation Abbildung auf Tabellen Folie 2 von 32 Abbildung auf Tabellen Übersicht Motivation des relationalen Datenmodells Von Objekten zu Tabellen Abbildung von Objekten Schlüssel Abbildung

Mehr

Datenbankentwurf. Abstraktionsebenen des Datenbankentwurfs: 3. Konzeptuelle Ebene. 5. Implementationsebene. 7. Physische Ebene.

Datenbankentwurf. Abstraktionsebenen des Datenbankentwurfs: 3. Konzeptuelle Ebene. 5. Implementationsebene. 7. Physische Ebene. Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs: 3. Konzeptuelle Ebene 5. Implementationsebene 7. Physische Ebene Kapitel 2 1 Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 5. Konzeptuelle

Mehr

UML -Klassendiagramme

UML -Klassendiagramme UML -Klassendiagramme UML - offline: ArgoUML http://argouml.stage.tigris.org/ UML online: Links genmymodel.com umlet.com/umletino/umletino.html Arten von UML-Diagrammen Diagramm Strukturdiagramm Verhaltensdiagramm

Mehr

Logischer Entwurf. Stufen der Entwicklung einer Datenbank. Inhalt. Übersicht. 1. Datenbank - Entwurf ( ER - Diagramm)

Logischer Entwurf. Stufen der Entwicklung einer Datenbank. Inhalt. Übersicht. 1. Datenbank - Entwurf ( ER - Diagramm) 10. Logischer Entwurf 10-1 10. Logischer Entwurf 10-2 Stufen der Entwicklung einer Datenbank 1. Datenbank - Entwurf ( ER - Diagramm) Logischer Entwurf 2. Umsetzen des ER - Diagramms ins relationale Modell

Mehr

Objektorientierte Analyse (OOA) Strukturmodellierung

Objektorientierte Analyse (OOA) Strukturmodellierung Strukturmodellierung Seite 1 Strukturmodellierung Seite 2 Anwendung im Projekt Strukturmodellierung Voraussetzung: Use Case Diagramm liefert die funktionelle Gliederung mit Angabe der Ein- und Ausgaben

Mehr

Vorlesung Datenbank-Entwurf Klausur

Vorlesung Datenbank-Entwurf Klausur Dr. Stefan Brass 3. Juli 2002 Institut für Informatik Universität Giessen Vorlesung Datenbank-Entwurf Klausur Name: Geburtsdatum: Geburtsort: (Diese Daten werden zur Ausstellung des Leistungsnachweises

Mehr

Das UML Benutzerhandbuch

Das UML Benutzerhandbuch Grady Booch James Rumbaugh Ivar Jacobson Das UML Benutzerhandbuch Aktuell zur Version 2.0 Inhalt Vorwort 15 Ziele 15 Publikum 16 Wie Sie dieses Buch verwenden sollten 16 Aufbau und besondere Merkmale 17

Mehr

Datenbankentwurf. Objektbeschreibung. Prozeßbeschreibungen. Beziehungsbeschreibung: prüfen. Abstraktionsebenen des Datenbankentwurfs

Datenbankentwurf. Objektbeschreibung. Prozeßbeschreibungen. Beziehungsbeschreibung: prüfen. Abstraktionsebenen des Datenbankentwurfs Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs. Konzeptuelle Ebene 2. Implementationsebene (Logische Ebene) 3. Physische Ebene Uni-Angestellte - Anzahl: 000 - Attribute Personalummer Typ: char

Mehr

Kapitel 1: Einführung 1.1 Datenbanken?

Kapitel 1: Einführung 1.1 Datenbanken? Kapitel 1: Einführung 1.1 Datenbanken? 1. Einführung 1.1. Datenbanken Grundlagen der Datenbanksysteme, WS 2012/13 29. Oktober 2012 Seite 1 1. Einführung 1.1. Datenbanken Willkommen! Studierenden-Datenbank

Mehr

Inhaltsverzeichnis Vorwort zur vierten Auflage Vorwort zur dritten Auflage Vorwort zur zweiten Auflage Vorwort zur ersten Auflage Hinweise zur CD

Inhaltsverzeichnis Vorwort zur vierten Auflage Vorwort zur dritten Auflage Vorwort zur zweiten Auflage Vorwort zur ersten Auflage Hinweise zur CD Vorwort zur vierten Auflage 11 Vorwort zur dritten Auflage 13 Vorwort zur zweiten Auflage 15 Vorwort zur ersten Auflage 17 Hinweise zur CD 19 1 Datenbanken und Datenbanksysteme 21 1.1 Zentralisierung der

Mehr

Einführung in Datenbanksysteme

Einführung in Datenbanksysteme Prof. Dr. Ralf Möller Technische Universität Hamburg-Harburg Institut für Softwaresysteme (STS) Mon., 09:45-11:15, TUHH ES40 N0007 Übung Karsten Martiny Dienstags 13:15-14:00, ES42 Raum 0526 Einführung

Mehr

Einführung in das Entity-Relationship-Modell

Einführung in das Entity-Relationship-Modell Einführung in das Entity-Relationship-Modell Historie Entity-Relationship-Modell kurz: ER-Modell bzw. ERM 1976 von Peter Chen vorgeschlagen Standardmodell für frühe Entwurfsphasen in der Datenbankentwicklung

Mehr

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure 8. Objektorientierte Programmierung Informatik II für Verkehrsingenieure Grundbegriffe ALAN KAY, ERFINDER DER SPRACHE SMALLTALK, HAT DIE GRUNDBEGRIFFE DER OBJEKTORIENTIERTEN PROGRAMMIERUNG WIE FOLGT ZUSAMMENGEFASST:

Mehr

Datenmodellierung. Ausschnitt der Realen Miniwelt. Manuelle/intellektuelle Modellierung. Konzeptuelles Schema (E/R- oder UML-Schema)

Datenmodellierung. Ausschnitt der Realen Miniwelt. Manuelle/intellektuelle Modellierung. Konzeptuelles Schema (E/R- oder UML-Schema) Datenmodellierung DBS kann vieles, aber nicht alles! Benutzer muss spezifizieren Anforderungen einer Anwendung Art von zu speichernden Daten Zwei wichtige Konzepte beim Entwurf: Datenmodell: Konstrukte

Mehr

Vorlesungen. Studenten. hören. Grundzüge. Fichte Glaube und Wissen Jonas

Vorlesungen. Studenten. hören. Grundzüge. Fichte Glaube und Wissen Jonas Das relationale eato aedatenmodell Studenten hören Vorlesungen MatrNr Name MatrNr VorlNr VorlNr Titel 26120 Fichte 25403 5022 5001 Grundzüge 25403... Jonas... 26120... 5001... 5022... Glaube und Wissen...

Mehr

Aufgabe 1: Strukturmodellierung mittels Klassendiagramm Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit dem Klassendiagramm beschäftigt.

Aufgabe 1: Strukturmodellierung mittels Klassendiagramm Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit dem Klassendiagramm beschäftigt. Aufgabe 1: Strukturmodellierung mittels Klassendiagramm Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit dem Klassendiagramm beschäftigt. Was ist eine Klasse? Was ist ein Objekt? Geben Sie ein

Mehr

Datenbankentwurf. VO Datenmodellierung. Katrin Seyr. Institut für Informationssysteme Technische Universität Wien.

Datenbankentwurf. VO Datenmodellierung. Katrin Seyr. Institut für Informationssysteme Technische Universität Wien. Datenbankentwurf Datenbankentwurf VO Datenmodellierung Katrin Seyr Institut für Informationssysteme Technische Universität Wien Katrin Seyr Seite 1 Datenbankentwurf 1. Überblick Überblick Wiederholung:

Mehr

Theorie zur Übung 8 Datenbanken

Theorie zur Übung 8 Datenbanken Theorie zur Übung 8 Datenbanken Relationale Datenbanksysteme Ein relationales Datenbanksystem (RDBS) liegt vor, wenn dem DBS ein relationales Datenmodell zugrunde liegt. RDBS speichern Daten in Tabellenform:

Mehr

Anwendungsentwicklung Datenbanken Datenbankentwurf. Stefan Goebel

Anwendungsentwicklung Datenbanken Datenbankentwurf. Stefan Goebel Anwendungsentwicklung Datenbanken Datenbankentwurf Stefan Goebel Warum eine Datenbank? Nutzung von gleichen Daten durch viele Anwender auch an unterschiedliche Orten Daten können mit unterschiedlicher

Mehr

Kapitel 1: Wiederholungsfragen Grundlagen DBS

Kapitel 1: Wiederholungsfragen Grundlagen DBS Grundlagen DBS 1. Welche zentralen Anforderungen an ein DBS definierte Edgar Codd? 2. Was ist eine Transaktion? 3. Welche Eigenschaften muss das DBMS bei der Transaktionsverarbeitung sicherstellen? 4.

Mehr

Inhalt. 2.1 Datenbankentwurf. 2.2 Relationales Modell. 2.3 Relationale Entwurfstheorie. 2.4 Relationale Algebra. 2.5 Structured Query Language (SQL)

Inhalt. 2.1 Datenbankentwurf. 2.2 Relationales Modell. 2.3 Relationale Entwurfstheorie. 2.4 Relationale Algebra. 2.5 Structured Query Language (SQL) 2. Datenbanken Inhalt 2.1 Datenbankentwurf 2.2 Relationales Modell 2.3 Relationale Entwurfstheorie 2.4 Relationale Algebra 2.5 Structured Query Language (SQL) 2 2.1 Datenbankentwurf Datenbankanwendungen

Mehr

konzeptueller Entwurf mittels E/R-Modell einfache Funktionalitäten n-stellige Relationships (n>2) (siehe nächste zwei Folien) schwache Entities

konzeptueller Entwurf mittels E/R-Modell einfache Funktionalitäten n-stellige Relationships (n>2) (siehe nächste zwei Folien) schwache Entities Datenbankentwurf bisher: konzeptueller Entwurf mittels E/R-Modell einfache Funktionalitäten (min, max)-notation n-stellige Relationships (n>2) (siehe nächste zwei Folien) schwache Entities nun: Generalisierung,

Mehr

Geoinformation I Datenmodellierung

Geoinformation I Datenmodellierung Seite 1 von 61 Geoinformation I Datenmodellierung Seite 2 von 61 Datenmodellierung Übersicht Datenverwaltung und Datenbanken objektorientierte Abbildung der Realität Grundlagen der Objektorientierung Darstellung

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Skript zur Vorlesung: Einführung in die Programmierung WiSe 2009 / 2010 Skript 2009 Christian Böhm, Peer Kröger, Arthur Zimek Prof. Dr. Christian Böhm Annahita Oswald Bianca Wackersreuther Ludwig-Maximilians-Universität

Mehr

Kapitel 4: Konzeptueller Datenbankentwurf

Kapitel 4: Konzeptueller Datenbankentwurf 4. Konzeptueller Datenbankentwurf Seite 1 Kapitel 4: Konzeptueller Datenbankentwurf Der Entwurf des konzeptuellen Schemas ist Teil eines übergeordneten Softwareentwurfsprozesses. Im Pflichtenheft eines

Mehr