2.4.1 Nutzerverwaltung

Die Nutzerverwaltung speichert Informationen zu einzelnen Nutzern und Organisationseinheiten (OE) (z.B. Arbeitsgruppen, Projekte). Es ist möglich, Nutzer zu Organisationseinheiten und OE zu anderen Organisationseinheiten zuzuordnen. Die für die Nutzerverwaltung relevanten Teile der Relationenschemata sind: T001_SUBJECT_TYPE, T002_SUBJECT und T003_SUBJECT_TREE. Sie sind in der Abbildung 2.1 grau hinterlegt.

Die Relation r(T002_SUBJECT) enthält Informationen über Nutzer und OE. Die Attribute der Relation sind selbsterklärend, wobei t002_login einzigartig bleiben muss.

Die Relation r(T001_SUBJECT_TYPE) bestimmt die Ausprägung der in T002_SUBJECT abgelegten Objekte und ist damit Fremdschlüssel in T002_SUBJECT. Ein Beispiel für einen Eintrag in T001_NAME ist "'user"' oder "'group"'.

Abhänigkeiten zwischen den Objekten in T002_SUBJECT werden durch einen Selbstbezug oder rekursive Beziehung der Relation r(T003_SUBJECT_TREE) zu sich selbst erzeugt. Dafür werden zwei Fremdschlüssel, die auf die Relation T002_SUBJECT referenzieren, genutzt. Sie agieren nach dem "'Vater-Kind-Prinzip"' und dürfen nicht NULL sein. Dadurch ergeben sich einige Schwierigkeiten bei der Bildung von Gruppen ohne Mitglieder und der Festlegung der Wurzelgruppe. Eine Wurzelgruppe zeichnet sich dadurch aus, dass sie niemals das Kind einer andern Gruppe ist. D.h. sie ist in der Spalte der Kinder nicht vorhanden. Dieses Merkmal ist nicht eindeutig und somit besteht die Möglichkeit mehrerer Wurzelgruppen.
Die weitere Schwierigkeit besteht darin, eine Gruppe ohne Mitglieder zu erstellen. Es müßte einen Eintrag in T002_SUBJECT_TREE geben, dessen Kindeintrag NULL wäre. Wie eingangs erwähnt, verstößt das gegen die Integrationsbedinungen und kann nur mit "'Dummynutzern"' gelöst werden. Die Visualisierung der Abhänigkeiten muss entsprechend auf diese Eigenheiten reagieren können.

Karl Spies 2006-01-09