Anno di corso: 1

Anno di corso: 2

Crediti: 6
Crediti: 12
Tipo: A scelta dello studente
Crediti: 33
Tipo: Lingua/Prova Finale

ARCHITETTURA DEL SOFTWARE

Scheda dell'insegnamento

Anno accademico di regolamento: 
2017/2018
Anno di corso: 
2
Anno accademico di erogazione: 
2018/2019
Tipo di attività: 
Obbligatorio a scelta
Lingua: 
Italiano
Crediti: 
6
Ciclo: 
Secondo Semestre
Ore di attivita' didattica: 
48
Prerequisiti: 

Conoscenze e competenze generali acquisite nel corso di studi, con riferimento ad aspetti di programmazione e progettazione ad oggetti, ingegneria del software, sistemi operativi e sistemi distribuiti.

Moduli

Metodi di valutazione

Modalita' di verifica dell'apprendimento: 

La valutazione finale si baserà su:
- la presentazione dell’approfondimento assegnato e presentato e discusso in aula.
- un documento riassuntivo di specifica architetturale del progetto presentato e discusso in aula.

Valutazione: 
Voto Finale

Obiettivi formativi

Come applicare i principi di progettazione, i modelli e le architetture per realizzare sistemi software riutilizzabili e flessibili. Come documentare l'architettura del sistema. Architetture software della nuova generazione di sistemi.

Contenuti

Modelli di architetture software. Sistemi a componenti. Progettazione di architetture a diversi livelli di astrazione.

Programma esteso

Definition and overview of software architecture
The architecture business cycle
Understanding and achieving quality attributes
Architecture design using patterns and tactics
Documenting software architecture
Evaluating software architecture
Architecture in agile projects
Architecture in the Cloud
Architectures for the Edge (Wikipedia, YouTube, Facebook, etc.)
Design of an architectural solution for a simplified case study

Bibliografia consigliata

Verranno indicati articoli e risorse.

[suggerito] Software Architecture in Practice (3rd Edition) (SEI Series in Software Engineering) 3rd Edition by Len Bass, Paul Clements, Rick Kazman. ISBN-10: 0321815734

Metodi didattici

Lezioni frontali e presentazione e discussione in aula di progetti e approfondimenti svolti dagli studenti.