How to Draw UML Communication Diagram?

Communication diagram is a kind of UML diagram shows interactions between objects, parts or sub-system. UML communication diagram provides similar detail as UML sequence diagram without time information. This tutorial, we are going to model the money-transfer operation of an online banking system with Visual Paradigm, to see how objects communicate with each others.

March 24, 2010
Views: 112,386
PDF Download

Drawing a Communication Diagram

  1. Create a new project. Name it Online Banking.
  2. To create a Communication Diagram, select Diagram > New from the toolbar.
  3. In the New Diagram window, select Communication Diagram and click Next.
  4. Enter Transfer Money as the diagram name and click OK to confirm.
    Create communication diagram in Diagram Navigator
  5. Add swimlanes to model the partitioning of the system. Select Swimlane from the diagram toolbar and click on the diagram to create it. Name it Client.
    Create "Client" Swimlane
  6. Repeat the previous step to create another swimlane, Main frame, below swimlane Client.
  7. Start the story from the actor. Select Actor from the diagram toolbar. Click within the swimlane Client to create an actor, and name it User.
    Create "User" actor
  8. The user will operate the system via the account page. To present this, we need to add a lifeline for Account Page and link it up with the actor User. Move the mouse pointer over actor User. Drag out the Resource Catalog icon at the top right.
    Create "Account Page" Lifeline by resource centric interface
  9. Select Message -> Lifeline from the Resource Catalog. Name the lifeline Account Page.
    select message to lifeline
  10. We want to model the message passing from user to account page. Double-click on the arrow marked 1, enter visit, then click on the background of the diagram to confirm the change. Note that the number next to the message, 1 in this case, represents the order of message flow within the interaction being modeled.
    "Account Page" created
  11. The account page will direct the user's request of transferring money to the main frame for validation and execution. Again, move the mouse pointer over lifeline Account Page and make use of the Resource Catalog to create lifeline Transaction in swimlane Main frame.
  12. Name message 2 as transfer (targetAccount, amount).
    Create "Transaction" Lifeline
  13. The money transfer process involves withdrawing money from the user's account and depositing money into the target account. But before these, we need to make sure the user's account has enough money to undergo the transfer. Make use of the Resource Catalog to create a lifeline User Account from lifeline Transaction. Name message 3 as hasBalance (amount) : boolean.
    User Account created
  14. Once the account balance is checked, we can withdraw money from the user's account. To add the 4th message between lifeline Transaction and User Account, move the mouse pointer over the link between Transaction and User Account, click on the resource icon Create Message and name the message as withdraw (amount).
    Create "withdraw" message between "User Account" and "Transaction" Lifeline
  15. Before we continue, expand the swimlane Main frame first. Select the header of swimlane Main frame, click on the resize handler at the bottom of the swimlane, and drag downwards.
    Expend the "Main frame" Swimlane size
  16. Create a lifeline Target Account from lifeline Transaction. Name the 5th message as credit (amount).
    Create "credit(amount)" message
  17. The transaction is complete. Let's make the lifeline Transaction dispose itself. This time, move the mouse pointer over the lifeline Transaction, then click once on the Resource Catalog icon. Select Self Message -> Lifeline from the Resource Catalog.
    Create Self-message for "Transaction" Lifeline
  18. Name the 6th message as dispose().
    Create "dispose()" message
  19. Finally, we shall display a message on screen, telling the user that the transaction is complete. Move the mouse pointer over the link between lifeline Account Page and Transaction. Click on the resource icon Create Reverse Message. Name the 7th message as displayResult().
    Create Reverse Message
    Finally, the diagram should look like this:
    Complete communication diagram
  20. Save the project by selecting Project > Save from the toolbar. This is the end of the tutorial.