2. Semantische Datenmodellierung

Slides:



Advertisements
Ähnliche Präsentationen
Business Engineering Philipp Osl, Alexander Schmidt
Advertisements

ER-Modell: Objekte und Klassen
Datenmodellierung.
ER-Datenmodell und Abfragen in SQL
Datenbankdesign mit ACCESS.
Zur Rolle der Sprache bei der Modellierung von Datenbanken
Generalisierung/Spezialisierung (1)
Kardinalität von binären Beziehungen (1)
spezielle Nutzersichten formale Ebene (deskriptive Regeln)
Datenmodellierung Externe Phase Informationsstruktur
Die Definitionsphase -Objektorientierte Analyse - Das statische Modell
Kapitel 4 Datenstrukturen
Assoziationen Verbindungen zwischen Objekten einer Klasse
Das Entity-Relationship-Modell
Franziska Schmidt Sarah Ahlheit
Das ERM-Model Manuela Erdmann.
Historische Datenmodelle
Datenbanken I (0,*) Produkt 3 Karczewski Datenbanken I.
3. Relationales Modell entwickelt von Codd (1970)
Java: Objektorientierte Programmierung
UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/22
Schritte zu Datenmodellierung
Themenschwerpunkte Übung 3:
Objektorientierte Konzepte und Notation in UML
CIDOC-CRM Universität zu Köln Historisch-kulturwissenschaftliche Informationsverarbeitung AM 2 Dozent: Prof. Dr. Manfred Thaller Referent: Nelson Marambio.
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Entity-Relationship (ER)-Modell
Übung Datenbanksysteme WS 2002/ Übung Datenbanksysteme ER-Modellierung
Technische Informatik I
ERM – Modellierung Teil 2
Willkommen zum DBS I – Praktikum!
Was ist eine Datenbank? ermöglicht die Eingabe von Daten
Datenmodellierung - Aufbau einer Datenbank -
OO Analyse und Entwurf für Anwender
Visualisierung objektrelationaler Datenbanken
Entity Relationship Modelling
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
Semantisches Datenmodell Entity-Relationship-Modell Normalformen
Ökonometrie I Variablenauswahl.
Vorlesung #2 Datenbankentwurf
SS 2009 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #2 Datenbankentwurf.
SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #2 Datenbankentwurf.
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #3 ER Modellierung.
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
Allgemeines zu Datenbanken
(D.h. „Hallo MausFans!“ auf Japanisch).
Winschool-Weiterbildung
Beispiele von Objektkatalogen
7.1.9 Kardinalität von Beziehungen (1|15)
Datenbanksysteme für Hörer anderer Fachrichtungen
Relationale Datenbanken
1 Ausgangslage Vorgehensweise: Informell, pragmatisch, stark graphisch orientiert. Systemanalytischer Ausgangspunkt: Klassischer Systembegriff als Ansammlung.
Objektorientierte Modellierung mit UML
Klassen und Klassenstruktur
SS 2014 – IBB4C Datenmanagement Do 17:00 – 18:30 R Vorlesung #2 Datenbankentwurf.
8.4.3 Übertragung von Beziehungstypen (1|12)
SS 2014 – IBB4C Datenmanagement Do 17:00 – 18:30 R Vorlesung #3 ER Modellierung.
Erweiterung bzgl. der Kardinalität. (1|9)
Sichtbarkeit einschränken
Was ist eine Datenbank „MS Access“
Gerhard Röhner September 2012
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #2 Datenbankentwurf.
Vom Konzept zur Datenbank
Übungsblatt 3 Erläuterungen Wintersemester 15/16 DBIS.
Datenbankentwurf Gerhard Röhner September Modellierung.
Veranstaltung: Datenbanken I Dozent: Ioannis Papakostas Belegarbeit 6 Online-Bestellung von Büchern Stefan Rüschenberg (Matrikel-Nr.: ) Sebastian.
Vorlesung #2 ER –Modellierung (Datenbankentwurf)
Vorlesung #2 Datenbankentwurf
ER-Modell und Relationales Schema
 Präsentation transkript:

2. Semantische Datenmodellierung Datenmodell: System von Konzepten zur Beschreibung relevanter Daten Datenbankmodell: System von Konzepten zur Beschreibung von Datenbanksystemen (hierarchisches, Netzwerk-, relationales, objektorientiertes Modell) Datenmodellierung: Erstellung von Datenbankschemata, deren Syntax und Semantik durch das zugrunde liegende Datenbankmodell festgelegt sind Karczewski Datenbanken I

Prinzipielle Vorgehensweise beim Datenbankentwurf Einührung Prinzipielle Vorgehensweise beim Datenbankentwurf Datenbankschema Datenmodellierung Ausschnitt aus der Realwelt (Miniwelt) Parallel zum Datenmodellierung erfolgt der Funktionsentwurf -> Veranstaltung Softwaretechnik Die Struktur der Datenbank soll dabei ein möglichst getreues Modell des zu bearbeitenden Teilausschnittes der Realwelt darstellen. Karczewski Datenbanken I

Datenbank-Entwurfsprozess (1) Planung Analyse Design Implementierung Karczewski Datenbanken I

Datenbank-Entwurfsprozess (2) Vgl. Bild 2-2 Tafelbild Karczewski Datenbanken I

Grundlagen der Datenmodellierung erweitertes Entitity-Relationship-Modell (eERM) Klassendiagramm der Unified Modelling Language (UML) Darstellung von Äquivalenzen Transformation vom eERM zum UML-Klassendiagramm Karczewski Datenbanken I

Unser Beispiel Ein erstes Beispiel: Produktdaten einer Keramischen Werkstatt Bezeichnung: Teekanne Glasur: graublau Dekor: Wichtel Preis: 59,00 ... Karczewski Datenbanken I

Unser Beispiel Weitere Informationen: Bestellungen Dekore auf Produkten (z. B. Teekannen) Glasuren Rohstoffe Märkte Geschäftspartner wie Kunden Händler Spediteure Veranstalter Karczewski Datenbanken I

erweitertes Entity-Relationship-Modell Objekttyp (Entity Typ): Kunde Entity ist ein Objekt der realen Welt Entity-Typ ist Repräsentant aller Objekte gleichen Typs Entity-Typ wird durch ein Rechteck dargestellt Rechteck enthält Namen des Entity-Typs im Singular Karczewski Datenbanken I

erweitertes Entity-Relationship-Modell bestellt 8 Beziehungstyp (Relationship Typ): oder 8: bestellt Relationship beschreibt, wie Entitäten untereinander assoziiert sind Relationship Typ ist Repräsentant aller Beziehungen gleichen Typs Relationship Typ wird durch eine Raute dargestellt Raute enthält Namen des Relationship Type Karczewski Datenbanken I

erweitertes Entity-Relationship-Modell Kunde Nachname Attribut: Attribute beschreiben Eigenschaften von Entity- oder Relationship-Typen Attribut wird durch abgerundetes Rechteck dargestellt Komplexe Attribute können durch Auflistung ihrer elementaren Datentypen in Ovalen dargestellt werden Attribute werden mitunter nur textuell dargestellt Bsp: Kunde (Nachname, Adresse) Strasse Adresse Stadt PLZ Karczewski Datenbanken I

erweitertes Entity-Relationship-Modell Kardinalität Binärer Beziehungstyp: (0,*) (0,1) Dekor 5 Produkt 5: ist versehen mit Jedes Produkt wird mit keinem oder einem Dekor versehen. Zu einem Dekor gibt es (möglicherweise) kein Produkt oder beliebig viele. Karczewski Datenbanken I

Konkrete Beziehungen Kaffeetasse S Sonnenblume Kaffeetasse S Fische Kaffeekanne K Wichtel Kaffeetasse K . . . Teetasse S Anzahl der Linien zwischen konkreten Dekors und konkreten Produkten lässt Rückschlüsse auf Kardinalität ziehen Kardinalität gibt mögliche (auch zukünftige) Mengen an konkreten Beziehungen an Teekanne S Dessertteller . . . Karczewski Datenbanken I

erweitertes Entity-Relationship-Modell Rekursiver binärer Beziehungstyp: Teilprodukt Produkt (0,*) (0,*) Produkt besteht aus keinen oder mehreren Teilprodukten Produkt gehört zu keiner oder mehreren Produktgruppen Teilprodukt und Produktgruppe sind Rollen, in denen Produkte vorkommen können 4 Produktgruppe 4: besteht aus Karczewski Datenbanken I

erweitertes Entity-Relationship-Modell ternärer Beziehungstyp: Kunde (0,*) „Kunden bestellen Produkte auf Märkten“ Merkmal: Beziehung tritt zwischen Entitäten dreier Entity-Typen gleich- zeitig auf 8 (0,*) (0,*) Produkt Markt 8: bestellt Karczewski Datenbanken I

erweitertes Entity-Relationship-Modell Verschiedene Schreibweisen der Kardinalitäten und ihre Interpretation Vergleich eERM und UML-Klassendiagramm s. Tafel Karczewski Datenbanken I

erweitertes Entity-Relationship-Modell Generalisierung/Spezialisierung: Geschäftspartner D Händler Spediteur Kunde Veranstalter Andere Darstellungsweisen: Geschäftspartner Geschäftspartner ist Händler . . . Händler . . . Karczewski Datenbanken I

erweitertes Entity-Relationship-Modell Totale Spezialisierung: Jede Instanz des Supertyps entspricht mindestens einem Subtyp (Doppelstrich). Disjunkte Spezialisierung: Eine Instanz eines Supertyps kann zu maximal einem Subtyp gehören (D im Dreieck). D D Überlappende Spezialisierung: Eine Instanz eines Supertyps kann zu mehreren Subtypen gehören, die Spezialisierung ist überlappend / overlapping (O im Dreieck). Partielle Spezialisierung: Nicht jede Ausprägung des Supertyps wird notwendigerweise spezialisiert (einfacher Strich). O O Karczewski Datenbanken I

Different Inheritance structures disjoint and complete disjoint and incomplete overlapping and complete overlapping and incomplete Karczewski Datenbanken I

Disjoint and Complete abstract class Instrument {disjoint, complete} WindInstrument PercussionInstrument There are no instruments which are neither Wind- nor PercussionInstrument. WindInstrument There are no instruments which are simultaneously Wind- and Percussion- Instrument PercussionInstrument Karczewski Datenbanken I

Disjoint and Incomplete Normal (not abstract) class Instrument {disjoint, incomplete} WindInstrument PercussionInstrument There are some instruments which are neither Wind- nor PercussionInstrument. WindInstrument There are no instruments which are simultaneously Wind- and Percussion- Instrument PercussionInstrument Karczewski Datenbanken I

Overlapping and Complete abstract class Instrument {overlapping, complete} WindInstrument KeyboardInstrument There are no instruments which are neither Wind- nor KeyboardInstrument. WindInstrument KeyboardInstrument There are some instruments which are simultaneously Wind- and Keyboard- Instrument. Karczewski Datenbanken I

Overlapping and Incomplete Normal (not abstract) class Instrument {overlapping, incomplete} WindInstrument KeyboardInstrument There are some instruments which are neither Wind- nor KeyboardInstrument. WindInstrument KeyboardInstrument There are some instruments which are simultaneously Wind- and Keyboard- Instrument Karczewski Datenbanken I

Overlapping and Incomplete Overlapping can be solved by defining a new class. This class contains all elements of the former intersection set. WindInstrument Instrument KeyboardInstrument {disjoint, complete} AccordionInstrument WindInstrument AccordionInstrument KeyboardInstrument Is there an alternative model? How can incompleteness be solved? Karczewski Datenbanken I

Beispiel Keramische Werkstatt Vorgehensweise beim Entwurf: Entwurf der Teilsysteme z. B.: Anschließend: Zusammenfügen der Teilsysteme oder: Ausgehend von einem Objekt bzw. einem Teilsystem: Entwurf des Gesamtsystems (Frage stellen: zu welchen Objekten gibt es welche Beziehungen) Geschäftspartner Rohstoffe Produkte Märkte zusätzlich Markt zusätzlich Produkt zusätzlich Rohstoff Geschäftspartner . . . Karczewski Datenbanken I

Teilsystem Rohstoffe Händler Spediteur Händler Spediteur Händler Spediteur (1,*) (1,*) 1 1 (1,*) Rohstoff Rohstoff Rohstoff 1: liefert (Bestelldatum, Lieferdatum, Preis, Menge) Analyse, welche Enity-Typen mit-einander in Be-ziehung stehen Analyse, wie der Relationship-Typ bezeichnet wird und welche Attribute er besitzt Analyse, welche Kardinalitäten der Relationship-Typ hat Karczewski Datenbanken I

Teilsystem Geschäftspartner O Attribut- Spezialisierung Händler Spediteur Kunde Veranstalter (0,*) Typ Beziehungs- Spezialisierung 7 (0,*) Produkt Karczewski Datenbanken I

Teilsystem Produkt 4: besteht aus (Anzahl) 5: ist versehen mit (0,*) (1,1) Glasur 6 (0,1) Produkt (0,*) (0,*) Dekor 5 (0,*) 4 4: besteht aus (Anzahl) 5: ist versehen mit 6: ist glasiert mit Dekor: (Bezeichnung, Foto) Glasur: (Oberflächenstruktur, Farbe, Beanspruchung) Produkt: (Nummer, Bezeichnung, Fassungsvermögen, Preis, Funktion, Foto) Karczewski Datenbanken I

Integration der Teil-Systeme der Keramischen Werkstatt Geschäftspartner O (0,*) Händler Spediteur Kunde Veranstalter (1,*) (1,*) (0,*) (0,*) 1 (1,*) 2 8 7 Rohstoff (1,1) (0,*) (1,*) (0,1) Glasur 6 (0,*) 9 Markt (0,*) (0,*) (0,1) (1,*) (0,*) Produkt (0,*) (0,*) (0,*) 3 Dekor 5 (0,*) (0,*) 10 (1,*) 4 Karczewski Datenbanken I Bedingung

Entity-Typen: Relationship-Typen: Geschäftspartner (Name, Vorname, Adresse, Telefonnummer, email) Händler ( Spediteur ( Kunde ( Veranstalter (Typ) Markt (Bezeichnung, Standort, Termin, Öffnungszeiten, URL, Rahmen, Ranking, Standgebühr / m2) Bedingung (Kategorie 1, ... 2, ...3, Endanteil) Rohstoff (Art, Bezeichnung, Brennbereich min, Brennbereich max, chemische Formel, Körnung in mm Durchmesser, Schamottanteil in Prozent) Produkt (Produktnummer, Bezeichnung, Grösse, Fassungsvermögen, Preis, Funktion, Foto) Glasur (Oberflächenstruktur, Farbe, Beanspruchung) Dekor (Bezeichnung, Foto) Relationship-Typen: 1: liefert (Bestelldatum, Lieferdatum, Gesamtpreis) 2: hat als Ansprechpartner [funktionale Abhängigkeit] 3: hat Bedingung 4: besteht aus (Anzahl) 5: ist versehen mit [funktionale Abhängigkeit] 6: ist glasiert mit [funktionale Abhängigkeit] 7: erhält geliefert (Anzahl, Lieferdatum, Gesamtpreis, ArtAuslieferung) 8: bestellt (Anzahl, Bestelldatum, Liefertermin, BestellArt, ArtAuslieferung) 9: wird angeboten auf (Anzahl) 10: wurde verkauft (Anzahl) Karczewski Datenbanken I

Ausprägungen einzelner Attribute: Veranstalter - Typ: Verein, Galerie, Einzelperson Markt - Rahmen: Töpfermarkt, Kunsthandwerkermarkt, Kirmes Ranking: sehr renommiert (+), renommiert (0), wenig renommiert (-) Standgebühr / m2: ab ca. 15 EUR bis 80 EUR „und mehr“ Bedingung – Kategorie 1: Nur selbst hergestellte Ware: ja/nein Kategorie 2: Historische Kleidung erforderlich: ja/nein Kategorie 3: Bewerbungsunterlagen mit Fotos: ja/nein Endanteil: Reduzierte Standgebühren zu Gunsten einer zusätz- lichen einmaligen Zahlung am Ende von (z.B.) 10% der Einnahmen: Prozentsatz Glasur - Oberflächenstruktur: matt, seidenmatt, glänzend Farbe: graublau, türkis, steingrau Beanspruchung: spülmaschinenfest ja/nein Dekor - Bezeichnung: Sonnenblume, Fische, Rose, Wichtel (varchar) Bild: (BLOB) Produkt - Name: Teeservice, Kaffeservice, Dessertteller, Tasse, Untertasse, Vase, Schale, Zuckerdose Funktion: Gebrauch, Dekoration Grösse: [z.B. Durchmesser bei Tellern, Tassen etc.] (decimal) Fassungsvermögen in l: 1,2 l (bei Kannen, Vasen, ...) (decimal) Preis: ... (decimal) Rohstoff - Art: Arbeitsmaterial (Ton), Pigmente, Gestaltungsmaterial (Glasur), [Werkzeug (zum Drehen / Abdrehen), Maschinen] Bezeichnung: .... Brennbereich min: Brennbereich max: chemische Formel: Körnung in mm Durchmesser: Schamottanteil in Prozent: Karczewski Datenbanken I