prev up next

UML

Im Bereich Software Engineering hat sich die objektorientierte Modellierung mit Hilfe von UML (Unified Modelling Language) durchgesetzt. Dieser Formalismus lässt sich auch für den Datenbankentwurf benutzen.


Abbildung 2.10: UML: Klassen und Assoziationen

Abbildung 2.10 zeigt die beiden Klassen Studenten und Vorlesungen, die neben den Datenfeldern auch Methoden aufweisen, welche das Verhalten beschreiben. Öffentlich sichtbare Komponenten werden mit + gekennzeichnet; Methoden sind an den beiden Klammern () zu erkennen und Datentypen werden nach dem Doppelpunkt : genannt. Beziehungen zwischen den Klassen werden durch Assoziationen ausgedrückt, welche Aufgrund der Implementierung durch Referenzen über eine Richtung verfügen: So lassen sich effizient zu einem Studenten die Vorlesungen ermitteln, umgekehrt ist das nicht (so leicht) möglich. Am Ende der Pfeile sind jeweils die Rollen vermerkt: Hörer, gehört, Nachfolger und Vorgänger. Die sogenannte Multiplizität drückt die von der (min,max)-Notation bekannte Komplexität aus, allerdings jeweils am anderen Ende notiert: mindestens drei Hörer sitzen in einer Vorlesung; ein Student kann beliebig viele Vorlesungen besuchen.


Abbildung 2.11: UML: Generalisierung

In der Abbildung 2.11 werden Assistenten und Professoren zu Angestellten verallgemeinert. Die gemeinsamen Datenfelder lauten PersNr und Name. Da sich die Berechnung des Gehaltes bei Assistenten und Professoren unterscheidet, erhalten sie beide ihre eigenen Methoden dafür; sie verfeinern dadurch die in der Oberklasse vorhandene Methode Gehalt(). Die Steuern hingegen werden bei beiden nach demselben Algorithmus berechnet, daher reicht eine Methode Steuern() in der Oberklasse.


Abbildung 2.12: UML: Aggregation

Durch eine schwarze Raute wird in Abbildung 2.12 eine Komposition ausgedrückt, welche die Modellierung eines schwachen Entity-Typen übernimmt. Die Beziehung zwischen Studenten und Prüfungen wird durch eine Assoziation mit dem Namen ablegen modelliert; der Student übernimmt dabei die Rolle eines Prüfling. Die Beziehung zwischen Professoren und Prüfungen wird durch eine Assoziation mit dem Namen abhalten modelliert; der Professor übernimmt dabei die Rolle des Prüfer. Die Beziehung zwischen Vorlesungen und Prüfungen wird durch eine Assoziation mit dem Namen umfassen modelliert; die Vorlesung übernimmt dabei die Rolle des Prüfungsstoff.


prev up next