A stimulus is a communication between instances that
conveys information with the expectation that action will ensue. A stimulus
will cause an operation to be invoked, raise a signal, or cause an instance
to be created or destroyed.
![A Unified Modeling language diagram example showing a Stimulus communucation betwee instances](images/stimuli.gif)
Different types of stimuli can be used to
model different flows of control:
Type |
Shape |
Description |
Procedure Call or Nested Flow of Control |
![Procedure call or Nested Flow icon](images/stimuli_arrow1.gif) |
Models either a call to an operation or a call to a nested flow
of control. When calling a nested flow of control, the system waits
for the nested flow of control to complete before continuing with
the outer flow. |
Asynchronous Flow of Control |
![Asynchronous Flow of Control icon](images/stimuli_arrow2.gif) |
Models an asynchronous stimulus between two objects. The source
object sends the stimulus and immediately continues with the nest
step. |
Return from a Procedure Call |
![REturn from a Procedure Call icon](images/stimuli_arrow3.gif) |
Models a return from a call to a procedure. This type of stimulus
can be omitted from diagrams because it is assumed that every call
has a return. |
|