Communication Diagram
Da Wikipedia, l'enciclopedia libera.
Un Communication Diagram (o Collaboration Diagram come era chiamato nelle specifiche dell'Unified_Modeling_Language 1.x) è un diagramma previsto da Unified_Modeling_Language 2 per descrivere l'interazione fra più partecipanti alla realizzazione di una certa funzionalità. Insieme al Sequence_Diagram fa parte dei cosiddetti diagrammi di interazione (Interaction diagrams), che sono spesso utilizzati per specificare come collaborano i vari componenti del software.
[modifica] Componenti
I componenti più importanti del diagramma sono i Partecipanti (o Oggetti come era consuetudine chiamarli nelle versioni del linguaggio precedenti alla 2) e i Messaggi. I messaggi sono scambi di informazione fra due partecipanti e possono essere sincroni o asincroni a seconda se il chiamante resti bloccato in attesa della risposta al messaggio oppure prosegua la sua elaborazione in parallelo al partecipante che ha ricevuto il messaggio.
I messaggi sono numerati, al fine di comprendere la loro sequenza temporale. Peraltro, l'aspetto temporale dell'interazione è più facilmente rappresentata facendo ricorso ad un Sequence_Diagram. La numerazione può essere semplice (1, 2, 3 ...) oppure decimale nidificata (1, 1.1, 1.1.1, ... 2 ...). La numerazione decimale nidificata è quella più aderente allo standard ed ha il pregio che consente di risolvere un'ambiguità nella sequenza temporale nel caso di deleghe interne, ossia di messaggi che un oggetto invia a se stesso. Tuttavia, in caso di nidificazione profonda, questo tipo di numerazione perde in leggibilità, e per questo motivo nella pratica si utilizza spesso la numerazione semplice.