Checking date: 27/06/2021

Course: 2021/2022

Ubiquitous Computing
Study: Bachelor in Computer Science and Engineering (218)

Coordinating teacher: BELLUCCI , ANDREA

Department assigned to the subject: Department of Computer Science and Engineering

Type: Electives
ECTS Credits: 6.0 ECTS


Requirements (Subjects that are assumed to be known)
User Interfaces (Course: 3 / Semester: 1)
The Ubiquitous Computing course has been designed as a space where students can reflect on the role and responsibilities of the interaction designer and how to interact with technology and the environment. The course aims to explore the design space of ubiquitous systems, that is, those interactive systems that go beyond the desktop computer and that are integrated into the fabric of our daily activities through a "embodied virtuality", with the aim to provide new possibilities for people to interact more meaningfully with their environment. The deeply multidisciplinary subject analyzes the historical journey on the development of human-computer interaction, highlighting the computer technologies and interaction techniques that make it possible for computing to "leave" the desktop computer to integrate into the physical world . On the one hand, new devices, technologies and interaction paradigms for ubiquitous environments are addressed in a theoretical and practical way, such as API for distributed web systems, interfaces for large interactive screens and multi-touch, tangible and embodied interaction, so that students acquire knowledge about the evolution of computing and human-computer interaction from mainframes to ubiquitous computing. On the other hand, the course wants to offer the substrate to understand the possibilities and problems that arise when designing distributed systems with new technologies and interaction techniques. Therefore, different cognitive theories, such as embodied cognition or distributed cognition, are emphasized, describing how their principles can be applied to the design of natural user interfaces. Likewise, the opportunities and technical limitations of distributed systems and computer networks to implement new interfaces and natural interactions are analyzed. Finally, new techniques for designing ubiquitous interaction systems are studied and practiced, such as rapid prototyping techniques. Upon successful completion of this course, the student acquires the abilities to: - Define the main ideas and concepts as well as the vocabulary of ubiquitous computing - Describe the different interaction paradigms in ubiquitous computing - Discuss the advantages (and disadvantages) of the different natural interaction techniques --- multitouch, tangible, embodied, etc. - Apply different methods for the design of interfaces that integrate different devices and techniques of natural interaction - Use the appropriate tools to create interactive systems that integrate different interaction devices and techniques - Cooperate in a team and distribute the workload to face complex problems
Skills and learning outcomes
Description of contents: programme
1. Introduction to ubiquitous computing - History and definition of ubiquitous computing - Theoretical foundations of ubiquitous computing - Interaction paradigms for ubiquitous environments 2. Interaction in ubiquitous environments - Multi-touch interaction - Augmented Reality, Virtual Reality and Mixed Reality - Tangible and embodied interaction - Interaction "without touching": gestures, voice and multimodal - Internet of things 3. Design of ubiquitous interaction systems - User-centered design for ubiquitous computing - Rapid prototyping techniques for ubiquitous environments 4. Development of Ubicomp sytems - Advanced aspects of JavaScript programming - Node.js and JavaScript programming "server side" - Web API for sensor-based interaction - JavaScript frameworks for cross-platform programming
Learning activities and methodology
* Theoretical classes: 1 ECTS - Purpose: to achieve the specific cognitive skills of the course - Execution: master classes in which theoretical concepts on ubiquitous computing are presented * Practical classes: 1 ECTS - Purpose: to achieve instrumental competences and develop attitudinal competences - Execution: practical laboratory classes in which technical topics will be exposed and practical examples related to the development of applications for ubiquitous computing will be shown. * E-learning (SPOC): 1.5 ECTS - Purpose: to achieve instrumental competences and develop attitudinal competences - Execution: online learning activities through videos, self-assessment tests, code analysis and programming assignments. Thanks to the support of the SPOC course, some of the theory classes will be oriented to deepen the online content. * Group work on a case study: 1.5 ECTS - Purpose: develop instrumental and attitudinal skills - Execution: Design and implementation of a practical case through group work * Critical analysis of articles, application and/or systems of ubiquitous computing: 0.5 ECTS - Purpose: develop instrumental and attitudinal skills - Execution: Class discussion of research articles on ubiquitous computing * Final exam: 0.5 ECTS - Purpose: complete the development of cognitive and procedural skills * Tutorials: Individualized assistance (individual tutorials) or in group (collective tutorials) to students by the teacher.
Assessment System
  • % end-of-term-examination 30
  • % of continuous assessment (assigments, laboratory, practicals...) 70
Calendar of Continuous assessment
Basic Bibliography
  • John Krumm. Ubiquitous computing Fundamentals.. Chapman & Hall/CRC Press . 2010
  • Paul Dourish. Where the action is. MIT Press. 2004
Recursos electrónicosElectronic Resources *
Additional Bibliography
  • Andy Clark. Natural Born Cyborgs: Minds, Technologies, and the Future of Human Intelligence . OUP USA. 2004
  • Donald A. Norman. The design of everyday things. New York: Basic Books. 2002
  • Herbert H. Simon. The sciences of the artificlal. MIT Press. 1996
Recursos electrónicosElectronic Resources *
(*) Access to some electronic resources may be restricted to members of the university community and require validation through Campus Global. If you try to connect from outside of the University you will need to set up a VPN

The course syllabus may change due academic events or other reasons.