CSIS 672 -- Spring 2005
Human Computer Interaction
Development Tools] [References]
Instructor: Dr. Bill
When: TR 5:30-6:45pm
Where: LCTR 346
Description: Introduction to human computer interaction (HCI) and
user interface development. Topics include definitions of HCI, importance of
good interfaces, psychological foundations, user-interface design examples,
interaction models and dialog types for interfaces, user interface life-cycle,
user-centered design and task-analysis, prototyping and the iterative design
cycle, prototyping tools and environments, user interface implementation, and
interface quality and methods of evaluation.
This course stresses the importance of good interfaces and the relationship
of user interface design to human-computer interaction. It is intended to
provide an adequate basis in software design and implementation for user
interfaces. There will be content on both the issues and engineering process for
user interface development.
- Design guidelines sample: Apple Human Interface Guidelines
- Additional transparencies from Dix, et al., "Human-Computer Interaction", 2nd ed., Prentice Hall, 1998
- Paper prototypes
- Jacob Nielsen's usability pointers
- Outline of video on "Creating a Well-Designed User Interface."
Material developed by the instructor/students and distributed through this webpage is made
available under a Creative
- Homework #1 -- Usability Breakdown
- Homework #2 -- Intro to Python (updated)
- Class project: You will work in teams of two or three
students. You are to develop an interactive system related to sound
(your choice). Project phases include:
- Proposals (two per team)
- User profiles (three per team)
- Task analysis (HTA)
- Paper prototypes (two x three-levels-deep per team)
- State-transition diagrams
- Hi-Fi prototypes
- Python is a cross-platform (Windows, Mac, Linux)
- wxPython is a Python GUI toolkit.
- VPython is a Python 3D visualization
Other UI Development Tools
is a relatively simple IDE for C# and VB.NET GUI program development.
- NetBeans IDE
for Java GUI development.
- Visual Tcl is a
freely-available, high-quality application development environment for UNIX,
Windows, Macintosh and AS400 platforms. Visual Tcl is written entirely in
Tcl/Tk and generates pure Tcl/Tk code.
- V - A Freeware
Portable C++ GUI Framework for Windows, X, and OS/2.
- Glade is a free user interface
builder for GTK+ and GNOME. Glade can produce C source code itself.
C++, Ada95, Python & Perl support is also available, via external tools
which process the XML interface description files output by Glade.
- FLTK (pronounced "fulltick") is a cross-platform C++ GUI toolkit for UNIX/Linux (X11),
MS Windows, and MacOS X. FLTK includes a UI builder called FLUID
that can be used to create applications in minutes.
Test #1: Tuesday, March 1, 2005
Test #2: Tuesday, April 19, 2005 New!
Final Exam: 4-7 pm, Thursday, May 5, 2005
Last update: Tuesday, April 12, 2005 07:41 PM