Diagramma di distribuzione: tutorial UML con ESEMPIO

Cos'è il diagramma di distribuzione?

Il diagramma di distribuzione è un tipo di diagramma che specifica l'hardware fisico su cui verrà eseguito il sistema software. Determina inoltre la modalità di distribuzione del software sull'hardware sottostante. Mappa le parti software di un sistema sul dispositivo che lo eseguirà.

Il diagramma di distribuzione mappa l'architettura software creata in fase di progettazione all'architettura del sistema fisico che la esegue. Nei sistemi distribuiti, modella la distribuzione del software tra i nodi fisici.

I sistemi software si manifestano utilizzando vari artefatti, quindi vengono mappati sull'ambiente di esecuzione che eseguirà il software come nodi. Molti nodi sono coinvolti nel diagramma di distribuzione; quindi, la relazione tra loro è rappresentata utilizzando percorsi di comunicazione.

Esistono due forme di diagramma di distribuzione.

  • Descripto modulo
  • Contiene nodi, la relazione tra nodi e artefatti.
  • Modulo di istanza
  • Contiene l'istanza del nodo, la relazione tra le istanze del nodo e l'istanza dell'artefatto.
  • Un nome sottolineato rappresenta le istanze del nodo.

Scopo di un diagramma di distribuzione

I diagrammi di distribuzione vengono utilizzati al solo scopo di descrivere come il software viene distribuito nel sistema hardware. Visualizza come il software interagisce con l'hardware per eseguire la funzionalità completa. È usato per descrivere l'interazione tra software e hardware e viceversa.

Diagramma di distribuzione Simboli e notazioni

Notazioni del diagramma di distribuzione
Notazioni del diagramma di distribuzione

Un diagramma di distribuzione è costituito dalle seguenti notazioni:

  1. un nodo
  2. Un componente
  3. Un artefatto
  4. Un'interfaccia

Cos'è un artefatto?

Un artefatto rappresenta la specifica di un'entità concreta del mondo reale correlata allo sviluppo del software. È possibile utilizzare l'artefatto per descrivere un framework utilizzato durante il processo di sviluppo del software o un file eseguibile. Gli artefatti vengono distribuiti sui nodi. Gli artefatti più comuni sono i seguenti,

  1. File sorgenti
  2. File eseguibili
  3. Tabelle del database
  4. Script
  5. File DLL
  6. Manuali utente o documentazione
  7. File di output

Gli artefatti vengono distribuiti sui nodi. Può fornire manifestazione fisica per qualsiasi elemento UML. Generalmente manifestano componenti. Gli artefatti sono etichettati con lo stereotipo < >, e potrebbe avere un'icona artefatto nell'angolo in alto a destra.

Ogni artefatto ha un nome file nelle specifiche che indica la posizione fisica dell'artefatto. Un artefatto può contenere un altro artefatto. Potrebbe dipendere l'uno dall'altro.

Gli artefatti hanno le loro proprietà e il comportamento che li manipola.

In genere, un artefatto è rappresentato come segue nel linguaggio di modellazione unificato.

Artefatto
artefatto

Istanze di artefatti

Un'istanza di artefatto rappresenta un'istanza di un particolare artefatto. Un'istanza di artefatto è denotata con lo stesso simbolo di quella dell'artefatto, tranne per il fatto che il nome è sottolineato. Diagramma UML consente di distinguere tra l'artefatto originale e l'istanza. Ogni copia fisica o file è un'istanza di un artefatto unico.

In genere, un'istanza di artefatto è rappresentata come segue nel linguaggio di modellazione unificato.

Istanza dell'artefatto
istanza di artefatto

Che cos'è un nodo?

Il nodo è una risorsa computazionale su cui vengono distribuiti gli artefatti per l'esecuzione. Un nodo è un oggetto fisico che può eseguire uno o più artefatti. Un nodo può variare nella sua dimensione a seconda della dimensione del progetto.

Node è un elemento UML essenziale che descrive l'esecuzione del codice e la comunicazione tra varie entità di un sistema. È indicato da una casella 3D con il nome del nodo scritto al suo interno. I nodi aiutano a trasmettere l'hardware che viene utilizzato per distribuire il software.

Un'associazione tra nodi rappresenta un percorso di comunicazione da cui vengono scambiate informazioni in qualsiasi direzione.

Generalmente, un nodo ha due stereotipi come segue:

  • << dispositivo >>È un nodo che rappresenta una macchina fisica in grado di eseguire calcoli. Un dispositivo può essere un router o un PC server. È rappresentato utilizzando un nodo con stereotipo < >.

    Nel modello UML è anche possibile annidare uno o più dispositivi uno nell'altro.

  • Di seguito è riportata la rappresentazione di un dispositivo in UML:

    Nodo dispositivo
    nodo del dispositivo
  • <<ambiente di esecuzione>>È un nodo che rappresenta un ambiente in cui verrà eseguito il software. Per esempio, Java le applicazioni vengono eseguite in macchina virtuale Java (JVM). JVM è considerato un ambiente di esecuzione per Java applicazioni. Possiamo nidificare un ambiente di esecuzione in un nodo del dispositivo. È possibile collegare in rete più ambienti di esecuzione in un singolo nodo del dispositivo.

Di seguito è riportata una rappresentazione di un ambiente di esecuzione in UML:

Nodo dell'ambiente di esecuzione
nodo dell'ambiente di esecuzione

Come disegnare un diagramma di distribuzione?

Il diagramma di distribuzione visualizza la vista topologica di un intero sistema. Rappresenta l'implementazione di un sistema.

Un diagramma di distribuzione è costituito da nodi che descrivono i dispositivi fisici utilizzati all'interno del sistema. Su questi nodi vengono distribuiti gli artefatti. Possiamo anche avere istanze di nodi su cui verranno implementate le istanze degli artefatti.

Il nodo e gli artefatti di un sistema partecipano all'esecuzione finale di un sistema.

Un diagramma di distribuzione svolge un ruolo fondamentale durante il processo amministrativo e deve soddisfare i seguenti parametri:

  • Alte prestazioni
  • manutenibilità
  • Scalabilità
  • Portabilità
  • Facilmente comprensibile

I nodi e gli artefatti sono gli elementi essenziali del deployment. Prima di disegnare effettivamente il diagramma di deployment, tutti i nodi e la relazione tra ogni nodo del sistema devono essere identificati.

Devi conoscere l'architettura di un sistema, che si tratti di un'applicazione web, cloud, desktop o mobile. Tutte queste cose sono fondamentali e svolgono un ruolo fondamentale durante lo sviluppo di un diagramma di distribuzione.

Se tutti i nodi, le relazioni e gli artefatti sono noti, diventa facile sviluppare un diagramma di distribuzione.

Esempio di diagramma di distribuzione

Il seguente diagramma di distribuzione rappresenta il funzionamento del lettore video HTML5 nel browser:

Diagramma di distribuzione
Diagramma di distribuzione

Quando utilizzare un diagramma di distribuzione?

I diagrammi di distribuzione vengono utilizzati principalmente da amministratori di sistema, ingegneri di rete, ecc. Questi diagrammi vengono utilizzati con l'unico scopo di descrivere come il software viene distribuito nel sistema hardware. Visualizza come il software interagisce con l'hardware per eseguire la funzionalità completa.

Per far funzionare il software in modo efficiente e più veloce, anche l'hardware deve essere di buona qualità. Deve essere progettato in modo efficiente per far funzionare correttamente il software e produrre risultati accurati in tempi rapidi.

I diagrammi di distribuzione possono essere utilizzati per,

  1. Modellazione della topologia di rete di un sistema.
  2. Modellazione di sistemi e reti distribuiti.
  3. Processi di forward e reverse engineering.

Sommario

  • Il diagramma di distribuzione mappa l'architettura software creata in fase di progettazione sull'architettura del sistema fisico che la esegue.
  • Mappa le parti software di un sistema all'hardware che lo eseguirà.
  • Il diagramma di distribuzione visualizza la vista topologica di un intero sistema.
  • Nodi e artefatti sono gli elementi essenziali della distribuzione.
  • Il nodo e gli artefatti di un sistema partecipano all'esecuzione finale di un sistema.