<P> Messages, written with horizontal arrows with the message name written above them, display interaction . Solid arrow heads represent synchronous calls, open arrow heads represent asynchronous messages, and dashed lines represent reply messages . If a caller sends a synchronous message, it must wait until the message is done, such as invoking a subroutine . If a caller sends an asynchronous message, it can continue processing and doesn't have to wait for a response . Asynchronous calls are present in multithreaded applications and in message - oriented middleware . Activation boxes, or method - call boxes, are opaque rectangles drawn on top of lifelines to represent that processes are being performed in response to the message (ExecutionSpecifications in UML). </P> <P> Objects calling methods on themselves use messages and add new activation boxes on top of any others to indicate a further level of processing . If an object is destroyed (removed from memory), an X is drawn on bottom of the lifeline, and the dashed line ceases to be drawn below it . It should be the result of a message, either from the object itself, or another . </P> <P> A message sent from outside the diagram can be represented by a message originating from a filled - in circle (found message in UML) or from a border of the sequence diagram (gate in UML). </P> <P> UML has introduced significant improvements to the capabilities of sequence diagrams . Most of these improvements are based on the idea of interaction fragments which represent smaller pieces of an enclosing interaction . Multiple interaction fragments are combined to create a variety of combined fragments, which are then used to model interactions that include parallelism, conditional branches, optional interactions . </P>

Asynchronous calls can be shown with in ooad