Il corso è disponibile sia per partecipazioni individuali a calendario che, in sessioni dedicate, per le singole organizzazioni che abbiano la necessità di iscrivere insieme i propri collaboratori.
La scheda aggiornata del corso, con le informazioni per l’iscrizione, si trova a questo indirizzo: https://corsi.analisi-disegno.com/corsi/corso-uml-analisi-e-progettazione-software/
Descrizione:
L’analisi e il design, oltre a determinare la qualità delle applicazioni, influenzano la produttività dei progetti: quando vengono svolte in modo efficace riducono i costi ed i tempi dello sviluppo software, anche perché agevolano la comunicazione tra i ruoli coinvolti.
Il corso insegna ad affrontare l’analisi e il design mediante l’uso di tecniche e princìpi di progettazione software, e l’uso della notazione UML (Unified Modeling Language), lo standard di rappresentazione internazionale per documentare, progettare e fare evolvere i sistemi software.
Viene offerta 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, e con 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 specifici.
Nel corso viene effettuata una esercitazione / caso studio completa, con utilizzo dei principali diagrammi UML.
Destinatari:
- analisti
- architetti e progettisti software
- sviluppatori
Prerequisiti:
Nessuno.
Contenuti:
Introduzione
- ruolo di analisi e design nello sviluppo software
- princìpi base Object Oriented
- caratteristiche generali di UML
- UML e processi di sviluppo (a cascata, Unified Process, iterativi, agili)
- panoramica sui diagrammi UML
- Model-Driven-Architecture (MDA)
- costrutti generali (package, stereotipi, meccanismi di estensione, profili)
- cenni sugli strumenti di modellazione
Casi d’uso
- attori, casi d’uso, sistema di riferimento (subject)
- rappresentazione del contesto del sistema
- diagramma dei casi d’uso
- cenni sulla specifica dei casi d’uso
Modellare gli aspetti strutturali del sistema
Diagramma dei componenti
- rappresentazione di un sistema ad alto livello
- componenti
- interfacce
- dipendenze
Diagramma delle strutture composite
- scomposizione di un elemento complesso in parti
- porte e connettori
Diagramma dei package
- package per organizzare la documentazione di progetto
- package per organizzare il software
Diagrammi delle classi e degli oggetti
- strategie per l’individuazione e la definizione delle classi
- attributi e operazioni
- associazioni e altre relazioni tra classi
- rappresentazione delle strutture dati
- relazioni tra componenti e classi
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 (collaborazione)
- rappresentazione dello schema di navigazione interfaccia utente
- rappresentazione di servizi
- 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
- oggetti in input ed output