One approach to designing usable and enjoyable computer applications is to say that designers need better methods and tools to understand users and their contexts, and to encode this understanding into closed computer systems. Another is to acknowledge that there will always be unattended user needs, and that the way to increase users’ satisfaction is to help them modify systems in order to meet constantly changing requirements. Different techniques are proposed in one approach usually without reference to the other. We present an overarching perspective of human–computer interaction where both meet, and provide a semiotic characterization of designers’ and users’ activities that clarifies the tradeoffs involved in designing and choosing techniques in either approach. Central to this characterization is the role of intentions in what users mean to say and do when using computers. Our characterization is in line with a broader concept of usability, in which systems must support users’ improvisation and creativity. 1. Meeting End-Users’ Expectations In spite of speedy technological evolution and voluminous knowledge generated by research and development in human–computer interaction (HCI), users of information technology (IT) products still have to live with a high dosage of frustration and confusion when trying to get systems to do what they want. Building usable and enjoyable systems remains a challenge for the IT industry, regardless of the excitement brought about by such things as miniature multi-function mobile devices, sophisticated virtual reality caves, or intelligent buildings and vehicles. The old challenge can be stated in very simple terms: how do we design technology that meets the users’ needs? Very large portions of contemporary work in HCI center around techniques and tools that can help designers enhance their understanding of users and use situations. Their aim is to minimize the mismatch between what users want to do with computer systems and how computer systems respond to their expectations. There is a variety of approaches for solving this problem, two of them lying at opposite ends. One seeks to increase a designer’s ability to capture finer distinctions in the users’ behavior and context, and to encode such improved distinctions into computer systems. The idea is to cover a maximum share of the users’ world and to prepare the system to react appropriately as situations evolve. The other approach seeks to empower users with the ability to tailor computer systems to their specific needs, by customizing the systems’ Henry Lieberman et al. (eds.), End User Development, 401–426.
[1]
Bonnie A. Nardi,et al.
A small matter of programming
,
1993
.
[2]
Volker Wulf,et al.
Component-based technologies for end-user development
,
2004,
Commun. ACM.
[3]
Alexander Repenning,et al.
Programming by Analogous Examples
,
2001,
Your Wish is My Command.
[4]
G. Lakoff,et al.
Metaphors We Live By
,
1980
.
[5]
Brad A. Myers,et al.
Demonstrational Interfaces
,
2001,
Your Wish is My Command.
[6]
John Seely Brown,et al.
Enacting Design for the Workplace
,
1992,
Usability - Turning Technologies into Tools.
[7]
Simone Diniz Junqueira Barbosa,et al.
Semiotic engineering principles for evaluating end-user programming environments
,
2001,
Interact. Comput..
[8]
Roman Jakobson,et al.
Fundamentals of Language
,
1957
.
[9]
Jeffrey D. Ullman,et al.
Introduction to Automata Theory, Languages and Computation
,
1979
.
[10]
Gerhard Fischer,et al.
Meta-design
,
2004,
Commun. ACM.
[11]
J. Sadock.
Speech acts
,
2007
.
[12]
U. Eco.
A Theory of Semiotics
,
1977
.
[13]
Brad A. Myers,et al.
Languages for developing user interfaces
,
1992
.
[14]
Henry Lieberman,et al.
Watch what I do: programming by demonstration
,
1993
.
[15]
Umberto Eco,et al.
Semiotics and the philosophy of language
,
1985,
Advances in semiotics.
[16]
Terry Winograd,et al.
Usability - Turning Technologies into Tools
,
1992
.
[17]
Clarisse Sieckenius de Souza,et al.
The Semiotic Engineering of Human-Computer Interaction
,
2005
.
[18]
Larry Tesler,et al.
Novice Programming Comes of Age
,
2001,
Your Wish is My Command.
[19]
Gerhard Fischer,et al.
Beyond "couch potatoes": from consumers to designers
,
1998,
Proceedings. 3rd Asia Pacific Computer Human Interaction (Cat. No.98EX110).
[20]
Gilles Fauconnier,et al.
Metaphor, metonymy, and binding
,
2002
.
[21]
Jakob Nielsen,et al.
Usability engineering
,
1997,
The Computer Science and Engineering Handbook.
[22]
Daniel C. Halbert,et al.
Programming by Example
,
2010,
Encyclopedia of Machine Learning.
[23]
R. J. Nelson,et al.
Introduction to Automata
,
1968
.
[24]
Clarisse Sieckenius de Souza,et al.
Extending software through metaphors and metonymies
,
2001,
Knowl. Based Syst..
[25]
Hugh J. Silverman.
Cultural Semiosis : Tracing the Signifier
,
1998
.
[26]
George Lakoff,et al.
Women, Fire, and Dangerous Things
,
1987
.