Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Dr. Brigitte Mathiak Kapitel 3 Daten- und Informationsmodellierung.

Ähnliche Präsentationen


Präsentation zum Thema: "Dr. Brigitte Mathiak Kapitel 3 Daten- und Informationsmodellierung."—  Präsentation transkript:

1 Dr. Brigitte Mathiak Kapitel 3 Daten- und Informationsmodellierung

2 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung2 Lernziele Kenntnis der Vorgehensweise beim DB-Entwurf Grundkonzepte von UML Klassendiagrammen für Datenmodellierung Kenntnis der Abstraktionskonzepte (Generalisierung, Aggregation) Fähigkeit zur praktischen Anwendung der Konzepte – Erstellung von Modellen für gegebene Anwendungsszenarien – Festlegung der Primärschlüssel, Beziehungstypen, Kardinalitäten, Existenzabhängigkeiten etc. – Interpretation gegebener Modelle

3 Allgemeine Vorgehensweise Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung3 reales System Anforderungsermittlung und Analyse Konzeptioneller Entwurf (Informationsmodellierung) Logischer Entwurf (DB-Schema, externe Schema) physischer Entwurf (internes Schema) Anwendungserstellung, Systemintegration Informationssystem Verwendung Entwurf Implementierung Tests Evaluationen Auswertungen Modifikationen -

4 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung4 Informationsmodellierung Darstellungselemente + Regeln: -Objekte und Beziehungen (Relationships) -Klassen von Objekten / Beziehungen -Eigenschaften (Attribute) Informationen über Objekte und Beziehungen nur wenn: -relevant -unterscheidbar und identifizierbar, selektiv beschreibbar Zusammenhänge Sachverhalte Gegenstände Informationen Personen Tatsachen Formalisierung Objekte Beziehungen Attribute Vorgänge, Veränderungen.. " Miniwelt "

5 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung5 Abstraktionskonzepte Informations- und Datenmodelle basieren auf drei grundlegenden Abstraktionskonzepten: Klassifikation: fasst Objekte (Entities, Instanzen) mit gemeinsamen Eigenschaften zu einem neuen (Mengen-) Objekt (Entity-Menge, Klasse, Objekttyp) zusammen. – Instanzen/Objekten einer Klasse unterliegen gleicher Struktur (Attribute), gleichen Integritätsbedingungen, gleichen Operationen – mathematisch: Mengenbildung Aggregation: Zusammenfassung potentiell unterschiedlicher Teilobjekte (Komponenten) zu neuem Objekt – mathematisch: Bildung von kartesischen Produkten Generalisierung: Teilmengenbeziehungen zwischen Elementen verschiedener Klassen – mathematisch: Bildung von Potenzmengen (bzw. Teilmengen) – wesentlich: Vererbung von Eigenschaften an Teilmengen

6 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung6 Objektbeschreibung Uni-Angestellte -Anzahl: Attribute PersonalNummer Typ: char Länge: 9 Wertebereich: Anzahl Wiederholungen: 0 Definiertheit: 100% Identifizierend: ja Gehalt Typ: dezimal Länge: (8,2) Anzahl Wiederholung: 0 Definiertheit: 10% Identifizierend: nein Rang Typ: String Länge: 4 Anzahl Wiederholung: 0 Definiertheit: 100% Identifizierend: nein

7 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung7 Beziehungsbeschreibung: prüfen Beteiligte Objekte: -Professor als Prüfer -Student als Prüfling -Vorlesung als Prüfungsstoff Attribute der Beziehung: -Datum -Uhrzeit -Note Anzahl: pro Jahr

8 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung8 Prozeßbeschreibungen: Zeugnisausstellung Häufigkeit: halbjährlich benötigte Daten Prüfungen Studienordnungen Studenteninformation... Priorität: hoch Zu verarbeitende Datenmenge 500 Studenten 3000 Prüfungen 10 Studienordnungen

9 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung9 Unified Modeling Language (UML) standardisierte graphische Notation / Sprache zur Beschreibung objektorientierter Software-Entwicklung Kombination unterschiedlicher Modelle bzw. Notationen, u.a. – Booch – Rumbaugh (OMT) – Jacobson (UseCases) Standardisierung durch Herstellervereinigung OMG (Object Management Group): – 1997: UML 1.1 – 2001: UML 1.4 – 2003: UML 2.0 Infos: J. Rumbaugh, I. Jacobson, Grady Booch: The Unified Modeling Language Reference Manual (2nd Edition) Addison-Wesley, 2004

10 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung10 UML: Bestandteile UML umfasst Modellelemente (Klassen, Interfaces, Anwendungsfälle...) Beziehungen (Assoziationen, Generalisierung, Abhängigkeiten...) und Diagramme Anforderungen Analyse Entwurf Implementierung Software-Entwicklung Anwendungsfälle Klassendiagramme Modularisierung Klassendiagramme verfeinert Komponentendiagramme Code (Klassendefinition) Aktivitäten Szenarien Sequenzdiagramme Kooperations-, Zustandsdiagramme Verteilungsdiagramme, Code (Methoden) Objektstruktur Objektverhalten

11 Klassensymbol: Angabe von Klassenname, Attribute (optional), Methoden (optional) i. a. werden nur relevante Details gezeigt Analoge Darstellung von Klasseninstanzen (Objekten) keine Methodenangabe Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung11 UML: Darstellung von Klassen und Objekten Student MatrNr: int Name: String Student semester(): int sumSWS(): short Student semester(): int sumSWS(): short MatrNr: int Name: String rudi:StudentS2: Student MatrNr: Name: Maier

12 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung12 UML: Darstellung von Klassen (2) Detaildarstellung auf Implementierungsebene Attributspezifikation: Sichtbarkeit Name: Typ = Default-Wert { Eigenschaften } Operationen: Sichtbarkeit Name (Parameterliste) : Rückgabeausdruck { Eigenschaften } Sichtbarkeit: öffentlich / public (+), geschützt / protected (#), privat (-) unterstrichen: Klassen-Attribute / -Operationen Darstellung von Bedingungen (Constraints) innerhalb geschweifter {.. } Window size: Area visibility: Boolean Window display() hide() +size: Area = (100,100) #visibility: Boolean = false +default-size: Rectangle -xptr: Xwindow* Window { abstrakt, autor=Joe} +display() +create() -attachXWindow(xwin:Xwindow*)

13 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung13 ArbeitetIn Assoziationsname UML: Assoziationen Repräsentation von Beziehungen (relationships) optional: Festlegung eines Assoziationsnamens, seiner Leserichtung ( bzw. ), von Rollennamen, Sichtbarkeit von Rollen (+, -, #) sowie Kardinalitätsrestriktionen Klasse 1Klasse 2 Rolle 1Rolle 2 PersonAbteilung Rolle 1Rolle 2

14 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung14 R min 2..max 2 UML: Kardinalitätsrestriktionen Verfeinerung der Semantik eines Beziehungstyps durch Kardinalitätsrestriktionen: x.. ymindestens x, maximal y Objekte nehmen an der Beziehung teil 0..*optionale Teilnahme an der Beziehung (alternativ ' * ' = 'many') 1..*obligatorische teilnahme an der Beziehung 0.. 1"es kann nur einen geben" (oder keinen) 1genau 1 für binäre Assoziation: Multiplizität min 1..max 1 (min 2..max 2 ) bedeutet, dass zu jedem E 2 (E 1 ) - Element wenigstens min 1 (min 2 ) und höchstens max 1 (max 2 ) Instanzen von E 1 (E 2 ) enthalten sein müssen (mit 0 = 1) Bezugnahme zur gegenüberliegenden Klasse.. erlaubt Unterscheidung, ob Beziehungsteilnahme optional (Mindestkardinalität = 0) oder obligatorisch (Mindestkardinalität 1 ) ist E1E1 E2E2 min 1..max 1 e 1 nimmt an [min 2, max 2 ] Beziehungen vom Typ R teil e 2 nimmt an [min 1, max 1 ] Beziehungen vom Typ R teil

15 notwendig für Beziehungen mit eigenen Attributen gestrichelte Linie Name der Assoziations-Klasse entspricht dem der Assoziation alternativ: Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung15 UML: Assoziations-Klassen StudentenProfessoren ** Prüfungstermin StudentenProfessoren * Prüfungstermin ***

16 Punkte und Dreiecke Farben von Dreiecken Tisch und Tischbein Fahrzeug und Rad Buch und Bücherregal Autor und Buch Autor, Buch und Bücherregal Arbeiter und Arbeitgeber Arbeiter, Arbeitgeber und Lohn Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung16 Übung – Wie modelliert man…

17 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung17 UML: Is-A Beziehungen Is-A-Beziehung zwischen Klassen (Entity-Mengen) E 1 is-a E 2 bedeutet, dass jedes Objekt aus E 1 auch ein Objekt aus E 2 ist, jedoch mit zusätzlichen strukturellen Eigenschaften Substitutionsprinzip: alle Instanzen einer Subklasse sind auch Instanzen der Superklasse Vererbung von Eigenschaften (Attribute, Integritätsbedingungen, Methoden...) der Superklasse an alle Subklassen Wiederverwendbarkeit, Erweiterbarkeit keine Wiederholung von Beschreibungsinformation, Fehlervermeidung Subklasse 1 Superklasse Subklasse 1 Superklasse Subklasse 1 PKW Fahrzeug LKW Kennzeichen Halter Baujahr

18 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung18 Spezialisierung: Definitionen Klasse: Menge von Entities (Entity-Mengen, Superklassen, Subklassen) Subklasse: Klasse S, deren Entities eine Teilmenge einer Superklasse G sind (is-a-Beziehung), d.h. S G, d. h. jedes Element (Ausprägung) von S ist auch in G. Spezialisierung: Z (G) = {S 1, S 2,... S n } Menge von Subklassen Si mit derselben Superklasse G Zusätzliche Integritätsbedingungen: Vollständigkeit (Überdeckung) und Disjunktheit von Spezialisierungen Z heisst vollständig (complete), falls gilt: G = S i i = 1..n andernfalls partiell (incomplete). Z ist disjunkt (disjoint), falls Si Sj = { } für i j andernfalls überlappend (overlapping).

19 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung19 Arten von Spezialisierungen X YZ disjunkte Spezialisierungen (Partitionierung) Subklassen überlappende Spezialisierungen vollständig, disjunkt (complete, disjoint) YZ X YZ X vollständig, überlappend (complete, overlapping) partiell, disjunkt (incomplete, disjoint) Y Z X Y Z X partiell, überlappend (incomplete, overlapping) Superklasse

20 Dackel und Hund Waldi und Hund Frauen, Männer und Menschen Frauen, Männer und Hochzeit Angestellter und Chef Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung20 Übung – Wie modelliert man…

21 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung21 UML: Part-Of Beziehungen Part-of-Beziehung (Teil-von-Beziehung) zwischen Komponenten und Aggregatobjekten Elemente einer Subkomponente sind auch Elemente aller Superkomponenten dieser Subkomponente Referenzsemantik ermöglicht, dass ein Objekt gleichzeitig Elemente verschiedener Komponenten bzw. Subkomponente von mehreren Superkomponenten sein kann - Netzwerke, (n:m) Beziehungen möglich Wertesemantik (Komposition): Teil-Objekt gehört genau zu einem Aggregat-Objekt; Existenzabhängigkeit! Aggregatklasse Komp. Klasse 1 Aggregatklasse Komp. Klasse 1 Aggregation Komposition

22 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung22 Kombination von Generalisierung und Aggregation Rahmen RohreLenker Räder FelgenSpeichen Fahrräder Unmotorisierte Fahrzeuge Segler PKW Motorisierte Fahrzeuge LKW Fahrzeuge

23 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung23 Kombination von Generalisierung und Aggregation Rahmen RohreLenker Räder FelgenSpeichen Fahrräder Unmotorisierte Fahrzeuge Segler PKW Motorisierte Fahrzeuge LKW Fahrzeuge

24 Was ist die Beziehung zwischen Deckel und Topf? Raum und Tisch? Baum und Blatt? Buch und Buchstabe? Buch und Titel? Dackel und Hund? Lassie und Hund? Buch und Lesen? Beamer, Sehen und Student? Auto, Fahrer, Geschwindigkeit? Party, Haus, Gast, Geburtstag? … Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung24 Übung

25 Datenbanken, WS 12/13Kapitel 3: Daten- und Informationsmodellierung25 Zusammenfassung DB-Entwurf umfasst Informationsanalyse konzeptioneller Entwurf (-> Informationsmodell) logischer Entwurf (-> logisches DB-Schema) physischer Entwurf (-> physisches DB-Schema) UML-Klassendiagramme: standardisiert Spezifikation von Verhalten (Methoden), nicht nur strukturelle Aspekte genauere Kardinalitätsrestriktionen (Multiplizitäten) Unterstützung der Abstraktionskonzepte der Generalisierung / Spezialisierung, Aggregation / Komposition keine festen Regeln zur eigentlichen Informationsmodellierung (i.A. mehrere Modellierungsmöglichkeiten einer Miniwelt)


Herunterladen ppt "Dr. Brigitte Mathiak Kapitel 3 Daten- und Informationsmodellierung."

Ähnliche Präsentationen


Google-Anzeigen