Offerta Didattica
ENGINEERING AND COMPUTER SCIENCE
DISTRIBUTED SYSTEMS (YEARLY)
Classe di corso: LM-32, 18 - Classe delle lauree magistrali in Ingegneria informatica
AA: 2019/2020
Sedi: MESSINA
SSD | TAF | tipologia | frequenza | moduli |
---|---|---|---|---|
ING-INF/05 | Caratterizzante | Libera | Libera | No |
CFU | CFU LEZ | CFU LAB | CFU ESE | ORE | ORE LEZ | ORE LAB | ORE ESE |
---|---|---|---|---|---|---|---|
12 | 8 | 0 | 4 | 96 | 48 | 0 | 48 |
LegendaCFU: n. crediti dell’insegnamento CFU LEZ: n. cfu di lezione in aula CFU LAB: n. cfu di laboratorio CFU ESE: n. cfu di esercitazione FREQUENZA:Libera/Obbligatoria MODULI:SI - L'insegnamento prevede la suddivisione in moduli, NO - non sono previsti moduli ORE: n. ore programmate ORE LEZ: n. ore programmate di lezione in aula ORE LAB: n. ore programmate di laboratorio ORE ESE: n. ore programmate di esercitazione SSD:sigla del settore scientifico disciplinare dell’insegnamento TAF:sigla della tipologia di attività formativa TIPOLOGIA:LEZ - lezioni frontali, ESE - esercitazioni, LAB - laboratorio
Obiettivi Formativi
Il corso di Sistemi Distribuiti intende fornire le conoscenze di base relative alla organizzazione, programmazione e gestione di un sistema distribuito. Gli studenti apprenderanno le competenze necessarie a capire cosa e e come funziona un sistema distribuito. Le capacità acquisite riguarderanno come viene strutturato, come si programma, ed infine come si configura e come si gestisce un sistema distribuito.Learning Goals
This course provides the basic information related to how a distributed systems is organized, programmed and managed. Students will learn what is and how a distributed system works. Students will have the capacitiy to structure, program, configure and manage a distributed system.Metodi didattici
Lezioni - Seminari - Esercitazioni - Attività pratiche. Il corso si svolge prevalentemente attraverso lezioni frontali e seminari su specifici aspetti disciplinari; sono previste interazioni continue con gli studenti per valutare linteresse per la disciplina e il livello di apprendimento.Teaching Methods
Lectures, seminars, excercizes, practical activities. The course is mainly organized into lectures and seminars on specific aspects of the discipline; continuous interactions with students will occur to monitor their interest and learning level.Prerequisiti
Conoscenza di linguaggi C, Java e Python e Sistema operativo LinuxPrerequisites
Basic knowledge of C, Java and Python languages, as well as LinuxVerifiche dell'apprendimento
Per ciò che concerne le modalità delle prove di verifica finali, le attività del corso prevedono alcune fasi di avanzamento e relative consegne obbligatorie. Queste andranno effettuate nelle date e con le modalità che saranno comunicate dal docente (relazioni, esercitazioni, power-point, etc.). Gli esami si svolgeranno secondo le seguenti modalità: -colloquio sugli argomenti svolti durante il corso in cui saranno valutate le capacità di apprendimento e di riflessione critica; -presentazione e discussione degli elaborati prodotti.Assessment
The course requires the delivery of some homeworks and classworks in given time periods, given by the teacher. Reports, exercises, prower-point presentation may be used. Exams are structured as follows: oral discussion to evaluate the learning level; discussion on the homeworks and class works delivered by the student.Programma del Corso
Il corso è articolato in 3 fasi: la prima di apprendimento teorico sarà organizzata con lezioni ex-cathedra e studio individuale; la seconda di carattere teorico-applicativo sarà organizzata attraverso lezioni ex-cathedra ed ex-tempore in aula attraverso attività di laboratorio; la terza di carattere applicativo sarà organizzata attraverso approfondimenti concordati con il docente da sviluppare in maniera autonoma. Prima fase - Nella prima parte del corso, di carattere teorico, verranno illustrati i principi e le teorie fondamentali di un sistema distribuito. Nelle lezioni frontali saranno trattati i seguenti temi: Characterization of distributed systems, System Models, Interprocess communication, Openstack, Cloud Computing, Stack4Things, Blockchain and applications. Seconda fase La seconda fase sarà focalizzata sulle attività di laboratorio per mettere lo studente in condizione di verificare gli aspetti teorici trattati. In particolare gli studenti svolgeranno le seguenti attività di laboratorio: Laboratory on Interprocess communication: (ProtocolBuffer, OverlayNetwork), Remote Invocation, Indirect Communication, Laboratory on Remote Invocation (gRPC), Laboratory on Openstack - Keystone setup, Operating System Support, Neutron Setup, Glance and Nova Setup, Virtualization, Laboratory on Virtualization, Web Service, Laboratory on Arancino (IoT device), Laboratory on Stack4Things, Laboratory on Blockchain. Terza fase in questa parte del corso verranno applicate le conoscenze acquisite attraverso le attività di laboratorio che sono finalizzate alla redazione di un elaborato su programmazione e gestione di un sistema distribuito.Course Syllabus
This course is structured into threee main parts: the first is organized into lectures and individual study; the second is mainly based on laboratory activities; the third one is organized in to homeworks agreed with the teacher. First phase: Characterization of distributed systems, System Models, Interprocess communication, Openstack, Cloud Computing, Stack4Things, Blockchain and applications. Second phase: Laboratory on Interprocess communication: (ProtocolBuffer, OverlayNetwork), Remote Invocation, Indirect Communication, Laboratory on Remote Invocation (gRPC), Laboratory on Openstack - Keystone setup, Operating System Support, Neutron Setup, Glance and Nova Setup, Virtualization, Laboratory on Virtualization, Web Service, Laboratory on Arancino (IoT device), Laboratory on Stack4Things, Laboratory on Blockchain. Third phase: Use of the concepts learned in the previous phase to delever a homework on how to program and manage a distributed system.Testi di riferimento: Distributed Systems: Principles and Paradigms, by Andrew S. Tanenbaum , Maarten Van Steen , ISBN-13: 978-0132392273, Pearson
Distributed Systems: Concepts and Design, by George Coulouris , Jean Dollimore , Tim Kindberg , Gordon Blair, ISBN-13: 978-0132143011, Addison - Wesley
Esami: Elenco degli appelli
Elenco delle unità didattiche costituenti l'insegnamento
Docente: ANTONIO PULIAFITO
Orario di Ricevimento - ANTONIO PULIAFITO
Giorno | Ora inizio | Ora fine | Luogo |
---|---|---|---|
Venerdì | 11:00 | 13:00 | Studio del docente |
Note: Contattare preventivamente il docente per email