CODE 86985 ACADEMIC YEAR 2022/2023 CREDITS 6 cfu anno 3 INGEGNERIA ELETTRONICA E TECNOLOGIE DELL'INFORMAZIONE 9273 (L-8) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR ING-INF/01 LANGUAGE Italian TEACHING LOCATION GENOVA SEMESTER 2° Semester TEACHING MATERIALS AULAWEB OVERVIEW This course looks at the Internet of Things (IoT) as the general theme of physical/real-world things becoming increasingly visible and actionable via Internet and Web technologies. The goal of the course is to provide students with a comprehensive understanding of the IoT. AIMS AND CONTENT LEARNING OUTCOMES By looking at real-world application scenarios, the students will understand the most important IoT technologies and the fundamental Web architectural principles. The students will have the opportunity to apply these technologies to develop some real-world use cases, using open-source platforms for implementing prototypes and testing them as running applications. AIMS AND LEARNING OUTCOMES The aim of the course is to provide the basis for the design and development of systems that includes data from sensors and persistent storage in the cloud. The student is introduced to the API REST approach and supported through an extensive exercise during all the lectures. The teaching aims to train a professional figure capable of designing and implementing software applications on different devices, from sensors to the cloud. PREREQUISITES The students should have basic kwolegde of programming and electronic digital design. TEACHING METHODS The course is composed of a set of frontal lessons and a set of practice sessions. During the frontal lesson, the teacher presents the topics providing also examples of live code that are tested on a real tool chain. Students can use their own laptops during the lecture in order to reproduce what is proposed by the teacher. During the practice sessions, the students have to face up with real problems that they should solve by applying the techniques learnied during the lectures. SYLLABUS/CONTENT The titles of the main contents discussed during frontal lessons are provided in the following list. Lecture nodes and source code can be downloaded from https://bit.ly/unige_makers 01 - Introduction to IoT, WoT and Physical Computing 02 - JavaScript 03 - HTTP 04 - NodeJS 05 - REST API 06 - WoT Proxy 07 - Persisting Data 08 - Unit Testing 09 - Securing 10 - Interoperability and Semantic More topics: A - The Arduino Platform B - Serial Communication C - Sensors RECOMMENDED READING/BIBLIOGRAPHY 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 TEACHERS AND EXAM BOARD RICCARDO BERTA Ricevimento: Appointments. Writing to riccardo.berta@unige.it Exam Board RICCARDO BERTA (President) ALESSANDRO DE GLORIA FRANCESCO BELLOTTI (President Substitute) LESSONS LESSONS START https://corsi.unige.it/9273/p/studenti-orario Class schedule L'orario di tutti gli insegnamenti è consultabile all'indirizzo EasyAcademy. EXAMS EXAM DESCRIPTION The exam is an oral examination on the theoretical topics covered during lectures. In particular, the student has to provide fluency in the description of the main concept of RESTful APi design approach. ASSESSMENT METHODS During the oral exam, the teacher asks the student to illustrate some concepts learned in class. For each concept, the student has to present the definition, the conditions of applicability and pros/cons in relation to other approaches. During the examination, the teacher verifies that the concepts have been learned at a level of knowledge that allows the student to apply them in real cases. Exam schedule Data Ora Luogo Degree type Note 17/02/2023 09:00 GENOVA Esame su appuntamento Esame su appuntamento. Contattare il docente 15/09/2023 09:00 GENOVA Esame su appuntamento Esame su appuntamento. Contattare il docente