Datenentwurf ◦ Überblick ◦ ?

#### Datenstruktur und Datenfluss

Jede Anwendung verknüpft Daten mit Prozessen. In betrieblichen Anwendungen stehen meist die Daten und ihre Beziehungen im Vordergrund. Die Struktur der Daten ist oft komplexer als jene der beteiligten Prozesse. Der Datenentwurf beginnt deshalb oft mit einer Übersicht über die Datenflüsse zwischen den Prozessen und verfeinert die Daten in Datenbankstrukturdiagrammen. Die Prozesse werden erst in der Phase des Modulentwurfs verfeinert.

Während sich ein Datenbankstrukturdiagramm auf die statische Struktur der Datenbestände einer Anwendung konzentriert (siehe unten), beschreibt ein Datenflussdiagramm die dynamischen Verbindungen zwischen logischen Datenspeichern und Prozessen. Das Datenflussdiagramm von TESTS gibt einen einfachen Überblick über die Kommunikation zwischen der Autorenkomponente Testverwaltung.mdb und den Darbietungskomponente für Access und Web Quizzes.

Logisches Datenflussdiagramm

Physisches Datenmodell

#### Datenmodelle

Die moderne Datenbanktechnologie ermöglicht die Konzentration auf die betrieblichen Aspekte des Datenentwurfs. Die physische Datenspeicherung und -manipulation ist zwar immer noch wichtig, technische Restriktionen verlieren aber an Bedeutung. Stattdessen rückt der konzeptuelle und logische Datenentwurf in den Vordergrund.

Ein konzeptuelles Datenmodell bildet die Daten einer Miniwelt - zum Beispiel einer Fachabteilung - auf bestehende und künftige Anwendungen ab. Es kümmert sich dabei kaum um die Einschränkungen physischer Datenbanksysteme. Das logische Datenmodell geht hingegen von einer bestimmten Klasse von DBMS aus, zum Beispiel von relationalen Datenbanksystemen. Es abstrahiert aber immer noch von den Anforderungen eines bestimmten Softwareprodukts. Erst das physische Modell passt das logische Datenmodell dem verwendeten Produkt an. Der Entwickler entwirft zuerst das konzeptuelle Datenmodell und verfeinert es in der Regel in ein logisches Datenbankstrukturdiagramm für relationale Datenbanksysteme. Erst in der Implementationsphase folgt die endgültige Anpassung an ein bestimmtes Datenbankprodukt.

#### Entwurfsziele

An der Grenze zwischen konzeptueller und logischer Modellierung liegen zwei wichtige Datenentwurfsziele, die Minimierung von Redundanz und die Minimierung der Datenabhängigkeit:

- Rendundanz minimieren heisst die Entitäten des logischen Datenbankmodells nach den Regeln der Normalisierungstheorie in Tabellen spalten, welche die Wahrscheinlichkeit von Anomalien verringern, die beim unüberlegten Datenentwurf auftreten.

- Die Datenabhängigkeit (besser "die Daten-Programm-Abhängigkeit") minimieren heisst die Abhängigkeit der Benutzerprogramme von Änderungen der Datenbankstruktur möglichst klein halten.