|
MARCO PICONE
Professore Associato Dipartimento di Scienze e Metodi dell'Ingegneria Docente a contratto Dipartimento di Ingegneria "Enzo Ferrari"
|
Insegnamento: Intelligent Internet of Things
Ingegneria informatica (MN) (Offerta formativa 2024)
Obiettivi formativi
In termini di conoscenza e comprensione, gli obiettivi del corso sono i seguenti:
● Fornire allo studente una conoscenza di base dei principali principi di funzionamento di sistemi Internet of Things, con particolare attenzione ai protocolli di comunicazione, architetture distribuite e principi di progettazione e sviluppo;
● Fornire allo studente una conoscenza applicata basata sull'utilizzo di un testbed e dispositivi IoT in laboratorio
● Fornire una visione sui trend tecnologici e di ricerca che riguardano il mondo dell’Internet of Things ed Edge Computing
Prerequisiti
Nessun prerequisito obbligatorio
Fortemente consigliati:
● Fondamenti di programmazione
● Internet, Web e Cloud
Programma del corso
Il corso è suddiviso in una parte di didattica frontale ed una parte di laboratori ed esercitazioni pratiche. La prima parte è dedicata all'introduzione all'Internet of Things (IoT), con descrizione dei principali protocolli di comunicazione, paradigmi e approcci architetturali, tematiche legate al Web of Things e all’interoperabilità e argomenti relativi al rapporto tra IoT, Cloud ed Edge Computing. La seconda parte è invece dedicata al laboratorio e alla sperimentazione diretta delle tecnologie IoT. Gli studenti verranno introdotti ai principali sistemi operativi, protocolli, linguaggi e librerie di programmazione e ai tool di sviluppo di livello applicativo.
La parte di laboratorio termina con l'assegnazione di un progetto (singolo o di gruppo), che consiste nel design e nello sviluppo di un'applicazione IoT completa (sfruttando anche i nodi e i device del laboratorio) e nella successiva stesura di una relazione di progetto. Il voto finale è un valore medio (pesato) dei voti di una prova scritta del progetto.
La struttura dei contenuti delle lezioni e del corso può essere strutturata tramite i seguenti gruppi:
(A) IoT Introduzione & Networking [1CFU]
- IoT Physical / Link Layer
- IoT Network and Transport Layer
- TCP & UDP Overview
(B) IoT Protocolli Applicativi & Pattern di Comunicazione [3CFU]
- Protocol & Communication Paradigms Overview
- HTTP RESTFul API HandsOn
- HTTP RESTFul API Laboratory
- MQTT (MQ Telemetry Transport)
- MQTT HandsOn Session
- MQTT Laboratory
- Constrained Application Protocol (CoAP)
- CoAP HandsOn Session
- CoAP Laboratory
(C) IoT Discoverability & Interoperability [2CFU]
- Resource & Service Discovery, CoRe Interfaces & IoT Media Types
- IoT Smart Object Design - HandsOn Session
- IoT Interoperability Laboratory
- IoT & Web Of Things
(D) IoT Architetture & Design [2CFU]
- IoT & Edge Computing
- IoT End - To - End Design
- Monolithic and Microservice Architectures for the IoT
- IoT Hardware & Software
- IoT Security & Privacy
(C) Applicazioni Avanzate & Analisi Dati [1CFU]
- Virtual Objects & Digital Twins
- IoT Data Processing, Visualization & Machine Learning
Metodi didattici
Il corso è bilanciato tra lezioni frontali e lezioni pratiche (hands on) in laboratorio sia singole che in gruppo. In aggiunta sono previste due lezioni a carattere seminariale legate al mondo delle aziende che operano nel settore IoT e alla visione futura dei prossimi sviluppi tecnologici.
Il corso è erogato in lingua Italiana, la modalità di frequenza è in presenza e non è presente obbligo di frequenza.
Le lezioni del corso (sia per quanto riguarda la parte di didattica frontale che di laboratorio) verteranno sull'uso di slide (fornite regolarmente agli studenti), con materiale esclusivo per il corso e anche con i riferimenti precisi ai libri di testo e ad altri articoli/materiale didattico adottato.
Testi di riferimento
- J. P. Vasseur and A. Dunkels, “Interconnecting Smart Objects with IP,” Morgan Kaufmann, 2010
- S. Cirani, G. Ferrari, M. Picone, and L. Veltri, “Internet of Things: Architectures, Protocols and Standards”, Wiley 2018.
- Vengono forniti numerosi altri articoli di letteratura e altri testi di riferimento.
- Dispense delle lezioni
Verifica dell'apprendimento
L’esame è costituito dalle seguenti prove:
● Esame scritto (tipicamente 4 domande) sugli aspetti teorici e progettuali legati al mondo IoT e agli argomenti presentati a lezione.
● Realizzazione di un progetto (singolo e/o in gruppo) partendo da una lista di progetti e argomenti presentati a lezione, con relazione e discussione della stesso in sede di esame
Il voto finale è un valore medio (pesato) dei voti nella prima prova e nel progetto.
Risultati attesi
(1) Conoscenza e capacità di comprensione.
Capacità di applicare conoscenza e comprensione degli argomenti presentati
(2) Capacità di applicare conoscenza e comprensione.
Capacità di progettare, programmare e gestire i moderni sistemi distribuiti e IoT
(3) Autonomia di giudizio.
Capacità di valutare scelte architetturali e progettuali sui sistemi IoT pervasivi e distribuiti.
(4) Abilità comunicative.
Il progetto e la sua presentazione permetteranno di organizzare e presentare con adeguato linguaggio tecnico i risultati del proprio studio e lavoro.
(5) Capacità di apprendimento.
Le attività descritte consentiranno allo studente di acquisire gli strumenti metodologici per potere provvedere autonomamente al proprio aggiornamento, particolarmente cruciale in un ambito dove le tecnologie sono in continua evoluzione