An interaction technique, user interface technique or input technique is a combination of hardware and software elements that provides a way for computer users to accomplish a single task. For example, one can go back to the previously visited page on a Web browser by either clicking a button, pressing a key, performing a mouse gesture or uttering a speech command. It is a widely used term in human-computer interaction. In particular, the term "new interaction technique" is frequently used to introduce a novel user interface design idea.
Although there is no general agreement on the exact meaning of the term "interaction technique", the most popular definition is from the computer graphics literature:
An interaction technique is a way of using a physical input/output device to perform a generic task in a human-computer dialogue.
A more recent variation is:
An interaction technique is the fusion of input and output, consisting of all software and hardware elements, that provides a way for the user to accomplish a task.
The computing view
From the computer's perspective, an interaction technique involves:
- One or several input devices that capture user input,
- One or several output devices that display user feedback,
- A piece of software that:
Consider for example the process of deleting a file using a contextual menu. This assumes the existence of a mouse (input device), a screen (output device), and a piece of code that paints a menu and updates its selection (user feedback) and sends a command to the file system when the user clicks on the "delete" item (interpretation). User feedback can be further used to confirm that the command has been invoked.
The user's view
From the user's perspective, an interaction technique is a way to perform a single computing task and can be informally expressed with user instructions or usage scenarios. For example "to delete a file, right-click on the file you want to delete, then click on the delete item".
The designer's view
From the user interface designer's perspective, an interaction technique is a well-defined solution to a specific user interface design problem. Interaction techniques as conceptual ideas can be refined, extended, modified and combined. For example, contextual menus are a solution to the problem of rapidly selecting commands. Pie menus are a radial variant of contextual menus. Marking menus combine pie menus with gesture recognition.
Level of granularity
Interaction techniques are usually fine-grained entities. For example, a desktop environment is too complex to be an interaction technique, whereas Exposé fits the common intuitive understanding of the term perfectly well. Also, a graph may have a large disparity between the lowest and highest values along the Y-Axis and unable to display clarity, so the Harrison Curve, some what similar in nature to a standard linear zoom, allows the user to distort the focual area to their benefit[clarification needed]. In general, a user interface can be seen as a combination of many interaction techniques, some of which are not necessarily as explicit as widgets.
Interaction tasks and domain objects
An interaction task is "the unit of an entry of information by the user", such as entering a piece of text, issuing a command, or specifying a 2D position. A similar concept is that of domain object, which is a piece of application data that can be manipulated by the user.
Interaction techniques are the glue between physical I/O devices and interaction tasks or domain objects. Different types of interaction techniques can be used to map a specific device to a specific domain object. For example, different gesture alphabets exist for pen-based text input.
In general, the less compatible the device is with the domain object, the more complex the interaction technique. For example, using a mouse to specify a 2D point involves a trivial interaction technique, whereas using a mouse to rotate a 3D object requires more creativity to design the technique and more lines of code to implement it.
A current trend is to avoid complex interaction techniques by matching physical devices with the task as close as possible, such as exemplified by the field of tangible computing. But this is not always a feasible solution. Furthermore, device/task incompatibilities are unavoidable in computer accessibility, where a single switch can be used to control the whole computer environment.
Interaction techniques that share the same metaphor or design principles can be seen as belonging to the same interaction style. General examples are command line and direct manipulation user interfaces.
Interaction techniques essentially involve data entry and manipulation, and thus place greater emphasis on input than output. Output is merely used to convey affordances and provide user feedback. The use of the term input technique further reinforces the central role of input. Conversely, techniques that mainly involve data exploration and thus place greater emphasis on output are called visualization techniques. They are studied in the field of information visualization.
Research and innovation
A large part of research in human-computer interaction involves exploring easier-to-learn or more efficient interaction techniques for common computing tasks. This includes inventing new (post-WIMP) interaction techniques, possibly relying on methods from user interface design, and assessing their efficiency with respect to existing techniques using methods from experimental psychology. Examples of scientific venues in these topics are the UIST and the CHI conferences. Other research focuses on the specification of interaction techniques, sometimes using formalisms such as Petri nets for the purposes of formal verification.
- J.D. Foley, A. van Dam, S.K. Feiner and J.F. Hughes (1990), Computer Graphics: Principles and Practice, Addison–Wesley.
- A.B. Tucker (2004), Computer Science Handbook, Second Edition. Chapman & Hall/CRC. pp 20–2.
- M. Beaudouin-Lafon (2000) Instrumental interaction: an interaction model for designing post-WIMP user interfaces. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems.
- P. Dragicevic and J-D Fekete (2004) The Input Configurator toolkit: towards high input adaptability in interactive applications. In Proceedings of the Working Conference on Advanced Visual interfaces.
- W. Buxton (1986) There's More to Interaction than Meets the Eye: Some Issues in Manual Input. In Norman, D. A. and Draper, S. W. (Eds.), User Centered System Design: New Perspectives on Human–Computer Interaction. Lawrence Erlbaum Associates, Hillsdale, New Jersey, 319–337.
- Schyn, A., Navarre, D., Palanque, P., and Porcher Nedel, L. 2003. Formal description of a multimodal interaction technique in an immersive virtual reality application. In Proceedings of the 15th French-Speaking Conference on Human–Computer interaction on 15eme Conference Francophone Sur L'interaction Homme–Machine (Caen, France, November 25–28, 2003). T. Baudel, Ed. IHM 2003, vol. 51. ACM, New York, NY, 150–157.