Ein Zustand ist mehr als nur ein Name in einer Box. UML erlaubt es, innerhalb eines Zustands festzulegen, welche Aktionen wann ausgeführt werden.
Innerhalb eines Zustands können bis zu drei Arten von Aktivitäten angegeben werden:
Der Zustand „Kaffee kochen“ mit seinen drei inneren Aktivitäten.
Manchmal soll ein Ereignis eine Reaktion auslösen, ohne dass der Zustand tatsächlich verlassen wird. In diesem Fall spricht man von einer internen Transition: Sie wird ebenfalls innerhalb der Zustands-Box notiert, z. B. Taste drücken / Lautstärke anpassen. Ein interner Übergang löst weder die Austritts- noch die Eintrittsaktion aus.
Nicht verwechseln: Eine Wächterbedingung (Guard, geschrieben als [Bedingung]) gehört zum Übergang, nicht zum Zustand selbst. Sie legt fest, ob eine Transition überhaupt ausgelöst werden darf – sie ist keine „Eintrittsaktion“ des Folgezustands, auch wenn sie umgangssprachlich manchmal so genannt wird.