|
modellierung |
Für uns steht die Datenmodellierung
am Anfang des Design- und Entwicklungsprozesses. Das Datenmodell sollte
nicht als letzter Schritt eines Datenbankprojektes - z.B. durch Reverse Engineering -
gewonnen werden und alleine Dokumentationszwecken dienen. Zum einen ist ein solches
Datenmodell nach kurzer Zeit überholt, zum anderen bleiben dadurch mächtige Instrumente
des Computer Aided Software Engineerings unbenutzt.
Vielmehr sollte das Datenmodell im ersten Schritt aufgebaut und als Grundlage
der weiteren Entwicklung verwendet werden. Dies ermöglicht einerseits eine vereinfachte
Darstellung und ein verbessertes Verständnis komplexer Sachverhalte und Zusammenhänge.
Andererseits werden dadurch die Pflege, Änderbarkeit und Erweiterbarkeit existierender
Datenbank-Strukturen wesentlich unterstützt.
Das Datenmodell sollte wenn möglich zur Code-Generierung eingesetzt werden.
Dabei kann die Code-Erzeugung neben "klassischen" Objekttypen, wie Tabellen und Views, auch
prozedurale Objekte - Prozeduren, Packages oder Trigger - sowie Synonyme, Sequenzen,
Typen etc. umfassen. Im Idealfall können die kompletten Datenbankstrukturen aus dem
Datenmodell (neu) erzeugt werden.
Da es am Anfang der Entwicklungskette steht, sollte das Datenmodell der Master
sein: Jede Änderung und jede Erweiterung wird zuerst ins Datenmodell eingebaut, daraus wird der
entsprechende Code generiert und erst dann wird die Datenbank geändert. Ein sauberer Prozeß
mit klaren Rollen - Datenmodell ist Master; Datenbank Slave - trägt zur Vereinfachung der
Entwicklung sowie zur Vermeidung von Kollisionen und Inkonsistenzen bei.
Das nachfolgende Beispiel zeigt einen Ausschnitt aus einem in CA-ERwin erzeugten
Datenmodell. Der daraus generierte Code - einschließlich
weiterer, über Makros generierten Objekte - ist ebenfalls angegeben.
|
 |
 |
|
|