Here are some varied examples of issues relevant to interface design at the ergonomic level: wrists have 2 degrees of freedom, while elbows have 1, and the neck has 3 (actually, Im not sure of these numbers); human color space is 3-dimensional; the QWERTY keyboard was intentionally designed to be suboptimal, in order to avoid key jams in mechanical typewriters. Though important, ergonomic issues are well understood and relatively routine today; they can usually be handled by straightforward experiments.
Classical HCI (for Human Computer Interface - or Human Computer Interaction) is largely concerned with issues at the level of individual psychology, such as learning and error rates in using interfaces; the model for research here is experimental psychology, especially experimental cognitive psychology. Much of Shneiderman's book is written as if he held this perspective, although in fact much of what he recommends for practitioners fails to fit this rigid mold, which we might characterize as a form of reductionism (which is defined as the attempt to reduce some class of phenomena to some other class which is considered more basic). Recent work on the sociology of scientific research shows that reductionism is rarely an even approximately complete description of how science actually gets done, as somewhat discussed in Section 9 of the class notes.
One effect of a belief in the reduction of HCI to psychology has been to raise unrealistic expectations for HCI, which then caused much subsequent disillusionment. Although this kind of boom/bust cycle is rather common in new fields, there are actually some important underlying reasons for the failure of experimental psychology to achieve everything that was expected of it in HCI, including the very significant involvement of social factors in all aspects of experimentation. Here one might mention the choice of an experimental task, which needs to be representative of tasks in the target environment for the interface, and the choice of subjects, which need to be representative of the population of real users. But social factors are far more pervasive in HCI than one might at first suppose, and go well beyond mere critiques of experimental design. The importance of social issues is particularly recognized by the newly emerging area within HCI called CSCW (for Computer Supported Cooperative Work), which is concerned with the use of computer technology by groups that are trying to work together. CSCW is discussed in some detail in Section 5 of the class notes.
In dealing with social issues, this course will highlight the following approaches and techniques as being especially relevant and helpful:
If there were a fully developed "science of semiotics," it would be the ideal foundation for interface design, because interfaces consist entirely of structured signs. Although none of the four approaches above are very close to what we normally call science, each is still quite rigorous in its own way. We will have much more to say about semiotics in this course, especially in Section 3 and Section 7 of the class notes.
Ethnomethodology is a branch of sociology concerned with ordinary, real, everyday social behavior, as opposed to controlled laboratory experiments. The prefix "ethno" refers to how some group of people ("the natives") actually do something, as opposed to how some group of analysts think they ought to do it, as in ethnomusicology, ethnobotany and ethnomedicine; hence "ethnomethodology" uses the same methods of analysis that groups use in conducting their own social interactions, as opposed to the methods that some group of analysts think they ought to use. See Section 4 of the class notes for some details.
Another major theme of this course is metaphor. Some notion of metaphor should be familiar from the ubiquitious "desk top metaphor" of current operating systems, such as Windows. But there are many other, and even more important, connections between metaphor and interface design; in particular, we will see that any interface can be seen as a metaphor, in the technical sense of a "semiotic morphism" (for which see Section 7 of the class notes). Metaphor theory has been well developed in an area of cognitive science called cognitive linguistics, which is concerned with cognitive aspects of language, and this course will show how to make it mathematically precise, so that it can serve as a basis for engineering applications. We will in particular look at blending, recently postulated as a fundamental cognitive operation, and we will argue that it is just as ubiquitous in interfaces as it is in language. One of the chief proponents of blending is at UCSD, Prof. Gilles Fauconnier, in the Cognitive Science Dept.
Note that the terms "user interface," "human-computer interface," and "human-computer interaction" are all rather misleading, because they exclude the larger worlds within which humans and computers live, namely the social community and the network, respectively. There is a slogan (it is the converse of one that was widely used by Sun) that
The computer is the network.but there should be another slogan that
The user is the community."Interface design" is a better term than "human-computer interface" or "human-computer interaction," because it is more neutral about what is being mediated, though I would even more prefer something completely different that explicitly includes the social dimension. Another term, now coming into vogue, is "interaction design"; this is good but it still seems to underemphasize the social. The worst term in general use is perhaps "computer-human interface" (or "interaction"), abbreviated CHI, which is the name of the major conference in the field. Notice that choosing a good name for something is a special case of user interface design!
It is not difficult to justify the importance of interface design by looking at the huge effort that goes into the GUIs of current operating systems and the applications that run on them, or of major commercial websites, such as search engines, and booksellers. HCI is also recommended to be a required course in undergraduate computer science curricula by both the IEEE Computer Society and the ACM. Another way to appreciate the importance of user interface design is to consider the many examples of "high-tech" (and often highly hyped) interfaces that failed because they ignored the social contexts of their actual use, such as WebTV, ecash, Bill Gates' home music and LCD art display system, and some stockbroker support systems; we will look at some of these later in this course. Another way to appreciate the importance of this field is to look in the business section of any daily newspaper, where you will see many articles on computer applications which very often focus on features of their interfaces.
This course has three main themes: (1) real applications, especially to web design; (2) social aspects of interface design; and (3) algebraic semiotics, especially semiotic morphisms. The reason for the first theme should be clear enough. We will see that the second theme is important because failures in design often have a basis in failure to understand the social context in which the designed object will be used. The third theme is most likely the least familiar, which is why this subsection provides a very brief introduction and motivation for it.
Perhaps the most important issue in interface design is how to represent the content and structure of the designed object so that it is as easy to use as possible (note that interface design, by definition, is concerned with designing the interface, assuming that the functionality of the object is known). This implies that interface design requires a good theory of representation. It is easy to see that the literature on interface design gives many heuristic guidelines for obtaining good representations, but fails to provide a general theory of representation, with systematic principles at a high level of generality. The purpose of algebraic semiotics is to fill this gap. Although he theory is still at a relatively early stage of development, enough has already been done so that many practical applications are possible, and the outlines of the general theory can certainly be seen.
The two most fundamental concepts of algebraic semiotics are semiotic theories and semiotic morphisms. Semiotic theories describe the structure and content both of interfaces and of the functionality that they are supposed to represent, while semiotic morphisms are the actual representations, conceived as mappings from a "source space" of structure and content, to a target space of representations.
Here are some simple examples: The original Windows interface was a mapping from DOS to the GUI primitives of window, menu, icon, etc. In fact, most modern operating systems have the same approach, providing a graphical interface for an underlying functionality, usually based on the "desk top" metaphor. Clocks are maps from an abstract space of time to some physical display. We will see many other examples in this class; the present discussion just provides a hint of what is to come. We will also see that what makes one such representation better than another always boils down to the preservation of structure, reflecting values of users which have a social basis.
We will also see that semiotic theories generalize the so-called conceptual spaces introduced by Gilles Fauconnier in the discipline of cognitive linguistics. Whereas conceptual spaces include schematic representations of human concepts and relations, semiotic theories also support more complex "constructors" that build structures for windows, scrollbars, icons, etc.. Similarly, semiotic morphisms generalize the conceptual maps of Fauconnier, in that they preserve the additional structure of semiotic theories. A major application of conceptual spaces is the study of metaphor, as maps of conceptual spaces, or more generally, as blends of conceptual spaces. Some cognitive linguistics will be covered near the end of the class.