Microsoft Technologies In-Depth
   for IT Managers and Developers


   May/June 2002
       
 
UML Collaboration Diagrams

In well-designed software systems, powerful business objects work together to accomplish a variety of tasks. UML collaboration diagrams are great tools for documenting the flow of messages between objects while providing a unique perspective—a view of the relationships between collaborating objects.

By Kevin McNeish

t the very heart of any complex software application are business objects. As the user interacts with the software, business objects respond by carrying out requested actions such as performing calculations and retrieving, validating, and manipulating data.

Often, business objects need to call on the services of other business objects to accomplish a particular task. There are two diagrams in the Unified Modeling Language (UML) that help to document and describe this interaction—sequence diagrams and collaboration diagrams. Collectively, both of these are known as interaction diagrams.

Although they both describe object interaction, sequence diagrams focus on showing the order in which messages are sent between objects. In contrast, collaboration diagrams focus on the relationships between the collaborating objects.

Why use Collaboration Diagrams?
Of the two types of interaction diagrams, sequence diagrams seem to be used far more than collaboration diagrams. So, why would you use collaboration diagrams?

Collaboration diagrams allow you to see both the dynamic aspects and static relationships of business objects in a single diagram.
First of all, they are very useful for visualizing the relationship between objects collaborating to perform a particular task. This is difficult to determine from a sequence diagram. In addition, collaboration diagrams can also help you determine the accuracy of your static model (i.e., class diagrams). Some developers take the step of creating static models of their business objects, but don't "prove" their models by creating associated dynamic models. Once you put your classes into action (or interaction), you can often see flaws in your static model that may not have been discovered otherwise.


 
From Sequence Diagram to Collaboration Diagram

Why use Collaboration Diagrams? From Sequence Diagram to Collaboration Diagram Creating a Collaboration Diagram


 




 TALK BACK
Have you found collaboration diagrams to be useful in finding flaws in your static models? Do you often use collaboration diagrams or do you find them more trouble than they're worth? Click here to Join
 Sidebars
What is the UML?

Where to Learn More

Get Your CoDe Magazine Trial Issue Now!





 
Copyright Component Developer Magazine and EPS Software Corp., 2002
Sponsored Links

Advertising Info  |   Member Services  |   Contact Us  |   Help  |   Feedback  |   Site Map
Jupiterweb networks

internet.comearthweb.comDevx.comClickZ

Search Jupiterweb:

Jupitermedia Corporation has four divisions:
JupiterWeb, JupiterResearch, JupiterEvents, and JupiterImages

Copyright 2004 Jupitermedia Corporation All Rights Reserved.
Legal Notices, Licensing, Reprints, & Permissions, Privacy Policy.

Jupitermedia Corporate Info | Newsletters | Tech Jobs | E-mail Offers

Copyright Information/Privacy Statement