Build hierarchies of signals so that you exploit the common properties of related signals.
Be sure you have a suitable state machine behind each element that may receive the event.
Be sure to model not only those elements that may receive events, but also those elements that may send them.
When you draw an event in the UML,
In general, model hierarchies of events explicitly, but model their use in the backplane of each class that sends or receives such an event.