15-821/18-843: Mobile and Pervasive Computing (IoT)

Professors Mahadev Satyanarayanan & Dan Siewiorek
Guest Faculty:  Professors Jason Hong, Swarun Kumar, Brandon Lucia, and Asim Smailagic

Fall 2020
Course Web page at http://www.cs.cmu.edu/~15-821

YouTube videos of final demos from previous classes 

Course Description

This course explores the principles and practice of mobile computing and its close relative, pervasive computing (aka "Internet of Things (IoT)").   Many traditional areas of computer science and computer engineering are impacted by the constraints and demands of mobile and pervasive computing. The course will offer significant hands-on experience:  students will work under the guidance of a mentor on a project. Each student will present a research paper from the literature in a conference-style 30-minute  talk.      Each student will also present a short (30 minutes) overview of the commercial landscape for one of the topics covered in class.  There will a brief quiz at the start of each class, based on the readings  for that class.

Necessary Background Knowledge

Students with good backgrounds in operating systems, distributed systems, and computer architecture will find that this course builds naturally on their knowledge base.   Without these prerequisites, the course may still be accessible to a student who is willing to put in additional effort.  If in doubt, check with one of the instructors before registering.

Course Goals/Objectives

The primary goal of this course is to help students learn the core principles and design challenges of two closely-related classes of computing systems: (a) those in which wireless-enabled mobility is a first-class design consideration, and (b) those that are rich in sensing, computing and communication, yet gracefully integrated with human users.  Although wireless networking plays an important role in this course, it is not the sole or primary focus.

Learning Outcomes

This course aims to impart conceptual knowledge, hands-on experience and industry context.  Students gain conceptual knowledge on  key topics in mobile and pervasive computing (listed below) through a set of course readings.  They gain hands-on experience through a substanial implementation project.     Through commercial scans presented by students on each topic, they learn about the state of the art as it applies to commercial practice.  They also learn how commercial practice in this space diverges from academic research.


Course Logistics

Course Resources

External Resources

Synthesis lectures on Mobile & Pervasive Computing (Morgan & Claypool, free access to all Carnegie Mellon students and faculty).  The links below will only work from a machine with a CMU IP address.


Mahadev Satyanarayanan

Office: GHC 9123
Phone: x8-3743
Email: satya@cs.cmu.edu

Admin assistant: Chase Klingensmith, GHC 9229 (x8-3041, chasek@cs.cmu.edu)

Dan Siewiorek

Office: NSH 3513
Phone: x8-2570
Email: dps@cs.cmu.edu
Admin assistant: Marian D'Amico, NSH 3526 (x8-1216, marian@cs.cmu.edu)

Guest Faculty

Important Dates

Grading Weights

All students are expected to honor this academic integrity policy.

Here are some tips for wellbeing

Accommodations for Students with Disabilities

If you have a disability and have an accommodations letter from the Disability Resources office, we encourage you to discuss your accommodations and needs with us  as early in the semester as possible. We will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, we encourage you to contact them at access@andrew.cmu.edu.

Last updated 2020-03-09 by Satya