L'insegnamento prevede 1.0 CFU erogati con Didattica Innovativa come segue:
Blended Learning & Flipped Classroom
Corso di Studi
Codice Piano di Studio preventivamente approvato
Da (compreso)
A (escluso)
Insegnamento
Ing Ind - Inf (Mag.)(ord. 270) - MI (474) TELECOMMUNICATION ENGINEERING - INGEGNERIA DELLE TELECOMUNICAZIONI
*
A
ZZZZ
052533 - MIDDLEWARE TECHNOLOGIES FOR DISTRIBUTED SYSTEMS
Ing Ind - Inf (Mag.)(ord. 270) - MI (481) COMPUTER SCIENCE AND ENGINEERING - INGEGNERIA INFORMATICA
*
A
ZZZZ
052533 - MIDDLEWARE TECHNOLOGIES FOR DISTRIBUTED SYSTEMS
Obiettivi dell'insegnamento
The course presents middleware technologies that ease the development of distributed systems.
It aims to introduce typical problems in the development of distributed systems and the main classes of middleware that help addressing these problems.
For each class of middleware, one (or more) implementing technology is discussed in details, with concrete examples of usage.
Risultati di apprendimento attesi
At the end of the course the students will be able to select appropriate middleware solutions for a given distributed problem.
They will be able to apply the presented middleware technologies to solve practical case studies.
Argomenti trattati
- Introduction to distributed systems and middleware technologies
- Principles of concurrent programming for distributed systems
- REST: Representational State Transfer
- Message Oriented middleware (Kafka)
- Actor-oriented systems (Akka)
- Programming high-performance computing systems (OpenMP and MPI)
- Big-Data processing platforms (Spark and Flink)
- Middleware for Wireless Sensor Networks (TinyOS)
Prerequisiti
Students should have a basic knowledge of Object-Oriented programming and of the principles of networking and distributed systems.
Modalità di valutazione
Evaluation of the projects assigned during the course.
Bibliografia
Maarten Van Steen, Andrew S. Tanenbaum, Distributed Systems (3rd Edition), Editore: CreateSpace Independent Publishing Platform
Software utilizzato
Software
Info e download
Virtual desktop
Ambiente virtuale fruibile dal proprio portatile dove vengono messi a disposizione i software specifici per all¿attività didattica
PC studente
Indica se è possibile l'installazione su PC personale dello studente
Aule
Verifica se questo software è disponibile in aula informatizzata
Altri corsi
Verifica se questo software è utilizzato in altri corsi