UML Component and Deployment diagram



Documenti analoghi
Elementi di UML (7): Diagrammi dei componenti e di deployment

Diagrammi dei package

Sequence Diagram e Collaboration Diagram

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Object Oriented Software Design

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

In legenda sono riportate le fasi R, P, C/T e I/SA come specificato nella norma ISO/IEC

Modellazione dei dati in UML

Architettura di un sistema operativo

Sistemi informativi secondo prospettive combinate

Activity Diagrams. Ing. Orazio Tomarchio

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

Approfondimenti. Contenuti

SDD System design document

Scenario di Progettazione

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Concetti di base di ingegneria del software

Dynamic 07 -Software per la lettura ottica e data capture. G.Q.S. Srl Global Quality Service Via Bernini, 5/7 Corsico (MILANO)

Il Software. Il software del PC. Il BIOS

Macchine sequenziali

SISTEMI E RETI 4(2) 4(2) 4(2) caratteristiche funzionali

Supporto On Line Allegato FAQ

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10

Architetture software. Virtualizzazione

Database. Si ringrazia Marco Bertini per le slides

7. Architetture Software

Sviluppo di processi per l automatizzazione del testing per applicazioni Android

Architetture Informatiche. Dal Mainframe al Personal Computer

@2011 Politecnico di Torino. Pag. 1. Architettura distribuita. Architetture Client/Server. Architettura centralizzata. Architettura distribuita

Gruppi, Condivisioni e Permessi. Orazio Battaglia

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Applicazione: Sistema Informativo Integrato per il Controllo di Gestione

Approfondimento: Migrazione dei database e backup della posta

Hardware delle reti LAN

Reti di Telecomunicazione Lezione 6

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Sistema operativo: Gestione della memoria

Architetture e applicazioni web

ISTITUTO TECNICO ECONOMICO MOSSOTTI

Corso di Informatica

Software di interfacciamento sistemi gestionali Manuale di installazione, configurazione ed utilizzo

FoLUG Forlì Linux User Group. Partizionamento

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB.

Volume GESTFLORA. Gestione aziende agricole e floricole. Guidaall uso del software

Architetture Informatiche. Dal Mainframe al Personal Computer

Strumenti di modellazione. Gabriella Trucco

Linguaggi e Paradigmi di Programmazione

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014)

SERVICE MANAGER. Architettura Client-Server e Web based di Servizi Specializzati per la Gestione di Periferiche e Connettività

Si tratta di un programma per la gestione della messaggistica ( , pec, posta interna, spedizione fax).

IL SOFTWARE. Giada Agostinacchio Classe 2^ Beat ISIS G.Meroni Lissone Anno Scolastico 2007/2008

Sicurezza e Gestione delle Reti (di telecomunicazioni)

Il web server Apache Lezione n. 3. Introduzione

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Object Oriented Programming

Reti di Calcolatori. Vantaggi dell uso delle reti. Cosa è una rete? Punto di vista logico: sistema di dati ed utenti distribuito

Base di dati e sistemi informativi

Sistemi Operativi. Conclusioni e nuove frontiere

FPf per Windows 3.1. Guida all uso

Mac Application Manager 1.3 (SOLO PER TIGER)

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

Progetto di Applicazioni Software

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

IL SOFTWARE SECONDO LA NORMA UNI EN ISO :2008 (IIA PARTE) 1

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

Specifiche Tecnico-Funzionali

Licenza di Utilizzo distribuire, comunicare al pubblico, rappresentare o esporre in pubblico la presente opera Attribuzione Condivisione

Registratori di Cassa

DINAMIC: gestione assistenza tecnica

UML Diagrammi delle classi. UML Diagramma classi 1

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

VMware. Gestione dello shutdown con UPS MetaSystem

[ Gentleware: Poseidon for UML 3.0". [ Sparxsystems: Enterprise Architect 6.1".

Diagrammi di Interazione

Pacchettizzazione e distribuzione del software

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.

Reti di Telecomunicazione Lezione 7

Replica di Active Directory. Orazio Battaglia

FRANCESCO MARINO - TELECOMUNICAZIONI

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Tecnologia dei Sistemi Informativi. architettura s.i. 1

Sequenza alternativa degli eventi: Variazione di prezzo superiore al 20% per almeno un articolo.

Stampa Grafica Cud. Guida all Istallazione e all Uso. RICERCA INFORMATICA s.r.l.

C Cloud computing Cloud storage. Prof. Maurizio Naldi

DW-SmartCluster (ver. 2.1) Architettura e funzionamento

Scheda requisiti Hardware e Software

ESERCITAZIONE Semplice creazione di un sito Internet

Ingegneria del Software. Presentazione del pattern Proxy

Programmi e Oggetti Software

InitZero s.r.l. Via P. Calamandrei, Arezzo

TERMINALE. Creazione e gestione di una postazione terminale di Eureka

Soluzione dell esercizio del 2 Febbraio 2004

Reti di Calcolatori

Progettaz. e sviluppo Data Base

Transcript:

UML Component and Deployment diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania

I diagrammi UML Classificazione ufficiale dei diagrammi UML 2 2

Uso dei component e deployment Fase di specifica Fase di progettazione Component Deployment diagram Fase di codifica 3

Component Diagram (CD) Rappresentano l architettura SW del sistema, ovvero la suddivisione di esso in varie componenti (classi, librerie, DB, eseguibili, etc.) e le dipendenze tra questi 4

CD - Componenti Componente i componenti sono moduli software (eseguibili o meno), dotati di identità e con un'interfaccia ben specificata Non esiste un metodo unico per l individuazione dei componenti (Alhir li definisce una parte del sistema che esiste durante l esecuzione del sistema ) Spesso un componente rappresenta una classe o un package del class diagram 5

Component Diagram - Elementi Il simbolo di un componente è un rettangolo con due rettangoli più piccoli su un lato Componente 6

Component Diagram - Esempio Si supponga che il sistema sia costituito da: user interface component (interfaccia di interazione) business-processing component (funzionalità specifiche dell applicazione) data component (immagazzinamento dati) security component (funzionalità di sicurezza, come verifiche di accesso, controllo dei privilegi di accesso ai dati) 7

Component Diagram - Esempio 8

Component Diagram - Elementi Un componente UML non rappresenta uno specifico oggetto, ma un insieme di cose (class) Per rappresentare un elemento di tale insieme si una una component instance Il simbolo di una c. instance è il seguente (nome:classe, tutto sottolineato) Nome:Classe 9

Component Diagram - Esempio Dettagliando l esempio precedente si potrebbe avere: web user interface component instance (accesso via web) client/server user interface component instance (accesso con paradigma client-server) local data component instance (immagazzinamento dati di un utente) enterprise data component instance (dati corporate) 10

Component Diagram - Esempio 11

Component Diagram - Elementi Assieme al componente si possono indicare le interfacce l interfaccia è mostrata con un cerchio collegato al componente Un componente può avere più interfacce Componente Interfaccia 12

Component Diagram - Elementi Esempio di componente con più interfacce Unit Server Application Application Configuration 13

Dipendenze: CD - Dipendenze Tra due componenti esiste una dipendenza quando modificando la definizione di uno (il supplier) può doversi modificare la definizione dell altro (detto client) Tra classi esistono diversi motivi che causano dipendenza comunicazione tra due classi una classe memorizza i dati di un altra classe Una classe adopera i dati di un altra come parametri 14

CD - Dipendenze UML consente di esprimere dipendenze tra tutti i suoi elementi, e in particolare nel component diagram Una dipendenza viene rappresentata con una freccia tratteggiata (punta sul supplier), sulla quale è possibile indicare il tipo di dipendenza Attenzione: la presenza di numerose dipendenze (soprattutto in grossi sistemi) puo complicare notevolmente la gestione delle modifiche 15

CD - Dipendenze Esempio Dipendenze: Benefit window e una classe di interfaccia (classe di presentazione), Employee e una classe nel dominio dell applicazione. Una modifica a quest ultima potra avere conseguenze sulla classe di presentazione 16

CD - esempio Si noti, nell esempio precedente che una modifica alla benefit window non altera la classe Employee. E buona norma evitare cicli Si noti che Data Gateway e Benefit windows sono indirettamente dipendenti: una modifica sulle Data Gateway puo richiedere una modifica alla Employee, ma solo se quest ultima cambia la sua interfaccia la modifica coinvolgera anche Benefit window 17

Alcuni tipi di dipendenze «call» Il client invoca un operazione nella supplier «create» «instantiate» «derive» Il client crea istanze della supplier Il client e derivata dalla supplier «permit» Il client ha accesso a informazioni private di supplier 18

Alcuni tipi di dipendenze «realize» Il client e l implementazione dell interfaccia di supplier «refine» «substitute» Relazione tra differenti livelli semantici (ad esempio tra classe di progetto e classe di analisi) Il client e sostituibile per il supplier «use» Il client necessita del supplier per la sua implementazione 19

Esempio di dipendenze 20

Deployment Diagram (DD) Rappresenta la relazione fisica tra i componenti software e quelli hardware E utile quando si ha la necessità di mostrare in quale componente HW di un sistema distribuito viene eseguito o risiede ciascun componente SW 21

Deployment Diagram - Elementi Nodo: Ogni nodo rappresenta qualcosa che può ospitare del software Mote volte viene usato per rappresentare un componente hardware (device) Es: un sensore, un server, un mainframe Un nodo può anche essere esso stesso del SW, un ambiente di esecuzione, ad es. SSOO, macchine virtuali, ecc.. 22

Deployment Diagram - Elementi Il nodo viene rappresentato tridimensionalmente come un box. Sullo stesso viene indicato il nome del nodo Server Printer Input Device Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 23

Deployment Diagram - Elementi Istanza di Nodo: In generale il nodo non rappresenta una specifica risorsa, ma una classe di risorse dello stesso tipo Per rappresentare una specifica risorsa del sistema si usano le istanze di nodo In un contesto object-oriented e analogo all istanza di una classe Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 24

Deployment Diagram - Elementi Una istanza di nodo e rappresentata come un nodo, ma il nome e del tipo nome:classe Sia nome che classe possono essere omessi (e in tal caso si può omettere anche il : ) Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 25

DD - Communicatio Association Una Communication association Communication association (o connection) tra il nodo A e il nodo B rappresenta un percorso di comunicazione tra i componenti ospitati nei due nodi Una CA è rappresentata come una linea continua tra i due nodi Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 26

DD - Communication Association Su una CA è possibile specificare anche il protocollo di comunicazione adoperato (ne viene indicato il nome in prossimità della linea di CA) Windows 2000 Server <<Parallela>> Epson Laser <<TCP/IP>> Server Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 27

Spesso è utile integrare i due diagrammi Component e Deployment Diagram L integrazione rappresenta la distribuzione dei vari componenti nei nodi del sistema Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 28

Component e Deployment Diagram - Esempio Diabetes Unit Server <<object database>> Jasmin Healthcare Domain <<TCT/IP>> Liver Unit Server <<object database>> Jasmin <<communication>> Liver Unit Configuration Windows CompatiblePC Liver Unit Client Facade <<TCT/IP>> Healthcare Domain <<user interface>> Liver Unit UI Liver Unit Server Application Application Configuration Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 29

Nodi e artifact All interno dei nodi è possibile rappresentare gli artifact, che sono la manifestazione fisica del SW Tipicamente gli artifact sono file, e possono essere: eseguibili (file.exe,.dll, script, file binari, ecc.) dati file di configurazione pagine HTML... Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 30

Nodi e artifact Se un artifact è posto all interno di un nodo il file sarà memorizzato proprio in tale nodo durante il funzionamento del sistema Un artifact può essere indicato elencandoli all interno del nodo come class box all interno del nodo, indicando però l icona documento o la parola <<artifact>> È possibile etichettare sia i nodi che gli artifact per specificare svariate informazioni (produttore, SO) Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 31

Nodi e artifact - Esempio Febbraio 2007 M2 - Analisi e Progettazione di un sistema software 32