next up previous contents index
Next: 4. Möglichst realitätsgetreue Modellierung Up: Gewinnung eines geeigneten Objektmodells Previous: 2. Neue Subklassen anstelle

3. Operationen anstelle von ,,Pushbutton``-Variablen

 

Das Problem der sogenannten ,,Pushbutton``-Variablen, welches in der SNMP-MIB bestand, ist auch in der ersten Version des Objektmodells (siehe Abbildung [*]) enthalten: Eine Operation auf einem Objekt (und damit auf der entsprechenden Systemkomponente) muß dadurch ausgelöst werden, daß einem Objektattribut ein Wert zugewiesen wurde. Hinsichtlich der Semantik einer Operation ist dies generell fragwürdig, da auf den ersten Blick nicht zwischen einem Wertattribut und einem ,,Pushbutton``-Attribut unterschieden werden kann. Beim objektorientierten Ansatz ist dieses Problem jedoch sehr leicht zu lösen: An die Stelle der ,,Pushbutton``-Variablen treten Operationen. Für jeden möglichen Wert einer ,,Pushbutton``-Variablen wird dabei eine eigene Operation eingeführt. Ein Beispiel hierfür ist das Attribut cpuAction der Processor-Klasse. Für die fünf Werte, die dieser Variable ursprünglich zugewiesen werden konnten, werden nun die entsprechenden Operationen enable(), disable(), lock(), unlock() und shuttingdown() eingeführt. Die bisherige Wertzuweisung cpuAction:=1, ausgeführt durch das Senden einer SNMP set-Protokolldateneinheit an den Agenten, entspricht nun einem Aufruf der Operation enable(). Da diese fünf Operationen in vielen Komponenten eines Systems ebenfalls auftreten, wurden auch sie in die Klasse Generic_Device aufgenommen (siehe Abbildung [*]).


  
Abbildung: Optimiertes Objektmodell für das Workstation-Management (Ausschnitt)


next up previous contents index
Next: 4. Möglichst realitätsgetreue Modellierung Up: Gewinnung eines geeigneten Objektmodells Previous: 2. Neue Subklassen anstelle
Copyright Munich Network Management Team