Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - UML I diagrammi implementativi E. TINELLI
I diagrammi implementativi In UML 2.x esistono 3 tipi di diagrammi per la modellazione degli aspetti implementativi di un sistema software: Diagramma dei componenti - serve a modellare le relazioni tra i componenti software del sistema, che solitamente si stabiliscono: tra i file del codice sorgente tra i componenti run-time tra gli eseguibili compilati e i loro sorgenti Diagramma di struttura composita permette al progettista di descrivere la struttura interna di una classe o di un componente Diagramma di dispiegamento mostra l architettura HW del sistema evidenziando le comunicazioni tra le varie parti Può essere usata per modellare la distribuzione delle componenti su ciascun dispositivo 2
Sottosistemi e Componenti Sottosistema un package che può contenere classi/interfacce, realizzazioni di casi d uso o altri sottosistemi e serve per: Separare le responsabilità del sistema Rappresentare contenuti di alto livello Incapsulare e nascondere la complessità interna Componente - è una parte, fisica e sostituibile di un sistema, che contiene implementazione e che rispetta un insieme di interfacce e ne fornisce una realizzazione I componenti sono realizzazioni fisiche di astrazioni progettuali 3
Diagramma dei componenti (1/2) Viene utilizzato per modellare i componenti di un sistema da un punto di vista statico è un grafo di componenti collegati tra loro da relazioni di dipendenza Un componente può implementare un'interfaccia Un componente può contenere uno o più componenti al suo interno Le classi realizzate da un componente possono essere rappresentate anche contenute al suo interno specificandone la visibilità I componenti di un diagramma dei componenti sono sempre descrittori, MAI istanze il diagramma dei componenti esiste SOLO in forma descrittore 4
Diagramma dei componenti (2/2) I componenti possono essere oggetti come i file i programmi eseguibili i documenti le librerie le tabelle di dati Il nome di un componente è tipicamente il nome di un file fisico il nome di un sottosistema di un certo tipo che è stato progettato per essere un componente Ai componenti possono essere anche aggiunti vincoli, per mostrare ulteriori informazioni È possibile usare stereotipi per i componenti Trattandosi di un classificatore, un componente può avere operazioni che realizza e che possono essere elencate al suo interno 5
Componenti e Interfacce -Notazioni 6
Diagramma di struttura composita 7
Diagramma dei componenti per un Sistema di Acquisto on-line di computer 8
Diagramma di dispiegamento mostra nodi connessi tra loro da associazioni di comunicazione dove i nodi rappresentano le risorse di elaborazione di un sistema I nodi sono tipicamente computer dotati di capacità di elaborazione e memoria ma anche sensori o periferiche può essere utilizzato per rappresentare tipi di nodi (forma descrittore) istanze di tipi di nodi (forma istanza) Le associazioni di comunicazione possono essere stereotipate per mostrare la natura della comunicazione tra i due nodi Le istanze dei componenti vengono visualizzate nei diagrammi di deployment in tal caso possono essere evidenziate sia le associazioni di comunicazione tra i nodi che le relazioni di dipendenza tra i componenti I nodi possono essere mostrati tramite simboli stereotipati 9
Diagramma di Dispiegamento in forma descrittore Sistema di Acquisto on-line di computer 10
Diagramma di dispiegamento con artifacts 11