First page Back Continue Last page Overview Graphics

Beispiel


Notes:

Sehen wir uns obiges Beispiel eines Objektdiagrammes an. Nur zur Klarstellung: Ein Objektdiagramm ist eine Art „Schnappschuss“ einer laufenden Software das zeigen soll, wie zu einem bestimmten Zeitpunkt das Objektprofil im Speicher des Hostsystems aussieht und welche Art und Weise Objekte miteinander in Aktion treten (können).
Als Beispiel seien die Vorgänge rund um einen Verkaufsautomaten genannt. Würden diese softwaretechnisch dargestellt, so hätten wir es wohl zumindest mit einem Objekt „EinKunde“ zu tun, der etwas aus dem Automaten kauft sowie „EinAutomat“, aus dem etwas gekauft wird.
Da es notwendig ist, dass der Kunde weiß, aus welchem Automat er Ware beziehen will, umgekehrt es dem Automaten aber völlig egal sein kann, wem er etwas verkauft, finden wir folgerichtig eine gerichtete Verbindung zwischen EinKunde und EinAutomat: Der Kunde kennt den Automaten, aber umgekehrt nicht.
Die Verbindung, die wir hier finden besteht, um einen Verkaufsvorgang darzustellen, oder kurz: einen „Kauf“, weswegen sie auch so heißt. In dieem Verkaufsvorgang ist der Automat der „Lieferant“, das ist auch sein Rollenname im Diagramm.
Insbesondere ist es wichtig, dass Objekte gleicher Typen auf verschiedenartige Weise miteinander interagieren können. Nehmen wir zum Beispiel eine Technikerin, die den Automat warten soll. Sie ist ebenfalls eine Person und der Schluss liegt nahe, dass sowohl EinKunde als auch EineTechnikerin entweder direkt aus einer Personenklasse instanziert wurden oder doch aus einer daraus abgeleiteten Klassen. Personen können also anscheinend auf unterschiedliche Weise mit Automaten interagieren: Kunden kaufen etwas, Techniker warten. Dafür wurde eine 2. Verbindung „Service“ eingeführt.
Wieder ist es dem Automat egal, von wem er gewartet wird. Daher ist auch diese Verbindung gerichtet, und der Automat hat darin dioe Rolle „Serviceobjekt“.