EECS 4443 / CSE 5443 – Mobile User Interfaces

Winter 2015


Lectures TR 13:00-14:30, BC 214
Labs F 12:30-14:30, LAS1002A     
Instructor Scott MacKenzie
Office LAS 3045
Office hours      Tues & Thurs, 11:00-12:00
TA Yang Yang (

Announcements, Downloads, etc.


Course Description:

The design, implementation, and evaluation of user interfaces for touchscreen devices and tablet computers.  Students develop user interfaces that include touch, multi-touch, vibration, device motion, position, and orientation, environment sensing, video capture, and audio capture.  Lab exercises emphasize these topics in a practical manner.

Prerequisite: General prerequisites, CSE 3461 3.0

Expanded Course Description:

Students learn how to design, implement, and evaulate user interfaces for contemporary mobile devices such as smart phones and tablet computers. The platform used for the course is Android with applications written in Java.  Practical issues in UI design are elaborated, including design principles and design goals.  Students do a project that involves designing and implementing a mobile user interface or interaction technique.  A user study is undertaken to evaluate the design.  The evaluation involves measuring and logging human performance data, analysing the data, and writing a report.

Many common features in mobile devices are not available in desktop computer systems and, consequently, are not taught in other courses.  As well as a graphical display, the devices of interest for this course include touch input (including multi-touch and finger pressure sensing), device position and motion sensing via accelerometers and gyroscopes, environmental sensors, actuators for vibrotactile output, audio capture, and camera input. 

The development of user interfaces for these devices is complex since the target system and development systems are, by necessity, different.  Thus, the course includes instruction on the development environment including the use of a debugger and emulator, and connecting the target and development systems via a physical or wireless link, and uploading and downloading files, including the installation of application software.

The topics taught in this course include the following:

Suggested Readings:


Item      Marks     
Bonus      Due Date     
Labs (15%)
   Lab 1
   Lab 2
   Lab 3
   Lab 4
   Lab 5
   Lab 6
Jan 16
Jan 30
Feb 13
Feb 27
Mar 13
Mar 27
Assignment (15%) 15 Feb 22
Exams (30%)


Feb 12
Last class
Project (40%)
Mar 16
Apr 22
Total 100

Assignments are due by midnight on the specified day and are to be submitted electronically with the "submit" command in Prism (unless specified otherwise).

Alternatively, you can submit using the web: click here.

Labs must be "checked off" during the scheduled labs periods.  It is strongly recommended that you treat the labs as mini-assignments – to be done on your own time prior to the scheduled lab.  Use the lab periods to get checked off.  The TA will assist you during the labs, but debugging is a time-consuming process.  Lab time is limited.

Grades can be viewed via the following command in Prism: courseInfo 4443.

Important Dates:

Event      Date     
Winter classes start      Jan 5
First 4443 class Jan 6
Reading week Feb 14-20
Drop date Mar 6
Last 4443 class Apr 2
Winter classes end Apr 6
Winter exams start Apr 8
Winter exams end Apr 24

Course Policies:

Late assignments or projects will not be accepted, unless prior arrangement has been made with the instructor. Missed midterms are handled in the same way. Note that exceptions to the late policy will be made only in serious cases and if the circumstances are documented and beyond your control. Please see the Departmental WWW page on Academic Policies for details regarding academic dishonesty, etc.