ICS 227 Advanced User Interface Architecture


Class Home Page


Class Home


Academic Honesty













Administrative Information



Instructor: David Redmiles

Electronic Mail: redmiles@ics.uci.edu

Office: ICS2-215

Office Hours: Wednesdays 2-3:50; but please check my schedule on my home page in case I am traveling.



Lecture: Tu Th 17:00-18:20

Classroom: CS 174

Course Code: 36725




Course Description and Prerequisites


227 Advanced User Interface Architecture (4). Architectural concerns in advanced interactive systems. The design of current and emerging platforms for novel interactive systems. Paradigms such as constraint-based programming, multimodal interaction, and perceptual user interfaces for individual, distributed, and ubiquitous applications.


Informal Course Description


This course will focus primarily on the architecture of different kinds of user interfaces to software systems. Keeping the “human in the loop” is a key to all of these. But there are a great variety of systems, usually with different architectural considerations and software implementation platforms. Natural language interfaces, text-based systems, groupware, knowledge-based systems, tutoring systems—all have differences that we will explore.






Add/drop: If you wish to add this class, do so by the end of Week 1. If you wish to drop the class, do so by the end of Week 2.


Academic honesty: Please familiarize yourself with the latest UCI academic honesty policy: http://www.editor.uci.edu/catalogue/appx/appx.2.htm. The consequences of academic dishonesty are not worth the risks.


Announcements: Please check the announcements link of the class Web page regularly. Emergency announcements will be made using the official mailing list, so make sure your UCI (name@uci.edu) login is functioning and that you check it daily.




Course Mechanics and Grading


Students will implement a user interface software project over the course of the quarter. They will participate in at least three presentations about this project. The first presentation will be a description of their project idea. The second will be a detailed description (possibly as a collaborative presentation) of the implementation platform for the project. The third presentation will be the final presentation of the project. The project will need to be documented appropriately according to the developers' and users' perspectives.


Generally, class will consist one-half to three-quarters of discussion of a paper or papers with the remainder of the class focusing on discussion of students' projects and status.



  • 20% Class Participation
  • 40% Class Presentations/Assignments
  • 40% Term Project



  • Project Bid - Written Assignment - 2 pages due Tuesday Week 3
  • Platform Discussion - In Class Group Presentation starting Week 3
  • Project Update - Brief Demonstration – Beginning Week 6
  • Final Project Report with code (and potential demonstration) - Due Finals Week


The term project takes the place of a final—i.e., no final exam.