A communication diagram shows the relationships between objects and the messages passed between them to perform a particular task. It focuses on object relationships rather than the time sequence like a sequence diagram. Communication diagrams are useful for visualizing how objects collaborate and coordinate to control flow. Objects are represented by lifelines and linked with associations. Messages are shown as arrows along the associations and are numbered to maintain order. Communication diagrams can be used to automatically generate test cases that represent the message passing and sequences between objects.