Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 7 years ago.
This one has me stumped regularly while creating top level class diagrams for documentation. Methods and attributes/fields are easy to model.
I usually end up adding a method named EvChanged to indicate a .Net event Changed.
What is the right way to show that a type publishes a specific event?
Just add an «event» stereotype to a classifier attribute.
I find onEventName() the easiest naming scheme for event callbacks, but how to indicate which events an object can broadcast I've not found any solution. An extended UML class diagram that would allow for customized containers (besides the attribute and method contrainers) could be an alternative, if some tool would support it.
I don't think there is any specific UML notation for showing events that a Class can broadcast. To show events that a Class can receive, you want a Reception element. This has a similar notation to an Operation, with the «signal» keyword.
I create a stereotype in the model, "PublishedEvent", with a BaseClass of Operation. I apply the stereotype to the Operations in the class.
Not the type of answer that I like to give, but Microsoft has an answer on the Office website.