Cyber-Physical Software Engineering
The main objectives are: design principles of cyber-physical systems, computational systems interaction with the environment, IoT network protocols, embedded operating systems, and embedded programming.
Cyber-physical systems are composed of networked computing elements that are integrated into the physical world. The course concentrates on computational elements and their interactions with other computational elements and with the physical world. In particular, the course introduces students to embedded hardware, embedded operating systems, embedded programming, sensors and actuators, specific network protocols, and computational models.
The course will include frontal instruction, but also group work on projects that will be assigned in the first weeks of the course. Each group will be asked to design and implement a full Internet of Things application.
Students will be evaluated based on: - A group course project to be carried out during the course - A group oral presentation on network protocols - A written exam
- Lee and Seshia, “Introduction to Embedded Systems – A Cyber-Physical Systems Approach”, Second Edition, MIT Press, 2017. Also available online: https://ptolemy.berkeley.edu/books/leeseshia
- Marilyn Wolf, “Computers as Components”, Fourth Edition, In The Morgan Kaufmann Series in Computer Architecture and Desi, Morgan Kaufmann, 2017.