Teaching User Interface Development
to Software Engineers
Gary Perlman
Computer & Information Science
Ohio State University
Columbus, Ohio 43210 USA
+1-614-292-2566
perlman@acm.org
Table of Contents
ABSTRACT
Teaching User Interface Development to Software
Engineers is an overview of the analysis, design,
implementation and evaluation topics to teach and the
resources to teach them to software engineers, the people
who make most of the user interface design decisions. The
goal is to improve the quality of user interface development
instruction for software engineers and in turn improve the
quality of the user interfaces they build.
KEYWORDS
[K.3.2] Computer and Information Science Education,
Curriculum; [K.6.1] Project and People Management;
Staffing, Training, Human Factors, Management,
Education, Software Engineering, User Interface
INTRODUCTION
There are not many specialists in user interface
development, so most software user interfaces are designed
and built by software engineers. These engineers need
training about how to build usable and useful user
interfaces, but the scarcity of user interface specialists is
correlated with the lack of educators ready to train user
interface developers. The materials presented here are
designed to improve the quality of user interface
development training. A software engineer who has been
trained in user interface development should have gained
perspective, learned about methods and tools, and gained
an appreciation of their limits. Their perspective should
include: the importance of the user interface, the impact of
good and bad user interfaces, and the diversity of users and
applications. About methods and tools they should know:
the tradeoffs of design decisions involving different
dialogue types and input/output devices, the information
resources available for design, the benefits and costs of
developing tools for user interface implementation, the
need to integrate training materials with the user interface,
the need to evaluate system usability, and information about
some design and evaluation tools. Finally, software
engineers building user interfaces must know the limits of
their knowledge: when and how to work with human
factors engineers as consultants for design and evaluation,
when and how to work with technical writers for
implementation of a system of user guidance, when and
how to work with a statistical consultant, and the difficulty
of measurement and the complexity of making decisions
based on data.
CONTENT
The material in the tutorial is organized around the
curriculum module developed by the instructor for the
Software Engineering Institute at Carnegie-Mellon
University. The first computer science course suggested by
the ACM SIGCHI report on Curricula for HCI closely
matches this organization. The tutorial will stress the
content of a first course to be offered to computer science
majors and software engineers. The content focuses on an
iterative development lifecycle of practical cost-effective
methods for the analysis, design, implementation, and
evaluation of user interfaces. There will be treatment of
lecture material, motivating demonstrations, and
reinforcing exercises. Widely available and economical
Mac and PC hardware and software will be discussed, with
some references to common workstation environments.
OBJECTIVES
- To develop realistic expectations of what can be taught,
at what cost, to what benefit, in what period, to whom.
- To increase awareness of resource materials for
teaching user interface development.
- To improve the quality of the teaching of user interface
development by discussing content, demonstrations,
exercises, and projects.
- To help attendees design their own course materials on
user interface development for practically-oriented
industrial and academic students.
AUDIENCE
Different audiences will get different benefits from this
tutorial and will view the material at different levels. There
are no prerequisites, other than an interest in the topic of
educating software developers about user interface
development. This tutorial is best viewed as intermediate
level because it assumes some general knowledge of the
field of HCI. The intended audiences include:
- Educators who want to integrate user interface
development into their software engineering courses or
who want to teach material on user interface
development.
- Industrial user interface and human factors specialists
who wish to disseminate their expertise throughout
organizations by presenting tutorials on selected topics.
- Managers who want to increase awareness of what can
and should be common knowledge on user interface
development in software development environments.
RESOURCES
Much of the tutorial is an overview of resources for HCI
education, most of which are in electronic form and freely
available on the Internet. The tutorial will cover how to
access these materials using FTP (file transfer protocol),
electronic mail services, WWW (World-Wide Web)
browsers such as Mosaic and Lynx, and even floppy disk
distribution. Also covered will be the uses of the SIGCHI
mailing list for educators: educators.chi. Several of
the resources are listed in the bibliography for this
summary, and all the resources can be found in issues of
ACM interactions magazine.
TOPICS
- Issues in Teaching UI Development
- Resources for Teaching UI Development
- The SEI Curriculum Module
- The HCI Bibliography
- ACM SIGCHI Curricula in HCI
- ACM SIGCHI Education Survey
- UI Development Content
- User Interface Analysis and Design
- User Interface Implementation
- User Interface Evaluation
- Demonstrations and Readings
- Exercises and Projects
- Priorities in Teaching
- Reflections on Past Experiences
- Recommended Readings
BIBLIOGRAPHY
-
Baecker, R. M. & Buxton W. A. S (Editors) (1987)
Readings in Human-Computer Interaction: A Multidisciplinary Approach.
Los Altos, CA: Morgan-Kaufmann Publishers.
-
Baecker, R. M., Grudin, J., Buxton, W. A. S & Greenberg, S.
(Editors) (1994)
Readings in Human-Computer Interaction: Toward the Year 2000 (Second Edition).
-
Card, S. K., Moran, T. P. & Newell, A. (1983)
The Psychology of Human-Computer Interaction.
Hillsdale, NJ: LEA.
-
Dix, A., Finlay, J., Abowd, G. & Beale, R (1993)
Human-Computer Interaction.
Hillsdale, NJ: Prentice Hall.
-
Helander, M. (Editor) (1988)
Handbook of Human-Computer Interaction.
Amsterdam: North-Holland.
-
Hewett, T. T. et al (1992)
ACM SIGCHI Curricula in HCI.
New York: ACM. (online Web version in
http://www.acm.org/sigchi/cdg/
-
Hix, D. & Hartson, H. R. (1993)
Developing User Interfaces: Ensuring Usability Through Product and Process.
New York, New York: John Wiley & Sons, Inc..
-
Lewis, C. & Rieman, J. (1993)
Task-Centered User Interface Design.
(text at ftp.cs.colorado.edu in
/pub/cs/distribs/clewis/HCI-Design-Book).
(WWW Page).
-
Mantei, M. M. & Smelcer, J. B (1984)
Guidelines for Reading the Human-Computer Interaction Survey Results.
SIGCHI Bulletin, 16:2,
9-43.
-
Matias, E. (1994) "comp.human-factors"
Frequently Asked Questions (FAQ) File.
First posted May 29, 1994.
http://www.dgp.toronto.edu/people/ematias/faq/contents.html).
-
Perlman, G. (1988)
Teaching User Interface Development to Software Engineers.
Proceedings HFS 32nd Annual Meeting,
391-394.
-
Perlman, G. (1989)
User Interface Development.
Curriculum
Module 17, Software Engineering Institute. (text in
/pub/hci/SEI at ftp.cis.ohio-state.edu).
-
Perlman, G. (1990)
Teaching User Interface Development to Software Engineering and Computer Science Majors,
ACM SIGCHI Bulletin, 22:1,
61-66.
-
Perlman, G. (1991)
The HCI Bibliography Project.
SIGCHI Bulletin, 23:3,
15-20 (ASCII refer format.
(WWW page at
http://www.hcibib.org/).
-
Perlman, G. (1994)
The HCI Bibliography: Past, Present, and Future.
CHI'94 Companion,
71-72. New York: ACM.
-
Perlman, G. (1994)
Human-Computer Interaction - A Review of Preece et al,
ACM SIGCHI Bulletin, 26:4,
82-85.
-
Perlman, G. (1984)
Electronic Resources for Human Factors and Ergonomics Education:
Lessons from HCI,
Proceedings HFS 38th Annual Meeting,
399-403.
-
Perlman, G. (1995)
Educational Resources in HCI,
ACM interactions, 2:2.
-
Perlman, G. and Gasen, J. (1994)
The ACM SIGCHI Education Survey.
CHI'94 Companion,
73-74. New York: ACM.
http://www.acm.org/sigchi/educhi/).
-
Preece, J. et al (1994)
Human-Computer Interaction.
Wokingham: Addison-Wesley.
-
SEI Software Engineering Curriculum Project (1991)
Software Engineering Education Directory,
Technical Report
CMU/SEI-91-TR-9 ESD-TR-91-9 183 pp. Pittsburgh, PA:
Software Engineering Institute.
-
Shneiderman, B. (1992)
Designing the User Interface:
Strategies for Effective Human-Computer Interaction (Second Edition).
Reading, MA: Addison-Wesley Publishing Co.
-
Strong, G. et al (1994)
New Directions in HCI Education, Research, and Practice,
Washington, DC: National Science
Foundation, Advanced Research Projects Agency.
COPYRIGHT NOTICE
Permission to copy without fee all or part of this material is
granted provided that the copies are not made or distributed for
direct commercial advantage, the ACM copyright notice and the title
of the publication and its date appear, and the notice is given
that copying is by permission of ACM. To copy otherwise, or to
republish, requires a fee and/or specific permission.
CHI Companion 95, Denver, Colorado, USA
Copyright © 1995 ACM 0-89791-755-3/95/005...$3.50
Go to Table of Contents