Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Daten- und Informationsmodellierung

Ähnliche Präsentationen


Präsentation zum Thema: "Daten- und Informationsmodellierung"—  Präsentation transkript:

1 Daten- und Informationsmodellierung
Kapitel 3 Daten- und Informationsmodellierung

2  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 Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

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

4 Informationsmodellierung
Informationsmodellierung Objekte " Miniwelt " Zusammenhänge Attribute Gegenstände Sachverhalte Formalisierung Informationen Tatsachen Personen Beziehungen Vorgänge, Veränderungen.. 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 Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

5 Abstraktionskonzepte
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 Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

6  Objektbeschreibung Uni-Angestellte Gehalt Anzahl: 1000 Typ: dezimal
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 Definiertheit: 100% Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

7 Beziehungsbeschreibung: prüfen
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 Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

8 Prozeßbeschreibungen: Zeugnisausstellung
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 Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

9 Unified Modeling Language (UML)
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 Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

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

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

12 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 Window Window {abstrakt, autor=Joe} size: Area visibility: Boolean +size: Area = (100,100) #visibility: Boolean = false +default-size: Rectangle -xptr: Xwindow* display() hide() +display() +create() -attachXWindow(xwin:Xwindow*) Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

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

14 UML: Kardinalitätsrestriktionen
Verfeinerung der Semantik eines Beziehungstyps durch Kardinalitätsrestriktionen: x .. y mindestens x, maximal y Objekte nehmen an der Beziehung teil 0 ..* optionale Teilnahme an der Beziehung (alternativ ' * ' = 'many') 1 ..* obligatorische teilnahme an der Beziehung "es kann nur einen geben" (oder keinen) 1 genau 1 für binäre Assoziation: Multiplizität min1..max1 (min2..max2) bedeutet, dass zu jedem E2 (E1) - Element wenigstens min1 (min2) und höchstens max1 (max2) Instanzen von E1 (E2) enthalten sein müssen (mit 0 <= mini <= maxi, maxi >= 1) Bezugnahme zur „gegenüberliegenden“ Klasse .. erlaubt Unterscheidung, ob Beziehungsteilnahme optional (Mindestkardinalität = 0) oder obligatorisch (Mindestkardinalität  1 ) ist e1 nimmt an [min2, max2] Beziehungen vom Typ R teil e2 nimmt an [min1, max1] Beziehungen vom Typ R teil E1 min1..max1 min2..max2 E2 R Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

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

16 Übung – Wie modelliert man…
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/13 Kapitel 3: Daten- und Informationsmodellierung

17 Is-A-Beziehung zwischen Klassen (Entity-Mengen)
UML: Is-A Beziehungen Is-A-Beziehung zwischen Klassen (Entity-Mengen) E1 is-a E2 bedeutet, dass jedes Objekt aus E1 auch ein Objekt aus E2 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 Kennzeichen Halter Baujahr Superklasse Superklasse Fahrzeug Subklasse 1 Subklasse 1 Subklasse 1 Subklasse 1 PKW LKW Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

18 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) = {S1, S2, ... Sn} 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 =  Si i = 1..n andernfalls partiell (incomplete). Z ist disjunkt (disjoint), falls Si ∩ Sj = { } für i ≠ j andernfalls überlappend (overlapping). Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

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

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

21 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 Aggregatklasse Komp. Klasse 1 Komp. Klasse 1 Komp. Klasse 1 Komp. Klasse 1 Aggregation Komposition Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

22 Kombination von Generalisierung und Aggregation
Fahrzeuge Unmotorisierte Fahrzeuge Motorisierte Fahrzeuge Segler Fahrräder LKW PKW Rahmen Räder Rohre Lenker Felgen Speichen Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

23 Kombination von Generalisierung und Aggregation
Fahrzeuge Unmotorisierte Fahrzeuge Motorisierte Fahrzeuge Segler Fahrräder LKW PKW Rahmen Räder Rohre Lenker Felgen Speichen Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung

24 Übung 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/13 Kapitel 3: Daten- und Informationsmodellierung

25  Zusammenfassung DB-Entwurf umfasst UML-Klassendiagramme:
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) Datenbanken, WS 12/13 Kapitel 3: Daten- und Informationsmodellierung


Herunterladen ppt "Daten- und Informationsmodellierung"

Ähnliche Präsentationen


Google-Anzeigen