Salta al contenuto principale
CODICE 86985
ANNO ACCADEMICO 2019/2020
CFU
SETTORE SCIENTIFICO DISCIPLINARE ING-INF/01
LINGUA Italiano
SEDE
  • GENOVA
PERIODO 2° Semestre
MATERIALE DIDATTICO AULAWEB

PRESENTAZIONE

Il corso presenta il tema generale di "Internet of Thing" come paradigma della stretta relazione tra mondo fisico e Web, in cui le tecnologie Web (HTTP, REST) possono essere impiegate per reccogliere informazioni e attuare decisioni nel mondo reale. 

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

Il corso, ispirato dal “Maker Movement”, ha l’obiettivo di incoraggiare lo studente nella realizzazione di progetti che abbiamo componenti hardware e software. Gli studenti durante il corso inventeranno, progetteranno e realizzeranno (“make”) un dispositivo seguendo il processo di progettazione ingegneristico. Il corso parte da quanto gli studenti hanno appreso negli insegnamenti di “Fondamenti di Programmazione”, che introduce i concetti di programmazione procedurale C anche su microcontrollore, “Elettronica dei sistemi Digitali”, “Elettronica” e “ Architetture dei Sistemi Elettronici” per realizzare prototipi che potranno integrare parti meccaniche, circuiti elettronici di controllo (costruiti attorno alla piattaforma Arduino) e applicazioni software locali e remote.

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

Scopo del corso è fornire le basi per la progettazione e lo sviluppo di sistemi hardware/software che partono dai sensori e arrivino alla memorizzaizone di informazoni su database in cloud. Lo studente viene introdotto ai concetti API REST e aiutato a comprenderli attraverso un esercizio svolto al calcolatore durante le lezioni frontali.  L'insegnamento si pone nella direzione di formare una figura professionale capace di progettare e realizzare applicazioni software su diversi dispositivi, dai sensori al cloud.

PREREQUISITI

Lo studente deve possedere conoscenze di base di programmazione e di progettazione di sistemi digitali.

MODALITA' DIDATTICHE

Il corso è costruito da una parte di lezione frontale e una parte di esercitazione. Durante la lezione frontale, il docente presenta gli argomenti fornendo sempre esempi di codice che vengono provati su strumenti di compilazione. Gli studenti possono utilizzare i propri calcolatori durante la lezione per mettere in pratica quanto proposto dal docente. Durante le esercitazioni, gli studenti devono affrontare al calcolatore problemi reali che possono essere risolti applicando le tecniche viste durante le lezioni frontali.

PROGRAMMA/CONTENUTO

Il seguente elenco riporta i contenuti affrontati a lezione, per ogni contenuto un link porta alle note di ogni lezione:

01 - Introduction to IoT, WoT and Physical Computing [LINK]
02 - The Arduino Platform [LINK]
03 - Serial Communication [LINK]
04 - Sensors [LINK]
05 - JavaScript and HTTP [LINK]
06 - NodeJS [LINK]
07 - REST API [LINK]
08 - Implementing Web Things [LINK]
09 - Interoperability and Semantic [LINK]
10 - Sharing & Securing [LINK]

TESTI/BIBLIOGRAFIA

  • Lecture notes
  • Michael Margolis, Arduino Cookbook, O'Reilly
  • Dominique Guinard, Building the Web of Things, Manning
  • Tom Hughes-Croucher, Node Up and Running, O'Reilly
  • Leonard Richardson, RESTful Web APIs, O'Reilly
  • Marijn Haverbeke, Eloquent JavaScript: A Modern Introduction to Programming, No Starch Press

DOCENTI E COMMISSIONI

Commissione d'esame

RICCARDO BERTA (Presidente)

ALESSANDRO DE GLORIA

LEZIONI

INIZIO LEZIONI

come da calendario didattico

Orari delle lezioni

L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy

ESAMI

MODALITA' D'ESAME

L'esame consiste in una interrogazione orale sugli argomenti teorici presentati a lezione. In particolare, lo studente deve dimostrare di aver comprso appieno i concetti alla base dello sviluppo di API secondo il paradigma RESTful.

MODALITA' DI ACCERTAMENTO

Durante l'orale, il docente chiede allo studente di illustrare alcuni concetti imparati a lezione. Per ogni concetto, lo studente deve anche presentare le condizioni per la sua applicazione, gli eventuali vantaggi e svantaggi. Durante la prova, il docente accerta che i concetti siano stati appresi ad un livello di conoscenza tale da permettere allo studente di applicarli in casi reali.

Calendario appelli

Data appello Orario Luogo Tipologia Note
27/01/2020 09:30 GENOVA Esame su appuntamento
24/02/2020 09:30 GENOVA Esame su appuntamento
15/06/2020 09:30 GENOVA Esame su appuntamento
06/07/2020 09:30 GENOVA Esame su appuntamento
24/07/2020 09:30 GENOVA Esame su appuntamento
14/09/2020 09:30 GENOVA Esame su appuntamento
28/10/2020 09:30 GENOVA Esame su appuntamento