Was ist ein Datenbankentwurf?

Zuletzt aktualisiert: 05.04.2023

Nach (Mathiak, 2012): Bei der (Informations-)Modellierung geht es darum, Elemente aus der „Miniwelt“ (also jener Ausschnitt aus der realen Welt, welcher für die jeweilige Anwendung relevant ist), in ein formales Datenbankschema zu bringen:

Informationsmodellierung
Informationsmodellierung

Dazu braucht es Darstellungselemente und Regeln wie Objekte und Beziehungen (engl. Relationships), Klassen von Objekten und deren Beziehungen sowie Eigenschaften (Attribute). Informations- und Datenmodelle basieren dabei auf drei grundlegenden Abstraktionskonzepten:

  • Der Klassifikation: Diese fasst Objekte (Entities, Instanzen) mit gemeinsamen Eigenschaften zu einem neuen (Mengen-)Objekt (Entity-Menge, Klasse, Objekttyp) zusammen. Instanzen (Objekte) einer Klasse unterliegen dabei gleicher Struktur (Attribute), gleichen Integritätsbedingungen und gleichen Operationen. Mathematisch entspricht dies einer Mengenbildung
  • Der Aggregation: Dies ist die Zusammenfassung potentiell unterschiedlicher Teilobjekte (Komponenten) zu einem neuen Objekt. Mathematisch entspricht dies der Bildung von kartesischen Produkten (vergleiche 2 Relationenmodell)
  • Der Generalisierung: Dies sind Teilmengenbeziehungen zwischen Elementen verschiedener Klassen. Mathematisch entspricht dies der Bildung von Potenzmengen (bzw. Teilmengen); wesentlich dabei ist die Vererbung von Eigenschaften an Teilmengen

Welche Phasen der Modellierung gibt es?

Die Phasen einer Modellierung entsprechen sinngemäß einzelnen Phasen einer Software-Entwicklung (vergleiche Studienbrief Informatik – Phasen der Software-Entwicklung):

Allgemeine Vorgehensweise beim Datenbank-Entwurf
Allgemeine Vorgehensweise beim Datenbank-Entwurf 

In der Anforderungs- und Analysephase wird die Informationsstruktur des Datenmodells ermittelt und geplant. Dazu wird der Informationsbedarf der Benutzer ermittelt und strukturiert. Es muss herausgefunden werden, welche Informationen das Datenbanksystem liefern soll (Output) und welche Informationen dafür bereitzustellen sind (Input). Für diese Analyse eignen sich Use-Case-Diagramme sehr gut.

Beispiel eines Use-Case-Diagramms für ein Online-Shop
Beispiel eines Use-Case-Diagramms für ein Online-Shop

Aus dieser Analyse ergibt sich die Informationsstruktur. Der Input bildet später die Datenbasis der Datenbank, der Output die zu erzielenden Ergebnisse wie Benutzersichten, z. B. in Form von Berichten und Formularen.

Um eine Datenbank aufzubauen, muss ein möglichst exaktes Abbild der relevanten Welt definiert werden, ein sogenanntes Datenmodell. Das Datenmodell soll die Miniwelt als den zu analysierenden Teil der realen Welt mit ihrem vollständigen Bedeutungsgehalt, d.h. semantisch vollständig, abbilden. Dazu müssen alle relevanten Objekte und Beziehungen zwischen den Objekten in einem semantischen Datenmodell erfasst und beschrieben werden. Diesen Abschnitt bezeichnet man auch als konzeptionelle Phase.

Für jeden Use-Case können in einem nächsten Schritt beispielsweise mit Hilfe von UML-Kollaborationsdiagrammen die beteiligten Objekte, ihre Beziehungen untereinander und die Operationen auf diesen Objekten identifiziert und modelliert werden. Die folgende Abbildung zeigt dies beispielhaft für obigen Use-Case „process order“:

Kollaborationsdiagramm für einen Use-Case
Kollaborationsdiagramm für einen Use-Case 

Sind alle Objekte identifiziert, so kann hieraus zwecks Umsetzung in ein logisches Modell eine Klassenhierarchie abgeleitet werden, indem gleichartige Objekte zu Klassen zusammengefasst und Klassen spezieller Objekte als Unterklassen allgemeinerer Klassen modelliert werden. Dafür eignen sich Entity-Relationship-Modelle oder UML-Klassendiagramme. 

Attribute und Methoden der Klassen ergeben sich aus den Eigenschaften der Objekte in den Kollaborationsdiagrammen und den Kollaborationsnachrichten zwischen den Objekten. In der folgenden Abbildung ist ein Klassendiagramm zu obigem Kollaborationsdiagramm und dem Use-Case-Diagramm dargestellt:

Klassendiagramm für einen Use-Case
Klassendiagramm für einen Use-Case 

In der physischen Phase der Datenmodellierung wird das logische Modell mit einem konkreten Datenbankmanagementsystem realisiert. Zum erfolgreichen Betreiben einer Datenbank ist eine Datenbanksprache, z. B. SQL, notwendig. 

Es werden Tabellen angelegt, Indexes festgelegt, Tabellen verknüpft, Abfragen definiert, Formulare für Eingaben und Berichte für Ausgaben gestaltet, Benutzerrechte vorgegeben und dergleichen mehr.

Drei-Ebenen-Architektur eines Datenbanksystems
Drei-Ebenen-Architektur eines Datenbanksystems

    👉 Dir gefällt dieser Beitrag?
    Success! Thanks for Your Request.
    Error! Please Try Again.