In your object-oriented system or software application, objects working together make the application work. Use communication diagrams to show this all-important object collaboration; they should show the following aspects of that cooperation, all at the same time:
Instances of parts linked together for a specific collaboration
Flow of control by showing the numbered sequencing of messages being sent to each part
Flow of data by showing the parameters being passed along with the messages and the return data assigned to the results of a message
Tip Use communication diagrams at design time to explore exactly how your objects work together—and then document your design for programmers to implement.
We use communication diagrams both at systems design time and detailed design time. The system communication diagrams show how the subsystems cooperate to accomplish the system’s use cases. Communication diagrams showing subsystems as objects help us understand the interfaces that each subsystem must provide. At detailed design time, we build communication diagrams to show how the objects inside a subsystem will work together to accomplish the major operations required of the subsystem.