Bauinformatik II Softwareanwendungen 1

Slides:



Advertisements
Ähnliche Präsentationen
Datenbankdesign mit ACCESS.
Advertisements

Datenbanken Beispiel: Musikverwaltungsdatenbank Daten: Musikstück
Datenbank – Datenbanksystem
Vorlesung Programmieren II
Prof. Dr. T. Kudraß1 Logischer DB-Entwurf. Prof. Dr. T. Kudraß2 Entwurf eines relationalen DB-Schemas Ziel: –Regeln für die Umsetzung eines ER-Modells.
Relationaler Datenbankentwurf (II)
spezielle Nutzersichten formale Ebene (deskriptive Regeln)
Datenmodellierung Externe Phase Informationsstruktur
Bauinformatik II Softwareanwendungen 1
Bauinformatik II Softwareanwendungen 1
8 Behandlung von Begriffen 8.1 Grundlagen aus Logik und Psychologie
Kapitel 4 Datenstrukturen
Ein Entity Relationship Diagramm zur ADB/NDB
Das Entity-Relationship-Modell
Franziska Schmidt Sarah Ahlheit
Objektorientierter Entwurf (OOD) Übersicht
Java: Objektorientierte Programmierung
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/7 Datenbanken werden als Anhäufung von Werten eines Wertebereiches aufgefasst und Datenbankabfragen.
Algorithmentheorie 04 –Hashing
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 16 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Datenbankdesign und Normalisierung
Daten bank St. Wiedemann.
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Entity-Relationship (ER)-Modell
Modularization of XHTML™
Übung Datenbanksysteme UML
Geoinformation III Vorlesung 13b XML-Schema.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
– Team 2 Aktueller Projektleiter: Christian Krapp
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
Normalformen Normalisieren Schlüssel
Datenintegrität Referentielle Integrität create table
6 Normalformen Normalisieren Schlüssel
November 2002.
Datenmodellierung - Aufbau einer Datenbank -
DVG Klassen und Objekte
Buch S73ff (Informatik I, Oldenbourg-Verlag)
© Katharina Brachmann Normalformen Oldenbourg S137, Klett S117
Buch S70ff (Informatik I, Oldenbourg-Verlag)
Relationentheorie AIFB SS Algorithmen zur Bildung von 3NF-Relationsschemata Algorithmen zur Bildung von 3NF-Relationsschemata (2|8) (2)Synthese.
7.3 Hinweise für den Aufbau von ER-Schemata (1|7)
Grundschutztools
Tutorium Willkommen zurück, in der wunderbaren Welt der Statistik Teil II.
Relationale Datenbankmodelle
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Objektmodellierung Objekte und Klassen Ein Objekt ist ein Exemplar.
Relationale Datenbanken II
Die Grundterminologie
Datenbank-entwicklungsprozess
Projektplanung im Kooperationsverbund Oslebshausen
Access 2000 Willkommen im Access-Kurs Oliver Mochmann.
Normalisierung Referat zur Veranstaltung: Datenbanktechnologie, mit praktischen Übungen in eXist und XQuery Datum: 18. April 2011 (3.Sitzung) Dozent: Daniel.
SS 2011 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #5 Relationale Entwurfstheorie.
Ganzheitliches Projekt-, Ressourcen- und Qualitätsmanagement 1 Reports und AddOns Auf den folgenden Seiten wird Ihnen die Funktionsweise der Reports und.
(D.h. „Hallo MausFans!“ auf Japanisch).
Einführung in Datenbankmodellierung und SQL
Das relationale Modell
verstehen planen bearbeiten
Normalisierungsprozess
Relationale Datenbanken
Datenbank Wandertag Situationsbeschreibung
Dritte Normalform Relationstyp R(A1,...,An) und Menge  von FDs und MVDs für R sei im Folgenden fest vorgegeben. R ist in dritter Normalform (3NF), wenn.
Bauinformatik II Softwareanwendungen 1
Bauinformatik II Softwareanwendungen 1
1 1.Man beginne mit „leicht erkennbaren natürlichen Objekten“ (Personen und konkreten Gegenständen) und fasse diese zu Objekttypen zusammen. (etwa Substantive.
Übungsblatt 3 Erläuterungen Wintersemester 15/16 DBIS.
IS: Datenbanken, © Till Hänisch 2000 Entwurfstheorie Normalisierung oder "Wie man sich Ärger erspart"
Veranstaltung: Datenbanken I Dozent: Ioannis Papakostas Belegarbeit 6 Online-Bestellung von Büchern Stefan Rüschenberg (Matrikel-Nr.: ) Sebastian.
© \\//_ Datenbankentwurf. © \\//_ Gliederung 1.Das Entity-Relationship-ModellDas Entity-Relationship-Modell 2.Transformation ins relationale Modell (Tabellen)Transformation.
LK Informatik - Datenbanken Normalisierung von Datenbanken April/Mai 2004 (2009) Paul-Natorp-Oberschule.
 Präsentation transkript:

Bauinformatik II Softwareanwendungen 1 Relationale Datenbanken für Bauingenieurprobleme 5. Semester 7. Vorlesung Datenbankentwurf- Normalisierung Prof. Dr.-Ing. R. J. Scherer Nürnberger Str. 31a 2. OG, Raum 204 TU Dresden - Institut für Bauinformatik Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung Normalisierung Ziel: Redundanzfreie Speicherung der Daten und keine Nullwerte Ablauf: in mehreren (Normalisierungs-)Stufen Vorteil: 1. keine Mutationsanomalie, die zu kontrollieren wären 2. geringerer Speicherplatzbedarf (evtl.) 3. erhöhte Schnelligkeit (evtl.) Methode: Buttom Up Datenbankentwurf Mutationsanomalie entsteht durch unvollständige Änderung redundanter Daten Beispiel: Wenn es keine seperate Relation Baumaschinen gäbe und Relation Bagger-Baggerfahrer gelöscht werden soll, dann wird auch die Person gelöscht. Baufahrzeugfahrer PNr Name Vorname Baumaschine Typ 1324 2345 4347 5352 Anders Berger Lehmann Schulze Sven Paul Andreas Jens Bagger Kipper LKW BG 20 KPx/5 DL 38 A/2 Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung Buttom-UP Ansatz Der Buttom UP-Ansatz ist eine Entwurfsstrategie für einen Routine-Entwurf, der ausgeht von der Beobachtung. Beobachten und aufschreiben (Analog der Statistik: beob. + zählen) Nach vorgegebenen Regeln um-ordnen und um-strukturieren Ergebnis: allgemeingültiger Erst-Entwurf / Modell Ergänzen auf Grund von Tests in der Praxis Definition: Routine-Entwurf : Der Problemraum ist vollständig bekannt, d. h. mit den vorhandenen Regeln ( = Wissen) sind alle auftrettenden Probleme richtig zu lösen (=Voraussetzung zur Anwendung des Buttom-UP Ansatzes) Der Routine-Entwurf kann sowohl zu einem routine als auch zu einem innovativen Ergebnis führen (innovativ = neuartig, vorher so noch nicht da gewesen) Anwendung: bei komplexen ( schwierigen) Problemen Anmerkung: unter Zeitdruck sind auch schon einfache Probleme komplex. Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung Redundanz Redundanz entsteht durch : Mehrfachspeicherung derselben Entität oder Attribute einer Entität Abhängigkeiten innerhalb einer Entität, d. h. zwischen den Attributen. Zu entscheiden ist zwischen 3 Arten von Abhängigkeiten: Funktionale Abhängigkeit Volle Abhängigkeit Transitive Abhängigkeit Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Funktionale Abhängigkeit Ein Attribut B ist von einem Attribut A funktional abhängig, wenn zu einem bestimmten Attributwert von A genau ein Attributwert von B gehört. Gleiches gilt für Attribut-Kombinationen von A und B Arbeitskräfte: Der Name des Arbeiters ist funktional von der Personal_Nr. abhängig. PNr Name Vorname 1123 1234 1125 Müller Büttner Max Felix Peter Alle Attribute einer Entität sind von jedem Schlüsselattribut (-kombination) funktional abhängig. Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung Volle Abhängigkeit Ein Attribut B ist von einer Attributkombination A voll abhängig, wenn B nur von A, nicht jedoch schon von einem Teil der Attribut- Kombination A funktional abhängig ist. Gleiches gilt für eine Attributkombination von B. Das Kaufdatum ist vom ID-Schlüssel abhängig, jedoch nicht von nur einem der beiden Schlüsselattribute Lieferant, bzw. Material Einkauf von Materialien: Baul.Objekt Adresse Material Bem. Mat.-Nr. Verkäufer Datum Einf.haus Stadtvilla Villa Waldweg 8 Talstr. 19 Bergstr. 5 Feldstr. 12 Fenster Türen Fenstertüren Alu Holz Holz-Alu Plast 567483 678862 580081 580100. 768321 680083 Schmidt Müller Meyer Bach Schenk 05.01.01 15.02.01 16.03.01 03.04.01. 14.05.01 Alle Attribute sind vom ID-Schlüssel voll abhängig. Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Transitive Abhängigkeit Ein Attribut C ist von einem Attribut A transitiv abhängig, wenn das Attribut B von A und das Attribut C von B, aber das Attribut A nicht von C funktional abhängig sind. Das gleiche gilt für Attributkombinationen von A, B, C A B C A aber transitiv A C ANr GNr Gw ANr aber transitiv ANr C Das Attribut Gewerkname ist von der Arbeiter-Nr. transitiv abhängig, weil GNr Gewerkname und ANr GNr, jedoch Gewerkname ANr. ANr GNr Gewerkname 5230 5383 6858 7564 8850 230 340 360 400 Maurer Zimmerer Dachdecker Gerüstbauer Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung 1. Normalform Eine Tabelle befindet sich in der 1. Normalform, wenn alle Attribute nur noch einfache Attributwerte enthalten. Objekt Adresse Elemente Material SNr. Lieferf-Fa L-Datum Einf.haus Stadtvilla Villa Wallstr. 8 Talstr. 19 Bergstr. 5 Feldstr. 2 Fenster Türen Fenstertüren Alu Holz Holz-Alu Plast 567483 678862 580081 580100. 768321 680083 F & T B. Müller Meyer Bau-Holz 05.01.01 15.02.01 16.03.01 03.04.01 14.05.01 ONr Objekt Adresse ENr Elemente Material SNr FNr Liefer-Fa L-Datum 1 2 3 4 Einf.haus Stadtvilla Villa Waldweg 8 Talstr. 19 Bergstr. 5 Feldstr. 12 1 2 3 4 5 6 Fenster Türen Fenstertüren Alu Holz Plast 567483 678862 580081 580100. 768321 680083 1 2 3 4 F & T B. Müller Meyer Bau-Holz 05.01.01 15.02.01 16.03.01 03.04.01. 14.05.01 Es werden zusätzlich die Attribute 0Nr, ENr, FNr eingefügt, welche die baulichen Objekte, die einzubauenden Artikel (Fenster und Türen) und die Lieferfirmen klar definieren. Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung 2. Normalform Eine Tabelle befindet sich in der 2. Normalform, wenn sie schon in der .1. Normalform ist und jedes nicht zum ID-Schlüssel gehörende Attribut voll abhängig vom ID-Schlüssel ist. c m Elemente 1 Lieferung Objekte FNr L-Fa L-Datum ENr ONr 1 2 3 4 F & T B. Müller Meyer Bau-Holz 05.01.01 15.02.01 16.03.01 03.04.01. 14.05.01 1 2 3 4 5 1 2 3 4 Durch die Aufteilung in 3 Tabellen ist für jede der 3 Tabellen die 2. Normalform erreicht. Aber: eine der Lieferfirmen kann nicht erfasst werden Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung 3. Normalform Eine Tabelle befindet sich in der 3. Normalform, wenn sie schon in der .2. Normalform ist und kein Nichtschlüsselattribut vom ID-Schlüssel transitiv abhängt, d. h. keine Abhängigkeit untereinander außer zum ID. Tabellen in der 3. Normalform werden als normalisiert bezeichnet Ergebnis: 4 Tabellen Redundanzen so aufgeteilt, dass jede Tabelle in sich redundanzfrei ist c m Elemente 1 Lieferung Lieferfirma mc Objekte ONr ENr L-Datum FNr 1 2 3 4 1 2 3 4 5 05.01.01 15.02.01 16.03.01 03.04.01 14.05.01 1 2 3 FNr Lieferfirmen 1 2 3 4 F & T B. Müller Meyer Bau-Holz Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung 4. Normalform (Höhere Normalform, Globale Normalisierung) Eine Tabelle befindet sich in der 4. Normalform, wenn sie schon in der .3. Normalform ist und nur noch lokale und globale Attribute existieren. Definition: Lokale Attribute: Attribute die nur in einer Tabelle vorkommen und die nicht zum ID gehören Globale Attribute: Attribute, die in mindestens einer Tabelle den ID mit bilden Schwimmkran müsste 2mal aufgenommen werden Transformation: Generalisieren Kran Schwimmfahrzeug  Baumaschinen Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Normalisierungsprozess c m Baul. Objekte Fenster / Türen 1 1 m c Lieferung Buttom-UP Entwurfsstrategie mc 1 Lieferfirmen Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Problem der Normalisierung  immer mehr Tabellen Reduziert die Übersichtlichkeit Erhöht den Eingabeaufwand und macht ihn komplexer (viele IDs, die i. d. R. nur Kodenummern sind) Erhöht die Komplexität der Abfragen (die verschachtelte Struktur muss in der Abfrage abgebildet werden, so sind z. B. die Türen eines Geschosses in sehr vielen Spezialtabellen zerstreut  Abhilfe: Ontologie) Verringert die Geschwindigkeit Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung Optimale Normalform Eine Mischung zwischen Übersichtlichkeit und Einfachheit und der Redundanzfreiheit Vergleichsweise: Redundanzfreiheit  4. Normalform erfüllt Redundanzkompromisse festlegen, um die Konsequenzen ´ überblicken zu können Konsequenz: alle Redundanzen müssen durch Zusatzprogramme 100prozentig kontrolliert werden, so dass keine Mutationsanomalien entstehen können. Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Wertebereiche von Attributen Statischer Wertebereich: der Wertebereich ist festgelegt: a) begrenzte vorgegebene Menge von Werten, z. B. Farben b) begrenzte, vorgegebene Elemente, aus denen die Werte gebildet werden können, z. B. Anzahl der Zeichen für die Namen, Anzahl der Bytes für Integerzahlen c) zusätzliche Anschlusskriterien: Plausibilitätsbedingung Dynamischer Wertebereich: ist der Wertebereich für einen Fremdschlüssel. Der Fremdschlüssel wird aus einem ID-Schlüssel gebildet. Der Wertebereich ist durch die Werte, die die ID Schlüsselattribute bisher besitzen, begrenzt. Es können aber neue ID-Schlüssel-Werte eingegeben werden  dynamisch Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Strukturregeln für den Datenbankentwurf Jede Tabelle muss einen ID besitzen Eine Datenbasis muss in der 3. Normalform sein (Ausnahmen) Lokale Attribute müssen statische Wertebereiche verwenden Globale Attribute dürfen nur in 1 Tabelle einen statischen Wertebereich besitzen und sind der ID Rekursive Relationen sind verboten Fremdschlüssel nur von Tabellen (B), die von aktueller Tabelle (A) unabhängig sind Generalisierung / Spezialisierung immer angeben diskreminierendes Attribut muss bei vollständiger Überdeckung angegeben werden. Bei Fremdschlüssel diejenigen Bezugstabellen bezeichnen die größtmögliche Wertebereichsbeschränkungen bringen Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Vorgehensweise beim Datenbankentwurf Buttom-UP Entwurfsstrategie Globale Normalisierung Lokalattribute definieren Konsistenzbedingungen Transaktionen formulieren Ende Start Aufgabe definieren Entitätsmengen bilden Beziehungen festlegen Identifikationsschlüssel durchführen formulieren definieren Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung .A.) Grobentwurf .1. WER – WEN - WAS .2. Beziehungen festlegen alles hinschreiben, auch Widersprüche (um sie anschließend schrittweise auflösen zu können Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

B.) Globale Normalisierung (NF4) .schrittweise durchführen rekursive Abhängigkeit entfernen volle Spezialisierung konditionelle und netzwerkförmige Beziehungen NF4 nur noch lokale und globale Attribute auch innerhalb eines Schritt(bereich)es ist schrittweise vorzugehen, da sonst .a) etwas übersehen wird .b) unnötige Entitäten entstehen .. Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

C.) Jede Tabelle mindestens in 3. NF bringen „Ob eine Tabelle als normalisiert betrachtet werden kann, hängt weitgehend von der Aufgabenstellung und den Anforderungen an die Datenkonsistenz ab.“ D.) Sinnvolle Auslagerungen /Untertabellen für Attribute mit kleinem Wertebereich (= Unterthemen) E.) Wertebereiche festlegen schriftlich in Tabelle dokumentieren Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

F.) Transaktionen definieren .kann aus mehreren Operationsschritten bestehen „Alles-oder-Nichts“ = wenn ein Transaktionsschritt fehlschlägt, ist der Zustand von der Transaktion wieder herzustellen und alle vorherigen Schritte wieder rückgängig zu machen (oder alles wurde zwischengespeichert) Komplexität von Beziehungen vorgeben G.) Dokumentieren Berichte erstellen (s. Transaktionen - Teilbereich davon) Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung Beispiel: Verwaltung der Personen, die auf einer Baustelle tätig sind .1. Welche Arbeiter sind auf welcher Baustelle zu welcher Arbeit wann eingesetzt und wer war ihr Bauleiter .2. Die Personaldaten werden von der Personalabteilung, die Bauarbeiten vom Bauleiter und der Baustelleneinsatz von dem Projektleiter verwaltet .3. Jede Person ist mit P-NR, Name, Vorname, Funktion und Lohnstufe zu erfassen .4. Bauarbeiten, sind mit BA-Nr, Gewerk, Ort und Art der Arbeit anzugeben .5. Einige Arbeiter können auch Bauleiter sein. Bei diesen internen Bauleitern ist die Berufserfahrung in Jahren anzugeben. Jeder Baustelleneinsatz ist mit Arbeiter, Bauleiter und Einsatzdatum abzuspeichern. Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung

Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung Beispiel .7. Externe Bauleiter sind mit Name, Vorname, Firmenname zu erfassen. Sie werden erst dann abgespeichert, wenn sie auf einer der Baustellen eingesetzt werden. .8. Es ist weiterhin festzulegen Welche Berichte werden benötigt wie ist mit dem System zu arbeiten wer soll das System wie benutzen dürfen Bauinformatik II, Softwareanwendungen 1; 5. Vorlesung