Modellierung mit UML - Teil 2: Konzepte

Ereignisklassen, Ereignisse und Nachrichten

Ereignisklassen sind Abstraktionen, die eine gewisse Art von Ereignis repräsentieren, auf die das System eine einfache Antwort hat. Ein Ereignis, eine Instanz einer Ereignisklasse, ist ein wesentlicher Bestandteil im System. Ein Ereignis kann beispielsweise ein Auslösereiz eines Akteurs (etwa „der UhrBenutzer drückt die linke Taste“), eine Unterbrechung (beispielsweise „nach 2 Minuten“) oder das Senden einer Nachricht zwischen zwei Objekten sein. Das Senden einer Nachricht ist der Mechanismus, mit dem das sendende Objekt die Ausführung einer Operation beim empfangenden Objekt fordert. Die Nachricht besteht aus einem Namen und einer Anzahl von Argumenten. Das empfangende Objekt vergleicht den Namen der Nachricht mit seinen Operationen und übergibt die Argumente an die passende Operation. Jedes Ergebnis wird an das sendende Objekt zurückgegeben.

In der nächsten Abbildung beispielsweise berechnet das einfacheUhr-Objekt die aktuelle Zeit aus der Greenwich-Zeit des Zeit-Objektes und der Zeitdifferenz des Zeitzone-Objektes, die es jeweils durch das Senden der Nachrichten gibZeit() und gibZeitDelta() bekommt.

Ereignisse und Nachrichten sind Instanzen: Sie stellen konkrete Begebenheiten im System dar. Ereignisklassen sind Abstraktionen, die Gruppen von Ereignissen beschreiben, auf die das System eine allgemeine Antwort hat. In der Praxis kann sich der Ausdruck „Ereignis“ auf Instanzen oder Klassen beziehen. Diese Mehrdeutigkeit wird durch Überprüfung des Kontexts, in dem der Ausdruck verwendet ist, beseitigt.