System Design Concepts for the Internet of Things

Објавено: June 28, 2023
1. Course Title System Design Concepts for the Internet of Things
2. Code 4ФЕИТ07006
3. Study program 20-IMSA, 21-PNMI, 8-KM-INN
4. Organizer of the study program (unit, institute, department) Faculty of Electrical Engineering and Information Technologies
5. Degree (first, second, third cycle) Second cycle
6. Academic year/semester I/1   7. Number of ECTS credits 6.00
8. Lecturer Dr Marija Kalendar
9. Course Prerequisites
10. Course Goals (acquired competencies):

The aims of the course include learning the process of system design, with special focus on IoT system design considering all elements, design and evaluation of the prototype solutions. Upon successful completion of the module, the students are able to make informed design decisions for the development of complete IoT systems including devices and applications. They will be able to evaluate, compare and apply different platforms, algorithms, protocols and system architectures for IoT applications, considering sensing, computation, communication and energy aspects. Students will be able to apply the learned design methodologies, algorithms and protocols to develop new applications in many domains. They will have competences for criitical reflection on the societal impact of the IoT together with safety, security and privacy aspects. Students will be able to practice team work through the entire development cycle, from system specification to constructing a prototype and system implementation.

11. Course Syllabus:

System design concepts. Specific design concepts for the IoT. Development of prototypes representing minimum viable products. Development environments for embedded software. Early evaluation of product’s potential. Evaluation of concept ideas and prototypes considering design choices compared to the user experience, suitability of the technical solutions and potential for further development into complete IoT products or additional prototype development needs.  Short review of embedded and cyber-physical systems and the IoT; Application scenarios for IoT; Design and modeling of embedded platforms; Resource aware programming, hardware programming, developing multi-threaded software; Inter-process communication with shared memory and message passing; Programming using real time operating systems; Fault detection and testing, and fault tolerance and fault recovery.  Connecting IoT devices and gathering data: traditional and cloud platforms; reference architectures for the IoT (warehouse architectures, cloud-based architectures, and edge computing); processing large data sets; IoT and the cloud; Architectures of distributed systems; Distributed IoT-based systems, middleware and methods for system integration; communication frameworks and protocols; consumer-producer and publisher-subscriber communication patterns;   Energy supply and constraints;  quality characteristics and metrics for IoT-based system architectures, including energy efficiency;   Basic elements for implementing security and privacy concepts for IoT-based systems; software design patterns for dependable systems; system simulation and validation; application examples for various industries.

12. Learning methods:

Lectures, independent work on course project tasks and preparation of seminar papers.

13. Total number of course hours 180
14. Distribution of course hours 3 + 3
15. Forms of teaching 15.1 Lectures-theoretical teaching 45 hours
15.2 Exercises (laboratory, practice classes), seminars, teamwork 45 hours
16. Other course activities 16.1 Projects, seminar papers 30 hours
16.2 Individual tasks 30 hours
16.3 Homework and self-learning 30 hours
17. Grading
17.1 Exams 0 points
17.2 Seminar work/project (presentation: written and oral) 50 points
17.3. Activity and participation 0 points
17.4. Final exam 50 points
18. Grading criteria (points) up to 50 points 5 (five) (F)
from 51 to 60 points 6 (six) (E)
from 61 to 70 points 7 (seven) (D)
from 71 to 80 points 8 (eight) (C)
from 81 to 90 points 9 (nine) (B)
from 91 to 100 points 10 (ten) (A)
19. Conditions for acquiring teacher’s signature and for taking final exam 60% success from all curriculum activities
20. Forms of assessment The exam consists of two parts (Can be completed as two partial exams): First partial exam – theoretical part: Test questions and problems (70 min) and Second partial exam – practical part: Finishing and presenting an independent practical project. The use of books, scripts, manuscripts or notes is partially allowed during the exam, but the use of calculators, mobile phones, tablets or any other electronic devices is not allowed.
21. Language Macedonian and English
22. Method of monitoring of teaching quality Self-evaluation
23. Literature
23.1. Required Literature
No. Author Title Publisher Year
1. McEwen, Adrian, and Hakim Cassimally Designing the internet of things. John Wiley & Sons, 2013
2. A.James, A. Seth, S. C. Mukhopadhyay IoT System Design: Project Based Approach Springer 2021
3. Perry Lea Internet of Things for Architects: Architecting IoT solutions by implementing sensors, communication infrastructure, edge computing, analytics, and security Packt Publishing 2018
23.2. Additional Literature
No. Author Title Publisher Year
1.  Anderson, Ross  Security Engineering: A Guide to Building Dependable Distributed Systems, 3rd Edition  John Wiley & Sons  2020
2.  Bass, Len, Clements, Paul & Kazman, Rick  Software architecture in practice, 3. ed.  Addison-Wesley  2012
3.  Vermesan, Ovidiu, and Peter Friess  Internet of things – from research and innovation to market deployment  River Publishers  2014