05-830, User Interface Software, Spring, 1997

Schedule

Note: The Readings are due on the date noted. TBD= To Be Determined
Mon
Jan 13
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 15
2. UI Styles, Dimensions of UI Variability, Introduction to Benchmarks
Required Readings:
  • 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.

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

* Benchmark descriptions DUE

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

See Note about the Benchmarks

* Start Work on Homework 2: Usability Evaluation

Wed
Jan 29
Examples of Good and Bad User Interfaces

Presentations included:

  • Quicken (good)
  • Macintosh Map (bad)
  • PC Solitaire (good)
  • Win95 EZMail (bad) -- Howard Chen
  • VI (bad) -- Richard Kaylor
  • Quicken Lawyer (good) -- Richard Kaylor
  • Spaceward Ho (evolved over 3 versions) -- Herb Derby
  • Framemaker (bad) -- Neal Altman

* Presented by the class members (optional)

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

* Homework 2 DUE

List of all Benchmarks:

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

Wed
Feb 5
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 10
Guest Lecture: Rob Chandhok, Within Technology, on MacApp
Brad Away
Wed Feb 12 Guest Lecture: Tom Neuendorffer, Galt Technologies, on Andrew
Brad Away
Optional Readings:
  • Andrew J. Palay, Fred Hansen, Mike Kazar, Mark Sherman, Maria Wadlow, Thomas Neuendorffer, Zalman Stern, Miles Bader, and Thom Peters. "The Andrew Toolkit - An Overview", Published in Proceedings USENIX Technical Conference, Winter 1988.
Mon
Feb 17
* In-class presentations of 1st Benchmark Implementation

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

Wed
Feb 19
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 24
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.
Wed
Feb 26
* In-class Mid-term exam
Mon
Mar 3
Mid-Semester Break
No classes
Wed
Mar 5
Discuss mid-term;
9. Toolkits: intrinsics, callbacks, resources, widget hierarchies, geometry management
Mon
Mar 10
* In-class presentations of 2nd Benchmark Implementation

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

Wed
Mar 12
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 17
11. Other Output Models: structured graphics; display postscript
Required Readings:
  • Brad A. Myers, Rich McDaniel, Rob Miller, Alan Ferrency, Patrick Doane, Andrew Faulring, Ellen Borison, Andy Mickish, and Alex Klimovitski.  The Amulet Environment: New Models for Effective User Interface Software Development. Carnegie Mellon University School of Computer Science Technical Report CMU-CS-96-189 and Human Computer Interaction Institute Technical Report CMU-HCII-96-104, November, 1996.
    Abstract only in html,  postscript.
Wed
Mar 19
12. Window Manager Input Models
Mon
Mar 24
Brad Away     Spring Break
CHI
Wed
Mar 26
Brad Away     Spring Break
CHI
Mon
Mar 31
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.
Wed
Apr 2
* In-class presentations of 3rd Benchmark Implementation

Start 4th Implementation of a Benchmark Task, using Amulet

Mon
Apr 7
Overflow; Matthew Tarpy on Time in Interfaces
Required Readings:
Wed
Apr 9
Dan Olsen Guest Lecture: 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)Required Readings:
Mon
Apr 14
14. UIMS Techniques 1: Menu trees, transition networks, grammars
Required Readings:
  • Mark Green, "A Survey of Three Dialog Models," ACM Transactions on Graphics (5)3, Jul, 1986, pp 244-275.
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 on Apr 9, above)
Wed
Apr 16
15. UIMS Techniques: Event Languages, HyperTalk, production systems, Declarative Languages
Required Readings:
  • chapter 10 from Olsen's book (already assigned on Apr 9, above)
Optional readings:
  • 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 21
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 on Apr 9, 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 23
17. 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."  Submitted for Publication. (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)
Mon
Apr 28
* In-class presentations of 4th Benchmark Implementation
Wed
Apr 30
18. Component Techniques: Andrew, OLE, OpenDoc, Java Beans

Optional Readings:

Fill out questionnaire in class

Instructions for the Final

Tues
May 6
FINAL EXAM   8:30am - 11:30 am in WEH 6423

MidTerm Grades Due March 4

Final Grades Due: May 15


Back to 05-830 main page