Linea guida: Diagramma di comunicazione
Un diagramma di comunicazione è una costruzione UML utilizzata per mostrare come gli oggetti interagiscono per eseguire la funzionalità di uno scenario di caso d'uso. Questa linea guida descrive la notazione UML per questo costrutto.
Relazioni
Descrizione principale

Introduzione

Icona UML Diagramma di collaborazione è stato ridenominato in Diagramma di comunicazione. Per maggiori informazioni, fare riferimento alla sezione Differenze tra UML 1.x e UML 2.0.

I diagrammi di comunicazione vengono utilizzati per mostrare come gli oggetti interagiscono per eseguire la funzionalità di un particolare caso d'uso o di una parte di un caso d'uso. Insieme ai diagrammi di sequenza, i diagrammi di comunicazione vengono utilizzati dai progettisti per definire e chiarire i ruoli degli oggetti che eseguono un particolare flusso di eventi di un caso d'uso. Essi sono la fonte primaria di informazioni utilizzata per determinare le interfacce e responsabilità delle classi.

Diversamente da un diagramma di sequenza, un diagramma di comunicazione mostra le relazioni tra gli oggetti. I diagrammi di sequenza e di comunicazione presentano informazioni analoghe, ma mostrate in modo diversi. I diagrammi di comunicazione mostrano le relazioni tra gli oggetti e sono preferiti per comprendere tutti gli effetti su un dato oggetto e per la progettazione procedurale.

A causa del formato del diagramma di comunicazione, tali diagrammi si adattano maggiormente alle attività di analisi (consultare Compito: Analisi del caso d'uso). Nello specifico, tendono ad essere più adatti a descrivere semplici interazioni di un numero più piccolo di oggetti. Al crescere del numero di oggetti e di messaggi, il diagramma diventa notevolmente più difficile da leggere. Inoltre. è difficile mostrare informazioni descrittive aggiuntive come la tempificazione, i punti di decisione o altre informazioni non strutturate che possono essere facilmente aggiunte alle note in un diagramma di sequenza.

Contenuto dei diagrammi di comunicazione

E' possibile avere oggetti ed istanze di attori nei diagrammi di comunicazione, insieme ai collegamenti e ai messaggi che descrivono come sono associati e in che modo interagiscono. Il diagramma descrive ciò che avviene negli oggetti che partecipano, in termini di come comunicano tra loro mediante l'invio di messaggi. E' possibile effettuare un diagramma di comunicazione per ciascuna variante del flusso di eventi di un caso d'uso.

Diagramma descritto nel testo di accompagnamento.

Un diagramma di comunicazione che descrive parte del flusso di eventi del caso d'uso Ricevi articolo di deposito nel Sistema di una macchina di riciclaggio.

Oggetti

Un oggetto è rappresentato da un simbolo che mostra il nome dell'oggetto e la relativa classe sottolineata, separati dai due punti:

nome oggetto : nome classe

E' possibile utilizzare gli oggetti nei diagrammi di comunicazione nei seguenti modi:

  • La classe di un oggetto può essere non specificata. Di solito si crea prima un diagramma di comunicazione con gli oggetti e successivamente si specificano le relative classi.
  • Gli oggetti possono non avere nomi, ma è preferibile nominarli se si desidera distinguere i diversi oggetti della stessa classe.
  • La classe di un oggetto può essere rappresentata in un diagramma di comunicazione, se partecipa attivamente all'interazione.

Attori

Di solito l'istanza di un attore è presente nel diagramma di comunicazione, come richiamante dell'interazione. Se si hanno diverse istanze di attori nello stesso diagramma, provare a tenerle ai margini del diagramma.

Collegamenti

I collegamenti sono definiti nel modo seguente:

  • Un collegamento è una relazione tra oggetti mediante il quale i messaggi possono essere inviati. Nei diagrammi di comunicazione, un collegamento viene mostrato come una linea ininterrotta tra due oggetti.
  • Un oggetto interagisce con o naviga verso altri oggetti attraverso i collegamenti a questi oggetti.
  • Un collegamento può essere un'istanza di un'associazione o anonimo, il che significa che la relativa associazione non è specificata.
  • I flussi dei messaggi sono allegati ai collegamenti, consultare Messaggi.

Messaggi

Un messaggio è una comunicazione tra oggetti che trasporta informazioni con l'aspettativa quella attività conseguirà. Nei diagrammi di comunicazione, un messaggio viene mostrato come una freccia con etichetta posta accanto a un collegamento. Ciò significa che il collegamento è utilizzato per trasportare o altrimenti implementare la consegna del messaggio all'oggetto di destinazione. La freccia punta lungo la linea nella direzione dell'oggetto di destinazione (l'oggetto che riceve il messaggio). La freccia è etichettata con il nome del messaggio e con i relativi parametri. La freccia può anche essere etichettata con un numero di sequenza per mostrare la sequenza del messaggio nell'interazione complessiva. I numeri di sequenza sono spesso utilizzati nei diagrammi di comunicazione, poiché rappresentano l'unico modo per descrivere la relativa sequenza dei messaggi.

Un messaggio può essere non assegnato, il che significa che il relativo nome è una stringa temporanea che descrive il significato complessivo del messaggio. E' possibile successivamente assegnare il messaggio specificando l'operazione della destinazione del messaggio. L'operazione specificata sostituirà quindi il nome del messaggio.