via Federico Cesi, 37
Rome, Lazio 00193

DESCRIZIONE
UML (Unified Modeling Language) è il linguaggio di rappresentazione standard dei sistemi software. Con le versioni 2.x, ha raggiunto un livello di maturità sufficiente per essere usato in modo efficace e produttivo nell’analisi e nella progettazione, oltre che nella documentazione di sistemi preesistenti. Il corso offre una panoramica completa sui concetti, sugli elementi e sui diagrammi di UML, con particolare attenzione alle modalità concrete del loro uso nelle diverse situazioni progettuali, fornendo linee guida minimali e pragmatiche che distinguono tra ciò che è indispensabile fare in ogni caso e ciò che può invece risultare utile solo in ambiti particolari. Nel corso viene effettuata una esercitazione/Caso Studio completa, con utilizzo di tutti i diagrammi UML.

PARTECIPANTI
• management sistemi informativi
• capi progetto
• analisti
• architetti software
• sviluppatori

PREREQUISITI
È opportuna una conoscenza generale delle problematiche relative allo sviluppo e all’evoluzione dei sistemi software.

PROGRAMMA

Il processo di sviluppo (e manutenzione)
- i ruoli coinvolti nello sviluppo, le loro relazioni, le loro modalità di comunicazione
- sviluppo a cascata, Unified Process, processi “agili” (Extreme Programming, Scrum, ecc.)

Introduzione a UML
- princìpi Object Oriented (classe e oggetto, incapsulamento, ereditarietà, polimorfismo)
- caratteristiche generali di UML
- panoramica sui diagrammi UML
- versioni di UML (1.x e 2.x)
- SysML per la rappresentazione dei sistemi non software
- Model-Driven-Architecture (MDA)
- UML e processi di sviluppo (a cascata, Unified Process, Extreme Programming, Scrum)
- costrutti generali (package, stereotipi, meccanismi di estensione, profili)
- cenni sugli strumenti di modellazione

I Casi d’Uso
- attori, Casi d’Uso, sistema di riferimento (subject)
- diagrammi dei Casi d’Uso
- cenni sulla specifica dei Casi d’Uso

Modellare gli aspetti strutturali del sistema

Diagramma dei package
- Package per organizzare i modelli e la documentazione
- Package per organizzare il software

Diagramma delle classi
- strategie per l’individuazione e la definizione delle classi
- forme di rappresentazione delle classi e degli oggetti
- attributi
- operazioni
- relazioni tra classi
- rappresentazione delle strutture dati

Diagramma dei componenti
- componenti
- interfacce
- dipendenze
- relazioni tra componenti e classi

Diagramma delle strutture composite
- rappresentazione interna di un componente
- rappresentazione interna di una classe

Diagramma di deployment
- nodi
- connessioni
- ambienti di esecuzione
- artifact e componenti

Modellare gli aspetti dinamici del sistema

Diagrammi di interazione
- messaggi e responsabilità
- diagramma di sequenza
- diagramma di comunicazione
- diagramma di overview dell’interazione
- diagramma di timing

Diagramma di stato
- stati e transizioni
- stati compositi
- transizioni composite e pseudostati

Diagrammi di attività
- attività e azioni
- flussi di controllo
- parallelismi e sincronizzazioni
- flussi di input e output

Durata: 4 giorni

Added by Technology Transfer on September 1, 2009