05-830, User Interface Software, Spring, 1998

Schedule

Note: The Readings are due on the date noted. TBD= To Be Determined
Mon
Jan 12
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 14
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
  • Deborah Hix, "A Procedure for Evaluating Human-Computer Interface Development Tools," UIST'89: ACM Second Annual Symposium on User Interface Software and Technology, Williamsburg, VA, Nov, 1989, pp. 53-61.

* Start Work on Homework 1: Benchmark descriptions.

List of all benchmarks submitted.

Last Year's Benchmarks

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

* Benchmark descriptions DUE

Mon
Jan 26
4. Usability Engineering Design Process
Required Readings:
  • Nielsen Text: Chapter 4 and 6
Recommended Readings:
  • Nielsen Text: Chapter 2 and 7

* Start Work on Homework 2: Usability Evaluation

Wed
Jan 28
Examples of Good and Bad User Interfaces

Presentations included:

  • Quicken
  • Macintosh Map
  • SelectCase -- Ryan Soulier
  • Fetch -- Chad Dawson
  • 3D tools: VistaPro, Envisage3D, Virtus -- Javier Macchi
  • Netscape 4.0 -- Nils Rinaldi

* Presented by the class members (optional)

Mon
Feb 2
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.

* Homework 2 DUE

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

Wed
Feb 4
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)
Mon
Feb 9
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.
Wed Feb 11 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 Vander Zanden and Brad A. Myers. "A Constraints Primer," IEEE Computer. vol. 23, no. 11. November, 1990. pp. 74-75.
Mon
Feb 16
* In-class presentations of 1st Benchmark Implementation

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

Wed
Feb 18
(Catch up)
Mon
Feb 23
9. Toolkits: intrinsics, callbacks, resources, widget hierarchies, geometry management
Wed
Feb 25
* In-class Mid-term exam
Mon
Mar 2
Mid-Semester Break
No classes
Wed
Mar 4
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 9
* In-class presentations of 2nd Benchmark Implementation

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

Wed
Mar 11
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.
Mon
Mar 16
12. Window Manager Input Models
Wed
Mar 19
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. To appear.
Mon
Mar 23
Spring Break
Wed
Mar 25
Spring Break
Mon
Mar 30
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. "Building Applications Using Only Demonstration," IUI'98: 1998 International Conference On Intelligent User Interfaces, January 6-9, 1998, San Francisco, CA. pp. 109-116. postscript (Gamut)
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)
Wed
Apr 1
* In-class presentations of 3rd Benchmark Implementation

Start 4th Implementation of a Benchmark Task, using Amulet

Mon
Apr 6
Dan Olsen Guest Lecture (hopefully)
Syngraph, PPS, Mike, Mickey, Sushi, NIC, TIMP, ...
Required Readings:
  • Dan R. Olsen, Jr., "Propositional Production Systems for Dialog Description," Proceedings SIGCHI'90, Seattle, WA , Apr, 1990, pp. 57-63.
  • Dan R. Olsen, Jr., "A Programming Language Basis for User Interface Management," Proceedings SIGCHI'89, Austin, TX, Apr, 1989, pp. 171-176.
  • chapter 10: "Editing Dialog Models" from Dan R. Olsen, Jr., User Interface Management Systems: Models and Algorithms, Morgan Kaufmann, San Mateo, CA, 1992.
Optional readings:
  • Dan R. Olsen, Jr. and Elizabeth P. Dempsey, "Syngraph: A Graphical User Interface Generator," Proceedings SIGGRAPH'83, Jul. 1983, pp. 43-50 (grammar)
Wed
Apr 8
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 (already assigned above)
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.
  • Olsen's Syngraph article (already assigned above)
  • 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 13
16. Model-based tools: Mickey, UIDE, Humanoid, MasterMind
Required Readings:
  • Dan R. Olsen, Jr., "A Programming Language Basis for User Interface Management," Proceedings SIGCHI'89, Austin, TX, Apr, 1989, pp. 171-176. (already assigned above)
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 15
17. Component Techniques: Andrew, OLE, OpenDoc, Java Beans

Optional Readings:

Mon
Apr 20
CHI; Brad away
Guest Lecture: Paul Heckbert: Graphics and
Jack Mostow, Speech and Wizard of Oz technques in Project Listen
Wed
Apr 22
CHI; Brad away
Guest Lecture: Roger Dannenberg: Programming for Multimedia and Sound
Mon
Apr 27
* In-class presentations of 4th Benchmark Implementation
Wed
Apr 29

overflow

Fill out questionnaire in class

Instructions for the Final

Tuesday, May 12 - 8:30 to 11:30 AM in Doherty Hall 2105 FINAL EXAM  

MidTerm Grades Due March 3

Final Grades Due: May 14


Back to 05-830 main page