Ubiquitous (aka pervasive) computing is an emerging concept of how people may use computing support in the future: no longer interacting with one computer at a time, but rather interacting with a dynamic set of networked computers, often invisible and embodied in everyday objects in the environment.
This course introduces ubiquitous computing concepts and technology through guided readings and hands-on project experience. This paper offers a good overview of how ubiquitous computing builds on distributed systems and mobile computing, and illustrates the kind of material to be covered in class. Specifically, the following topics will be covered:
· Definition and scope of ubiquitous computing.
· Architectures for ubiquitous computing
new devices and communications;
software architectures & middleware.
· Integrating the physical and the virtual worlds
sensing and actuation;
ontology and modeling the world;
awareness and perception.
· Interactions between humans and (ubiquitous) computers
situated (context-aware) computing;
multimodal and natural interaction;
disambiguation and proactivity.
· Social aspects of ubiquitous computing
implications on privacy, security and autonomy;
system and legal safeguards;
cost-benefit and market forces.
· Deployment and evaluation of solutions
scalability, reliability, maintenance;
user-centric evaluation (controlled experiments and in-the-wild).