CS1635 Interface Design Methodology

Instructor: Prof. S. K. Chang
Office: 6101 Sennott Building
Office Hours: 5:15p - 6p and 7:15p - 8p TuTh
Telephone: 624-8423
E-mail: chang@cs.pitt.edu

Grader: YingZe Wang
Office: 6508 SQ
Office Hours: TBA
Telephone: x48866
E-mail: yiw32@pitt.edu

Time and Classroom: 6p - 7:15p 5129SQ

Course Description:

This course is one of the courses in the software engineering track. In user interface design, the designers are faced with many questions regarding appearance, content, modalities and functionalities of the interface. In this course user interface patterns, which are essentially reusable software components, are introduced as the cornerstone in a user-centric design methodology. Iconic, visual, gestural, tactile, audio and unconventional user interfaces are discussed systematically. Class projects enable the students to apply the user interface patterns to the design of novel multimedia interfaces for diversified applications.


CS1530: Introduction to Software Engineering (with passing grade of C or better), or consent of the instructor.

Course Organization:

Week 1: Basic concepts of interface - computer-computer interface, messages and protocols, human-computer interface
Week 2: Software components -. interaction standards, composition, containers
Week 3: UML uniformed modelling language as a basis for patterns (You will need to download ArgoUML (Open Source Software) whose official website is: http://argouml.tigris.org/ and there is also a well-written extensive Argo UML user manual).
Week 4: Theory of patterns, reusable software components
Week 5: Introduction to user interface patterns
Week 6-9: A survey of user interface patterns
  Search - Continuous filter, continuous highlight
  Data Views - Overview beside detail, expand in context, fisheye
  Storages - Rule storage, data storage, placeholder, temporary storage
  Selecting and Manipulating Objects - Double list, editable table,
    pile of items, master and instances
  Time - Calendar strip, schedule
  Hierarchies and Sets - Tree, groups and items
  Save and Undo - Autosave, global undo, object-specific undo,
    Deleted data storage
  Web Applications - Shopping cart, reservation
  Hypermedia - Navigational context, news, landmark, information on demand
  Slow Intelligence Systems - enumerate, propagate, eliminate, adapt, concentrate
(Week 10-16: Term project to design multimedia user interface concurrent with classes)
Week 10: Iconic user interface
Week 11: Visual user interface - math expressions, sketches
Week 12: Gestural user interface - American sign language
Week 13: Audio user interface
Week 14: Tactile user interface - touch interface, Braille reader; Unconventional user interfaces - brain wave, etc.
Week 15: Case study of interface for smarter healthcare systems
Week 16: Class project presentations

Course Requirements:

Detailed class notes, similar to those available on class web pages for CS1530, Introduction to Software Engineering, www.cs.pitt.edu/~chang/153/1530syl.html, will be provided. The class notes are based upon research papers and articles on user interface design patterns, component-based software engineering and multimedia user interfaces. There will be a term project, which amounts to a substantial multi-week homework carried out by a team. The project teams are required to give project presentations. Students will form two-person project teams. In Week Sixteen, each project team will make a project presentation during the class periods.

Term Projects:

The term projects will be centered around the use of Kinect TMor other interface modalities to design multimedia user interfaces for the stage set of a science fiction play.

Class Notes:

Detailed class notes will be provided.

Grading Policy:

The grade scaling will be computed based on the performance of the undergraduate students only. Graduate students who may also take this course will then be graded on this undergraduate scale. Unless noted otherwise, the work in this course is to be done independently. Discussions with other students on the assignments or term projects should be limited to understanding the statement of problems and discussing programming techniques.
Homeworks		20%
Midterm Exam		25%
Final Exam		25%
Term Project		30% 

Late Policy:

A late assignment will receive a deduction of 1 point per day. Any assignment that is more than 3 days late will be accepted only under special circumstances with the instructor determining the penalty in a fair manner.

Students with Disability:

If a student has a disability for which the student may request an accommodation, the student is encouraged to contact both the course instructor and the Office of Disability Resources and Services, 216 William Pitt Union (412)624-7890 as early as possible in the term.

Academic Integrity Policy:

Cheating/plagiarism will not be tolerated. Students suspected of violating the University of Pittsburgh Policy on Academic Integrity, noted below, will be required to participate in the outlined procedural process as initiated by the instructor. A minimum sanction of a zero score for the quiz, exam, paper or assignment will be imposed.
"The integrity of the academic process requires fair and impartial evaluation on the part of faculty and honest academic conduct on the part of the students. To this end, students are expected to conduct themselves at a high level of responsibility in the fulfillment of the course of their study. It is the corresponding responsibility of faculty to make clear to students those standards by which students will be evaluated, and the resources permissible for use by students during the course of their study and evaluation. The educational process is perceived as a joint faculty-student enterprise which will perforce involve professional judgement by faculty and may involve without penalty . reasoned exception by students to the data or views offered by the faculty." Senate Committee on Tenure and Academic Freedom, February 1974


  • Christopher Alexander, The Timeless Way of Building, Oxford University Press (1979).
  • Von Udo Arend, "User Interface Patterns - Components for User Interfaces", http://www.sapdesignguild.org/editions/edition8/patterns.asp
  • Shi-Kuo Chang, "Multimedia Software Engineering", Kluwer Academic Publishers, 2000.
  • Sari A. Laakso, "User Interface Design Patterns", http://www.cs.helsinki.fi/u/salaakso/patterns/index.html