Der Weg von der Idee zur fertigen Datenbank – Die Phasen der Datenbankentwicklung

Prinzipiell durchläuft die Datenbankentwicklung vier Phasen, in welchen versucht wird, folgende Fragen zu beantworten:

  • Welche Informationen möchten welche Datenbankbenutzer aus der Datenbank ziehen?
  • Wie sollen die in der Datenbank gespeicherten Daten angeordnet und verknüpft werden?
  • In welchem logischen Zusammenhang stehen die einzelnen Datenmengen?
  • Wie kann das relationale Datenbankmodell mit Hilfe eines DBMS in Form einer zunächst leeren Datenbank umgesetzt werden?

Während die Forderung nach Redundanzfreiheit am Beispiel der Personen einer Schuldatenbank bereits erklärt und begründet wurde, sollen nachfolgend die Bedingungen erläutert werden, welche – neben der Redundanzfreiheit –  die Datenintegrität gewährleisten.

Auf den kommenden Seiten wird zum Zweck der Konkretisierung das Beispiel einer Schuldatenbank verwendet, wobei der Rückgriff auf dieses Beispiel farblich gekennzeichnet ist.

 

Externe Phase: Welche Informationen möchten welche Datenbankbenutzer aus der Datenbank erhalten?

Jede Datenbank bildet einen Ausschnitt aus der Realität ab. Daher werden nicht alle Informationen detailliert, sondern vielmehr auf vereinfachte Weise und auf wichtige Merkmale beschränkt abgebildet. So ist z.B. in einer Schuldatenbank irrelevant, welche Schuhgröße ein Schüler hat.
Um den relevanten Realitätsausschnitt samt der für den/die Benutzer relevanten Informationen auszuwählen, ist es sinnvoll, dessen/deren Perspektive auf die Realität einzunehmen, um die Datenbank anforderungsgerecht zu entwickeln. Bei der Bestimmung der Informationsauswahl soll einerseits der Informationsoutput erfasst werden, also welche Daten mit Hilfe des Datenbanksystems ausgegeben werden sollen, andererseits muss aber auch geklärt werden, welche Informationen dafür bereitzustellen sind (Informationsinput). Dabei ist eine systematische Vorgehensweise sinnvoll und auch notwendig.

Beispiel Schuldatenbank:
Welche Informationen sollen aus der Datenbank gezogen werden können?
– Personendaten der SchülerInnen
– Klassenbezeichnungen
– Klassenzugehörigkeiten der SchülerInnen
– Personendaten der Lehrkräfte
– Fachbezeichnungen
– Raumbezeichnungen
– Bestandteile des Unterrichts: Klasse, Raum, Fach, Lehrkraft

Konzeptionelle Phase: Wie sollen die in der externen Phase ermittelten Daten angeordnet und verknüpft werden?

Die in der externen Phase ermittelte Informationsauswahl wird in Objektmengen (daraus entstehen die einzelnen Relationen) und deren Beziehungen untereinander aufgelöst, womit die Informationsauswahl in eine Informationsstruktur überführt wird.
Das Ergebnis ist ein semantisches Modell (Semantik: Bedeutung eines Textes o.a.), bestehend aus wenigen Symbolen, um die Verständlichkeit zu gewährleisten. Das Modell nennt man Entity-Relationship-Modell (Objektmengen-Beziehungs-Diagramm oder ER-Modell).

Beispiel Schuldatenbank:
– Die Objektmengen werden sein: schüler, klasse, lehrkraft, raum, fach (Um der Vereinfachung Willen werden
alle Relationsbezeichnungen klein sowie, der internationalen Konvention entsprechend, im Singular bezeichnet.
Zudem wird im Folgenden auf die Unterscheidung der Geschlechter verzichtet.)
;
– Die Verknüpfungen müssen erstellt werden zwischen:
– schüler und klasse
– klasse und lehrkraft
– klasse und raum
– raum und lehrkraft
– lehrkraft und fach
– fach und raum

Logische Phase: In welchem logischen Zusammenhang stehen die einzelnen Datenmengen?

Das in der konzeptionellen Phase entwickelte semantische ER-Modell wird in ein logisches ER-Modell, und dieses sodann in ein relationales Datenbankmodell übertragen. Die beiden Modelle unterscheiden sich hinsichtlich des Infomationsgehaltes: wärend das logische ER-Modell lediglich die Relationen der späteren Datenbank und die Beziehungen untereinander darstellt, enthält das relationale Datenbankmodell zusätzlich die Angaben darüber, welche Informationen konkret in die Relationen aufgenommen werden sollen. Das DBMS kann z.B. nicht erkennen, worum es sich bei einer Schulklasse oder einem Schüler bzw. einer Schülerin handelt. Das ist auch nicht von Relevanz. Viel wichtiger ist es, dass dem DBMS mitgeteilt wird, dass jedem Schüler/jeder Schülerin genau eine Klasse zugeordnet wird, eine Klasse wiederum mehreren Schülern/Schülerinnen zugeordnet werden kann.

Die einzelnen Datenbankmodelle und die Unterschiede zwischen ihnen werden auf den kommenden Seiten erarbeitet.

Beispiel Schuldatenbank:
– Ein Schüler kann nur einer Klasse angehören, wobei eine Klasse mehrere Schüler haben kann.
– Eine Klasse kann mehrere Lehrkräfte haben, wobei eine Lehrkraft mehrere Klassen (jeweils nicht gleichzeitig)
unterrichten kann.
– Eine Klasse kann sich in mehreren Räumen befinden, wobei sich in einem Raum mehrere Klassen aufhalten
können (jeweils nicht gleichzeitig).
– Eine Lehrkraft kann mehrere Fächer unterrichten, wobei ein Fach von mehreren Lehrkräften unterrichtet werden
kann.
– Ein Fach kann in mehreren Räumen unterrichtet werden, wobei in einem Raum mehrere Fächer unterrichtet
werden können.

Physische Phase: Wie kann das relationale Datenbankmodell mit Hilfe eines DBMS in Form einer zunächst leeren Datenbank umgesetzt werden?

Das in der logischen Phase erarbeitete relationale Datenmodell wird in einem Datenbankmanagementsystem, wie z.B. MS Access, implementiert, d.h. in eine eine (zunächst leere) Datenbank überführt.

Im folgenden Kapitel werden wir uns die konzeptionelle sowie die logische Phase näher ansehen.