Linea guida: Associazione di comunicazione
Un'associazione di comunicazione modella il modo in cui i casi d'uso e gli attori interagiscono tra loro mediante l'invio di segnali. Questa linea guida descrive in che modo utilizzare questa relazione.
Relazioni
Descrizione principale

Spiegazione

I casi d'uso e gli attori interagiscono tra loro mediante l'invio di segnali. Per indicare interazioni di questo tipo viene utilizzata un'associazione di comunicazione tra il caso d'uso e l'attore. Un caso d'uso ha un massimo di un'unica associazione di comunicazione per uno specifico attore e un attore ha al massimo un'unica associazione di comunicazione per uno specifico caso d'uso, indipendentemente da quante trasmissioni di segnali esistano. La completa rete di tali associazioni rappresenta un'immagine statica della comunicazione tra il sistema e il proprio ambiente.

Le associazioni di comunicazione non sono nomi forniti. Poiché vi può essere una sola associazione di comunicazione tra un caso d'uso e un attore, è necessario specificare soltanto i punti iniziali e finali per identificare una particolare associazione di comunicazione.

Diagramma descritto nel testo di accompagnamento.

Una linea o freccia tra un attore e un caso d'uso indica che esiste un'interazione mediante invio di segnali.

Ruoli

Ciascuna estremità di un'associazione di comunicazione è un ruolo che specifica l'aspetto un caso d'uso o attore gioca nell'associazione. I ruoli sono utilizzati per specificare le molteplicità e direzioni dell'associazione (vedere di seguito).

Molteplicità

Ciascun ruolo di un'associazione di comunicazione indica la molteplicità del suo tipo, cioè, quante istanze di quell'attore o caso d'uso possono essere associate ad un'istanza dell'altro caso d'uso o attore. La molteplicità viene indicata mediante un'espressione di testo sul ruolo. L'espressione è un elenco separato da virgole di intervalli di numeri interi. Un intervallo è indicato da un numero intero (il valore più basso), due punti, e un numero intero (il valore superiore); un unico numero intero è un intervallo valido e il simbolo '*' indica "molti", cioè, un numero illimitato di oggetti. Il simbolo '*' da solo è equivalente a '0..*', cioè, un numero comprendente zero; si tratta del valore predefinito. Un ruolo scalare facoltativo ha la molteplicità 0..1.

La molteplicità può essere aumentata con un vincolo di unità di tempo. Ciò viene effettuato per indicare quante istanze possono essere associate, possibilmente da diverse istanze, durante l'unità di tempo. Queste informazioni sono utili poiché indicano se il caso d'uso viene utilizzato spesso e, inoltre, quante volte ciascuna istanza dell'attore utilizza il caso d'uso.

Esempio:

Diagramma descritto nel testo di accompagnamento.

Il caso d'uso Conduct Transactions viene utilizzato 400.000 volte al giorno dai clienti. Ciascun cliente si serve del caso d'uso due volte al mese.

Navigabilità

Ciascun ruolo di un'associazione di comunicazione ha una proprietà di navigabilità, che indica chi inizia la comunicazione nell'interazione.  La navigabilità viene mostrata con una punta di freccia aperta.  Se la punta della freccia è rivolta verso un caso d'uso, l'attore all'altra estremità dell'associazione inizia l'interazione con il sistema.  Se la punta è rivolta verso un attore, il sistema inizia l'interazione con l'attore.  Una navigabilità a due vie è mostrata da una linea senza punte di frecce (due punte tendono a creare confusione nei diagrammi).

Diagramma descritto nel testo di accompagnamento.

La freccia di comunicazione definisce l'attore che ha avviato il caso d'uso. Per ciascuna freccia di comunicazione è previsto un messaggio di ritorno. Una linea senza punte di frecce presuppone una comunicazione a due vie.

Non confondere la navigabilità con il flusso di dati; viene utilizzata solo per mostrare l'avvio della comunicazione.  Ad esempio, una richiesta cliente di dati viene mostrata con una freccia rivolta verso il caso d'uso che rappresenta il sistema, sebbene la maggior parte dei dati proceda dal sistema al cliente.

Comunicazione da attore a caso d'uso Inizio pagina

Gli attori comunicano con il sistema mediante l'invio di segnali. Per comprendere pienamente il ruolo dell'attore, è necessario conoscere quali casi d'uso l'attore impieghi. Ciò viene mostrato dalle associazioni di comunicazione tra l'attore e i casi d'uso.

La molteplicità dell'associazione mostra quante istanze di un caso d'uso con cui un'istanza di un attore può comunicare allo stesso tempo.

Esempio:

Nel sistema di una macchina di riciclaggio, ogni volta che un'istanza dell'attore cliente restituisce un articolo di deposito, viene inviato un segnale all'istanza associata del caso d'uso Ricicla articoli. Quando l'attore ha terminato, il caso d'uso stampa una ricevuta. Un cliente può comunicare con una sola istanza di Ricicla articoli. Pertanto, la molteplicità dell'associazione è 1. La ricevuta restituita dal sistema è considerata come una risposta dall'istanza del caso d'uso; quindi, l'associazione di comunicazione non necessità di navigabilità verso l'altra direzione.

Diagramma descritto nel testo di accompagnamento.

Un cliente che intende restituire degli articoli di deposito in una macchina di riciclaggio comunicherà con il caso d'uso Ricicla articoli.

Un attore comunica con i casi d'uso per molti motivi, compreso:

  • Il richiamo di un caso d'uso. Un'istanza di attore richiama sempre un'istanza di caso d'uso.
  • La richiesta di determinati dati memorizzati nel sistema, che il caso d'uso quindi recupera e propone all'attore.
  • La modifica dei dati memorizzati nel sistema mediante una finestra di dialogo.
  • La notifica di informazioni importanti riguardanti aspetti esterni al sistema di cui il sistema dovrebbe occuparsi.

Comunicazione da caso d'uso ad attore

Un solo attore avvia un caso d'uso. Tuttavia, una volta avviato, il caso d'uso può comunicare con diversi attori. E' possibile utilizzare le associazioni di comunicazione tra il caso d'uso e gli attori per mostrare con quali attori il caso d'uso comunica. La molteplicità dell'associazione mostra quante istanze di un attore con cui un'istanza di un caso d'uso può comunicare allo stesso tempo.

I casi d'uso comunicano con gli attori per molti motivi, compreso:

  • Se ha luogo un avvenimento importante all'interno del sistema di cui un attore dovrebbe venire a conoscenza.
  • Un caso d'uso potrebbe richiedere all'attore di effettuare una decisione se molteplici opzioni sono disponibili.

E' comune ma non sempre vero che il caso d'uso attende una risposta quando ha inviato un segnale ad un attore. Ciò dovrebbe essere esplicitamente descritto nel caso d'uso.

Convenzioni facoltative

Di seguito sono riportate le convenzioni facoltative comuni che rendono chiaro quale attore avvia il caso d'uso.

  • Viene sempre mostrata la punta di freccia da attore a caso d'uso di avvio, anche se il caso d'uso avvia successivamente la comunicazione con l'attore di avvio.  Inoltre, questo è l'unica punta di freccia da attore a caso d'uso mostrata.
  • Le punte di frecce da caso d'uso ad attori possono essere omesse oppure incluse per chiarezza.