Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Dr. Brigitte Mathiak Kapitel 2 Daten- und Informationsmodellierung.

Ähnliche Präsentationen


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

1 Dr. Brigitte Mathiak Kapitel 2 Daten- und Informationsmodellierung

2 Datenbanken für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 Darestellung von Klasseninstanzen (Objekten) keine Methodenangabe Datenbanken für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 3: Daten- und Informationsmodellierung15 UML: Assoziations-Klassen StudentenProfessoren ** Prüfungstermin StudentenProfessoren * Prüfungstermin ***

16 Datenbanken für Mathematiker, WS 11/12Kapitel 3: Daten- und Informationsmodellierung16 UML: N-stellige Assoziationen Multiplizitätsangabe einer Klasse regelt bei n-stelligen Beziehungen die Anzahl möglicher Instanzen (Objekte) zu einer fixen Kombination von je einem Objekt der übrigen n-1 Assoziationsenden: Studenten dürfen bei einem Professor nur ein Seminarthema bearbeiten Studenten dürfen dasselbe Thema nur bei einem Professor bearbeiten Professoren können ein Thema an mehrere Studenten vergeben Ein Thema kann von mehreren Professoren vergeben werden – aber an unterschiedliche Studenten StudentenProfessoren Seminarthemen *

17 Datenbanken für Mathematiker, WS 11/12Kapitel 3: Daten- und Informationsmodellierung17 UML: N-stellige Assoziationen (2) Studenten dürfen bei einem Professor nur ein Seminarthema bearbeiten Studenten dürfen dasselbe Thema nur bei einem Professor bearbeiten Professoren können ein Thema an mehrere Studenten vergeben Ein Thema kann von mehreren Professoren vergeben werden StudentenProfessoren Seminarthemen * StudentenProfessoren Seminarthemen ? ?? record ? ? ?

18 Datenbanken für Mathematiker, WS 11/12Kapitel 3: Daten- und Informationsmodellierung18 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

19 Datenbanken für Mathematiker, WS 11/12Kapitel 3: Daten- und Informationsmodellierung19 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).

20 Datenbanken für Mathematiker, WS 11/12Kapitel 3: Daten- und Informationsmodellierung20 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

21 Datenbanken für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 für Mathematiker, WS 11/12Kapitel 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 Datenbanken für Mathematiker, WS 11/12Kapitel 3: Daten- und Informationsmodellierung24 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 2 Daten- und Informationsmodellierung."

Ähnliche Präsentationen


Google-Anzeigen