The course contains the following thematic areas relating to the theory of Ubiquitous Computting
- The concept of Ubiquitous Computing: historic evolution, correlation with other computer science and engineering disciplines, correlation with other scientific disciplines
- Application domains for Ubiquitous Computing: Smart cities and environments, Ambient Intelligence, Pervasive Healthcare, Pervasive Games, Mobile Commerce and Business, Industrial Internet of Things.
- Context Awareness and Computational Intelligence: Types of context awareness, methods for context acquisition, machine learning and artificial intelligence for context awareness.
- Architectures and models of Ubiquitous Computing: devices, network technologies, architectures, Internet of Things, distributed computing, cloud/fog/edge computing.
- Interacting with Ubiquitous Computing Systems: Implicit and Explicit interaction, multimodal interaction, interactive system development, evaluation of interactive Ubiquitous Systems
- Professional and Societal issues in Ubiquitous Computing: Ethics, privacy, conformance to national and international guidelines and legislation, data integrity, trust, objectivity and accountability of algorithms.
Further, the course includes the teaching of practical elements, in which students are expected to undertake projects involving matters of design, development and evaluation of actual systems, based on a range of technologies that may include the Internet of Things, distributed Machine Learning using Apache SparkML/Storm/Kafka, Android and Mobile HTML5 applications, Arduino/Raspberry Pi sensing devices etc.