05-830, User Interface Software, Spring, 2001

Schedule

Note: The Readings are due on the date noted.
Links that do not work are to course notes that haven't been updated yet. Please see the corresponding lecture in last year's schedule
.

Mon
Jan 15
1. Course organization; Why are user interfaces important and hard to design and implement
Required Readings:
  • Brad A. Myers. "Challenges of HCI Design and Implementation," ACM Interactions. vol. 1, no. 1. January, 1994. pp. 73-83. ACM DL Reference.
    Discusses why user interfaces are important, and why they are hard to design and implement.
Recommended Readings:
  • Brad A. Myers and Mary Beth Rosson. "Survey on User Interface Programming," Proceedings SIGCHI'92: Human Factors in Computing Systems. Monterrey, CA, May 3-7, 1992. pp. 195-202. ACM DL Reference
    Discusses what percent of the time and effort went into the UI part. (Outdated).
  • Nielsen Text: Chapters 1 and 2
Wed
Jan 17
2. UI Styles, Dimensions of UI Variability, Introduction to Benchmarks
Required Reading:
  • Brad A. Myers, Neal Altman, Khalil Amiri, Matthew Centurion, Fay Chang, Chienhao Chen, Herb Derby, John Huebner, Rich Kaylor, Ralph Melton, Robert O'Callahan, Matthew Tarpy, Konur Unyelioglu, Zhenyu Wang, and Randon Warner. "Using Benchmarks to Teach and Evaluate User Interface Tools." Submitted for publication. Acrobat(pdf) or postscript
  • Nielsen Text: Chapter 3

* Start Work on Homework 1: Benchmark descriptions.

Benchmarks from previous years:

Mon
Jan 22
3. UI Design: UI Guidelines
Required Readings:
  • Nielsen Text: Chapter 5
Recommended Readings:
  • Nielsen Text: Chapter 8
  • Grudin, "The Case Against User Interface Consistency," CACM, Oct 89, pp. 1164-1173. ACM DL Reference.
Wed
Jan 24
Presentations and discussions of the benchmark tasks (by class members)

* Benchmark descriptions DUE

Mon
Jan 29
Examples of Good and Bad User Interfaces

Presentations:

  • Quicken
  • Alice - Desney Tan
  • FileTrust -- Jack Zaientz
  • Age of Empires, -- Rishi Bhatnagar
  • Photoshop Layers -- James Fogarty
  • Arch. Desktop in AutoCAD -- Ipek Ozkaya

* Presented by the class members (optional)

* Start Work on Homework 2: Usability Evaluation

Wed
Jan 31
4. Usability Engineering Design Process
Required Readings:
  • Nielsen Text: Chapter 4 and 6
Recommended Readings:
  • Nielsen Text: Chapter 2 and 7
Mon
Feb 5
5. Overview of UI Software and Tools
Required Readings:
  • Brad A. Myers. "User Interface Software Tools," ACM Transactions on Computer-Human Interaction. vol. 2, no. 1, March, 1995. pp. 64-103. ACM DL Reference
  • Brad A. Myers. "A Brief History of Human Computer Interaction Technology." ACM interactions. Vol. 5, no. 2, March, 1998. ACM DL Reference. (A previous version appeared as CS TR CMU-CS-96-163 and HCII TR CMU-HCII-96-103: html and postscript.)
Wed
Feb 7
Past Present and Future of User Interface Software Tools
Required Readings:
  • Brad A. Myers, Scott Hudson and Randy Pausch. "Past Present and Future of User Interface Software Tools," ACM Transactions on Computer Human Interaction, (Mar. 2000). Volume 7 , Issue 1. pp. 3-28. ACM DL Reference. (old postscript or Acrobat)

* Homework 2 DUE

Benchmark List

* Start Work on Homework 3: First Implementation of a Benchmark Task, using a Prototyping Tool

Mon
Feb 12
6. Interactive Tools: Prototypers (HyperCard, Director, Visual Basic), Interface Builders
Required Readings:
  • James Landay and Brad A. Myers. "Interactive Sketching for the Early Stages of User Interface Design," Proceedings CHI'95: Human Factors in Computing Systems. Denver, CO. May, 1995. pp. 43-50. (html) ACM DL Ref
Optional Readings:
  • Brad A. Myers. "Separating Application Code from Toolkits:  Eliminating the Spaghetti of Call-Backs,"  ACM Symposium on User Interface Software and Technology: UIST'91, Hilton Head, SC, Nov. 11-13, 1991. pp. 211-220. ACM DL Reference
  • James A. Landay and Brad A. Myers. Just Draw It! Programming by Sketching Storyboards.   Carnegie Mellon University School of Computer Science Technical Report, no. CMU-CS-95-199 and Human Computer Interaction Institute Technical Report CMU-HCII-95-106. November, 1995. (html) (postscript)
Wed Feb 14 7. Software Organization: Lexical-syntax-semantics, Seeheim Model, MVC, Object-Oriented Programming for UIs
Required Readings:
  • Brad A. Myers, Dario A. Giuse, and Brad Vander Zanden. "Declarative Programming in a Prototype-Instance System: Object-Oriented Programming Without Writing Methods," Proceedings OOPSLA'92: ACM Conference on Object-Oriented Programming Systems, Languages, and Applications. October 18-22, 1992. Vancouver, BC, Canada.  SIGPLAN Notices, vol. 27, no. 10. pp. 184-200. ACM DL Reference.
Optional Readings:
  • William Buxton, "Lexical and Pragmatic Considerations of Input Structures," Computer Graphics, January, 1983, (17)1, pp. 31-37. (lexical, syntactic, semantic, etc.). [Not online]
  • Mark Green, "Report on Dialogue Specification Tools," User Interface Management Systems, G. Pfaff, ed. Berlin: Springer-Verlag, 1985. pp. 9-20. (Seeheim model)
  • Glenn Krasner and Stephen T. Pope, "A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk-80", Journal of Object-Oriented Programming (JOOP). August-September, 1988. vol. 1, no. 3. pp. 26-49.
Mon
Feb 19
8. Constraints
Required Readings:
  • Brad Vander Zanden, Brad A. Myers, Dario Giuse and Pedro Szekely. "Integrating Pointer Variables into One-Way Constraint Models," ACM Transactions on Computer-Human Interaction. vol. 1, no. 2, June, 1994. pp. 161-213. ACM DL Reference
Optional Readings:
  • Brad Vander Zanden, "An Incremental Algorithm for Satisfying Hierarchies of Multi-way, Dataflow Constraints", ACM Transactions on Programming Languages and Systems, 18(1), January, 1996. pp. 30-72. ACM DL Reference
  • Brad A. Myers, Robert C. Miller, Rich McDaniel, and Alan Ferrency, "Easily Adding Animations to Interfaces Using Constraints." ACM Symposium on User Interface Software and Technology, UIST'96, November 6-8, 1996. Seattle, WA. pp. 119-128. ACM DL Reference (postscript
Wed
Feb 21
* In-class presentations of 1st Benchmark Implementation

Start 2nd Implementation of a Benchmark Task, using a new tool

Mon
Feb 26
Guest Lecture, Scott Hudson -- Advanced Constraints

Scott's PowerPoint Slides

Required Readings:
  • Scott E. Hudson. "Incremental attribute evaluation: a flexible algorithm for lazy update," ACM Transactions on Programming Languages and Systems, Volume 13 , Issue 3 (1991), Pages 315-341.  ACM DL Reference
  • Bjorn N. Freeman-Benson, John Maloney and Alan Borning. "An incremental constraint solver," Communications of the ACM . Volume 33 , Issue 1 (1990). Pages 54-63. ACM DL Reference
Wed
Feb 28
9. Toolkits: intrinsics, callbacks, resources, widget hierarchies, geometry management

Instructions for the mid-term exam

Mon
Mar 5
* In-class Mid-term exam
Wed
Mar 7
Discuss mid-term

10. Basic Computer Graphics

Required Readings:
  • New Foley & van Dam, pp. 25-40, 52-60
  • old Foley & van Dam, pp. 132-134 (color maps)
Mon
Mar 12
11. Other Output Models: structured graphics; display postscript
Required Readings:
  • Brad A. Myers, Richard G. McDaniel, Robert C. Miller, Alan Ferrency,  Andrew Faulring, Bruce D. Kyle, Andrew Mickish, Alex Klimovitski, and Patrick Doane."The Amulet Environment: New Models for Effective User  Interface Software Development", IEEE Transactions on Software Engineering, Vol. 23, no. 6. June, 1997. pp. 347-365. IEEE Explore Ref
    Abstract in html,  postscript.
Wed
Mar 14
* In-class presentations of 2nd Benchmark Implementation

Start 3rd Implementation of a Benchmark Task, using a new tool

Mon
Mar 19
12. Window Manager Input Models
Wed
Mar 21
13. New toolkit input models: Garnet & Amulet
Required Readings:
  • Brad A. Myers. "A New Model for Handling Input," ACM Transactions on Information Systems, Vol. 8, No. 3. July, 1990. pp. 289-320. ACM DL Reference.
  • Brad A. Myers and David Kosbie. "Reusable Hierarchical Command Objects," Proceedings CHI'96: Human Factors in Computing Systems. Vancouver, BC, Canada. April 14-18, 1996. ACM DL Reference
  • Brad A. Myers. "Scripting Graphical Applications by Demonstration," Proceedings CHI'98: Human Factors in Computing Systems. Los Angeles, CA, April 18-23, 1998. pp. 534-541. ACM DL Reference
Mon
Mar 26
Spring Break
Wed
Mar 28
Spring Break
Mon
Apr 2
CHI'2001: No class

Wed
Apr 4
CHI'2001: No class

Mon
Apr 9
Amulet Input Model, cont.
Wed
Apr 11
* In-class presentations of 3rd Benchmark Implementation

Start 4th Implementation of a Benchmark Task, using Amulet

Mon
Apr 16
14. Demonstrational Tools
Required Readings:
  • Brad A. Myers, Richard G. McDaniel, and David S. Kosbie. "Marquise: Creating Complete User Interfaces by Demonstration," Proceedings INTERCHI'93: Human Factors in Computing Systems. Amsterdam, The Netherlands, April 24-29, 1993. pp.  293-300. ACM DL Reference. (postscript)
  • Richard G. McDaniel and Brad A. Myers, "Getting More Out Of Programming-By-Demonstration." Proceedings CHI'99: Human Factors in Computing Systems. Pittsburgh, PA, May 15-20, 1999. pp. 442-449. (Gamut) ACM DL Reference. postscript.
  • Brad Myers, Richard McDaniel and David Wolber. "Programming by example: Intelligence in Demonstrational Interfaces," Communications of the ACM. March, 2000. vol. 43, no. 3. pp. 82-89. ACM DL Reference.
Optional Readings:
  • Brad A. Myers. "Creating User Interfaces Using Programming-by-Example, Visual Programming, and Constraints," ACM Transactions on Programming Languages and Systems. vol. 12, no. 2, April, 1990. pp. 143-177.  (Peridot) ACM DL Reference
  • Brad A. Myers, Brad Vander Zanden, and Roger B. Dannenberg. "Creating Graphical Interactive Application Objects by Demonstration," ACM Symposium on User Interface Software and Technology: UIST'89, Williamsburg, VA, Nov. 13-15, 1989. pp. 95-104. (Lapidary) ACM DL Reference.
Wed
Apr 18

15. UIMS Techniques: Menu trees, transition networks, grammars, Event Languages, HyperTalk, production systems, Declarative Languages

Required Readings:
  • Mark Green, "A Survey of Three Dialogue Models," ACM Transactions on Graphics (5)3, Jul, 1986, pp 244-275. ACM DL Reference
  • chapter 10 from Olsen's book: "Editing Dialog Models". Not Online.
Optional readings:
  • Robert J.K. Jacob,  "A Specification Language for Direct Manipulation Interfaces," ACM Transactions on Graphics, Oct, 1986, vol. 5, no. 4, pp. 283-317. ACM DL Reference.
  • Ralph D. Hill, "Supporting Concurrency, Communication and Synchronization in Human-Computer Interaction - The Sassafras UIMS", ACM Transactions on Graphics, Jul, 86, vol. 5, no. 3, pp. 179-210. ACM DL Reference
  • Philip J. Hayes, Pedro A. Szekely, and Richard A. Lerner, "Design Alternatives for User Interface Management Systems Based on Experience with COUSIN", Proceedings SIGCHI'85: Human Factors in Computing Systems, San Francisco, CA, Apr, 1985, pp. 169-175. ACM DL Reference. ACM DL Reference

 

Mon
Apr 23
16. Model-based tools: Creating the UI Automatically
Required Readings:
  • Dan R. Olsen, Jr., "A Programming Language Basis for User Interface Management," Proceedings SIGCHI'89, Austin, TX, Apr, 1989, pp. 171-176. ACM DL Reference
Optional Readings:
  • Brad Vander Zanden and Brad A. Myers,  "Automatic, Look-and-Feel Independent Dialog Creation for Graphical User Interfaces," Proceedings SIGCHI'90: Human Factors in Computing Systems.  Seattle, WA, April 1-5, 1990. pp. 27-34. ACM DL Reference [PDF not online]
  • Pedro Szekely, Ping Luo, and Robert Neches, "Beyond Interface Builders: Model-Based Interface Tools, Proceedings INTERCHI'93: Human Factors in Computing Systems. Amsterdam, The Netherlands, April 24-29, 1993. pp. 383-390. ACM DL Reference.
Wed
Apr 25
17. Component Techniques: Andrew, OLE, OpenDoc, Java Beans
Optional Readings:
Mon
Apr 30
Catch up, and videos
Optional Readings:
  • Tyson R. Henry, Scott E. Hudson, Andrey K. Yeatts, Brad A. Myers and Steven Feiner; "A nose gesture interface device: extending virtual realities," Proceedings of the fourth annual ACM symposium on User interface software and technology, UIST'1991, Pages 65 - 68. ACM DL Reference.

Fill out questionnaire in class

Instructions for the Final

Wed
May 2
* In-class presentations of 4th Benchmark Implementation
Thu. May 10 1:00p.m.-4:00p.m. FINAL EXAM: WEH 8427

January 15: First day of class
March 8-9: no classes
MidTerm Grades Due March 13
March 26-30: Spring break
April 20-21: No classes
May 4: Last day of classes
Final Grades Due: May 17


Back to 05-830 main page