05-830, User Interface Software, Spring, 2000

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 17
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.  (postscript)
    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  (postscript)  (note: Postscript may not print correctly)
    Discusses what percent of the time and effort goes into the UI part.
  • Nielsen Text: Chapters 1 and 2
Wed
Jan 19
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. (postscript)
  • Nielsen Text: Chapter 3

* Start Work on Homework 1: Benchmark descriptions.

Benchmarks from previous years:

Mon
Jan 24
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
Wed
Jan 26
Presentations and discussions of the benchmark tasks (by class members)

* Benchmark descriptions DUE

* Start Work on Homework 2: Usability Evaluation

Mon
Jan 31
4. Usability Engineering Design Process
Required Readings:
  • Nielsen Text: Chapter 4 and 6
Recommended Readings:
  • Nielsen Text: Chapter 2 and 7
Wed
Feb 2
Examples of Good and Bad User Interfaces

Presentations:

  • Quicken
  • Macintosh Map
  • others, TBD

* Presented by the class members (optional)

Mon
Feb 7
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.
  • Brad A. Myers. "A Brief History of Human Computer Interaction Technology." ACM interactions. Vol. 5, no. 2, March, 1998. To appear.  A previous version appeared as CS TR CMU-CS-96-163 and HCII TR CMU-HCII-96-103: html and postscript.
Wed
Feb 9
Past Present and Future of User Interface Software Tools
(Paper presented at HCIC'99)
Required Readings:a
  • Brad A. Myers, Scott Hudson and Randy Pausch. "Past Present and Future of User Interface Software Tools," ACM Transactions on Computer Human Interaction, 2000. To appear in the Special Millennium Issue. Available as: postscript or Acrobat

* Homework 2 DUE

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

Mon
Feb  14
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)
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.
  • 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 16 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.
Optional Readings:
  • William Buxton, "Lexical and Pragmatic Considerations of Input Structures," Computer Graphics, January, 1983, (17)1, pp. 31-37. (lexical, syntactic, semantic, etc.)
  • Mark Green, "Report on Dialogue Specification Tools," User Interface Management Systems, Berlin: Springer-Verlag, 1985. pp. 9-20. (Seeheim model)
  • Model-View-Controller paper, 40 pages.
Mon
Feb 21
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.
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.
  • 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. postscript.
Wed
Feb 23
* In-class presentations of 1st Benchmark Implementation

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

Mon
Feb 28
Constraints, continued

Instructions for the mid-term exam

Wed
Mar 1
* In-class Mid-term exam
Mon
Mar 6
Mid-Semester Break
No classes
Wed
Mar 8
Discuss mid-term

9. Toolkits: intrinsics, callbacks, resources, widget hierarchies, geometry management

Mon
Mar 13
10. Basic Computer Graphics
Required Readings:
  • New Foley & van Dam, pp. 25-40, 52-60
  • old Foley & van Dam, pp. 132-134 (color maps)
Wed
Mar 15
* In-class presentations of 2nd Benchmark Implementation

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

Mon
Mar 20
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.
    Abstract in html,  postscript.
Wed
Mar 22
No class, (personal reasons)
Mon
Mar 27
Spring Break
Wed
Mar 29
Spring Break
Mon
Apr 3
CHI'2000: No class

Wed
Apr 5
CHI'2000: No class

Mon
Apr 10
12. Window Manager Input Models
Wed
Apr 12
* In-class presentations of 3rd Benchmark Implementation

Start 4th Implementation of a Benchmark Task, using Amulet

Mon
Apr 17
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.
  • 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.
  • 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.
Wed
Apr 19
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. ftp://a.gp.cs.cmu.edu/afs/cs/project/garnet/doc/papers/marquiseCHI93.ps
  • 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. postscript. (Gamut)
  • Brad Myers, Richard McDaniel and David Wolber. "Intelligence in Demonstrational Interfaces," Communications of the ACM. March, 2000. vol. 43, no. 3. pp. 82-89.
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)
  • 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)
Fri Apr 21 **Special Makeup Class**

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

Required Readings:
  • Mark Green, "A Survey of Three Dialog Models," ACM Transactions on Graphics (5)3, Jul, 1986, pp 244-275.
  • chapter 10 from Olsen's book: "Editing Dialog Models"
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.
  • 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.
  • 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
Mon
Apr 24
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.
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.
  • 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.
Wed
Apr 26
17. Component Techniques: Andrew, OLE, OpenDoc, Java Beans
Optional Readings:
Mon
May 1
Catch up, and videos

Fill out questionnaire in class

Instructions for the Final

Wed
May 3
* In-class presentations of 4th Benchmark Implementation
Thur 5/11 FINAL EXAM, 8:30-11:30am, DH 2105, May 11, 2000

MidTerm Grades Due March 7

Final Grades Due: May 18


Back to 05-830 main page