CLOUD COMPUTING AND DISTRIBUTED SYSTEMS

Anno accademico
2024/2025 Programmi anni precedenti
Titolo corso in inglese
CLOUD COMPUTING AND DISTRIBUTED SYSTEMS
Codice insegnamento
CM0468 (AF:513718 AR:286750)
Lingua di insegnamento
Inglese
Modalità
In presenza
Crediti formativi universitari
6
Livello laurea
Laurea magistrale (DM270)
Settore scientifico disciplinare
INF/01
Periodo
II Semestre
Anno corso
1
Sede
VENEZIA
Spazio Moodle
Link allo spazio del corso
Introduzione ai sistemi distribuiti e cloud computing.
Progetto, architetture e tecnologie.
Applicazioni cloud, qualità del servizio e sicurezza.
Comunicazione tra processi, invocazione remota e chiamata di procedura remota.
Algoritmi per la sincronizzazione, coordinamento, condivisione dei dati, allocazione delle risorse, consistenza, tolleranza ai guasti.
Replicazione, consistenza e controllo della concorrenza in sistemi transazionali.
Dettagli di progettazione
Conoscenza dei principi di progettazione di sistemi distribuiti e cloud computing.
Conoscenza delle architetture, tecnologie e servizi in cloud computing.
Conoscenza di paradigmi di comunicazione e algoritmi di sincronizzazione, cooperazione e gestione della concorrenza in sistemi distribuiti.
Conoscenze di programmazione, architetture di sistemi di elaborazione, reti di calcolatori e sistemi operativi.
Caratterizzazione dei sistemi distribuiti, Modelli di sistema, Reti e interconnessione,
Comunicazione interprocesso, Invocazione remota, Comunicazione indiretta, Supporto del sistema operativo
Sistemi di file distribuiti, Servizi di denominazione
Tempo e stati globali, Coordinamento e accordo
Transazioni e controllo della concorrenza, Transazioni distribuite, Replicazione
Calcolo mobile e ubiquitario, Sistemi multimediali distribuiti,
Libri di testo
G. Coulouris, J. Dollimore and T. Kindberg, "Distributed Systems: concepts and design", 5th edition, Addison Wesley Masson, 2012.

Altri testi di riferimento
[T] M.van Steen, A.S.Tanenbaum, DistributedSystems: Principles and Paradigms, 4rd edition, 2023
La valutazione sarà basata su un esame scritto finale. A discrezione del docente, alcuni studenti potrebbero essere invitati a sostenere anche un esame orale, qualora siano necessarie chiarificazioni riguardo alle risposte fornite nell'esame scritto.

Se gli studenti lo desiderano, l'esame finale può essere sostituito da due prove intermedie. In tal caso, la prima prova intermedia si svolgerà durante il corso, mentre la seconda si terrà alla fine del corso.

Le prove consistono in un insieme di domande teoriche a risposta aperta e/o a scelta multipla, finalizzate a valutare la padronanza dello studente rispetto ai vari argomenti trattati nel corso, alla terminologia tecnica specifica e ai concetti fondamentali di progettazione delle reti di calcolatori, oppure in alcuni esercizi specifici sugli argomenti del corso al fine di valutare le competenze acquisite.
scritto e orale
1. punteggi nella fascia 18-22 verranno attribuiti nel caso di risposte alla prova scritta e orale che indichino una sufficiente conoscenza e comprensione delle tematiche affrontate nel corso; contenuta capacità di elaborare soluzioni autonome e applicazione dei metodi studiati; contenuta abilità nella esposizione dei metodi e soluzioni.

2. punteggi nella fascia 23-26 verranno attribuiti nel caso di risposte alla prova scritta e orale che indichino una discreta conoscenza e comprensione delle tematiche affrontate nel corso; discreta capacità di elaborare soluzioni autonome e applicazione dei metodi studiati; discreta abilità nella esposizione dei metodi e soluzioni e capacità di creare connessioni fra argomenti studiati.

3. punteggi nella fascia 27-30 verranno attribuiti nel caso di risposte alla prova scritta e orale che indichino una buona o ottima conoscenza e comprensione delle tematiche affrontate nel corso; buona o ottima capacità di elaborare soluzioni autonome e applicazione dei metodi studiati; buona o ottima abilità nella esposizione dei metodi e soluzioni e capacità di creare connessioni fra argomenti studiati.

4. la lode verrà attribuita solo in presenza di dimostrazione di ottima conoscenza, capacità di comprensione con riferimento al programma, ottima capacità di collegare argomenti e illustrare con ottime abilità comunicative.
Il corso è costituito da lezioni frontali. Insieme ai testi di riferimento, verrà fornito materiale aggiuntivo sotto forma di slide e codice sorgente. Saranno proposti e discussi durante le lezioni alcuni esercizi teorici. Verranno inoltre effettuate dimostrazioni di esercizi pratici in Java.
L'esame valuta la conoscenza della materia, nonché la capacità dello studente di applicare i metodi e i principi di progettazione studiati. La prova scritta comprende domande generali sui metodi e domande specifiche riguardanti algoritmi e la progettazione tecnica di sistemi distribuiti e cloud computing. Le domande dell'esame possono essere a risposta aperta o a scelta multipla.
Programma definitivo.
Data ultima modifica programma: 27/06/2025