Questo insegnamento introduce alcuni dei principali problemi di progettazione per i sistemi distribuiti (cioè, sistemi fatti di computer in rete che comunicano e coordinano passando messaggi l'uno all'altro).
Argomenti come prestazioni, disponibilità e sicurezza vengono discussi e gli studenti fanno esperienza pratica su sistemi simulati e reali.
L'insegnamento è presentato in due versioni: una versione 6 CFU offerta agli studenti del curriculum Software Security & Engineering (SSE) e una versione 9 CFU offerta a quelli del curriculum Data Science & Engineering (DSE). La versione 9 CFU offre un'introduzione più approfondita a sistemi ad alta intensità di dati come Apache Hadoop e Spark.
Learning how to design high quality distributed systems, ranging from classical client-server to peer-to-peer and blockchain-based systems, and applying classical mathematical tools to measure reliability, availability, and fault tolerance.
For the 9 CFU version of the course:
Per seguire con successo questo corso, gli studenti devono già conoscere:
Per le attività pratiche è necessario avere buone capacità di programmazione; nel corso si userà prevalentemente Python.
Lezioni, esercitazioni pratiche e studio a casa.
For the 9 CFU version:
Durante il corso verranno suggeriti articoli scientifici sugli argomenti trattati durante le lezioni. Tutto il materiale necessario per preparare il corso sarà presente su AulaWeb.
Ricevimento: Su appuntamento (in presenza o online) definito per email (matteo.dellamico@unige.it).
Ricevimento: Su appuntamento in presenza o Teams
GIORGIO DELZANNO (Presidente)
MARINA RIBAUDO
MATTEO DELL'AMICO (Presidente Supplente)
See the official calendar of the MSc in Computer Science. The schedule for all the courses can be found on EasyAcademy.
6 CFU version:
Oral examination with discussion of the practical exercises assigned during the course and theory introduced during lectures
9 CFU version:
Evaluation of assignments and written exam.
For each assignment, the quality of the code and the reports will indicate the technical skills acquired by the students.
The oral (6 CFU) and written (9 CFU) exam will allow the teachers to complete their evaluation with questions on the course program.
See the AulaWeb page for the course.