How do you show instantiation in a UML Sequence Diagram?

LeWoody picture LeWoody · Jan 24, 2010 · Viewed 29k times · Source

How do I show that the WebServer instantiates a View and gets back control of the flow? Maybe I'm not using the right type of diagram? Thanks a bunch!

alt text

Answer

Ted Johnson picture Ted Johnson · Jan 24, 2010

The diagram from Ruben's answer is correct, but general UML answer is missing. It creates the other lifeline when the "create" line (dashed in this case) connects to the box/label/top of the created life line. From example: WebServer in it's action creates a View and the action done by the view creates the Widget.

-----
| a |
-----
  |
  []---->-----
  []     | b |
  |      -----
  |        |

There are also several diagrams here.

The UML 2.2 specifications (superstructure) has an example on page 474, Figure 14.11 is their canonical syntax/notation reference. And on page 495 in the notation section it states "Object creation Message has a dashed line with an open arrow." This is further defined in the UML as the message type is an enumeration called MessageSort. One value is:

"• asynchSignal - The message was generated by an asynchronous send action.createMessage - The message designating the creation of another lifeline object."