Context-sensitive user interface
A context-sensitive user interface offers the user options based on the state of the active program.[1] Context sensitivity is ubiquitous in current graphical user interfaces, often in context menus.
A user-interface may also provide context sensitive feedback, such as changing the appearance of the mouse pointer or cursor, changing the menu color, or with auditory or tactile feedback.
Reasoning and advantages of context sensitivity
[edit]The primary reason for introducing context sensitivity is to simplify the user interface.
Advantages include:
- Reduced number of commands required to be known to the user for a given level of productivity.
- Reduced number of clicks or keystrokes required to carry out a given operation.
- Allows consistent behaviour to be pre-programmed or altered by the user.
- Reduces the number of options needed on screen at one time.
Disadvantages
[edit]Context sensitive actions may be perceived as dumbing down of the user interface, leaving the operator at a loss as to what to do when the computer decides to perform an unwanted action. Additionally non-automatic procedures may be hidden or obscured by the context sensitive interface causing an increase in user workload for operations the designers did not foresee.
A poor implementation can be more annoying than helpful – a classic example of this is Office Assistant.
Implementation
[edit]At the simplest level each possible action is reduced to a single most likely action – the action performed is based on a single variable (such as file extension). In more complicated implementations multiple factors can be assessed such as the user's previous actions, the size of the file, the programs in current use, metadata[2] etc.
The method is not only limited to the response to imperative button presses and mouse clicks – pop-up menus can be pruned and/or altered, or a web search can focus results based on previous searches.
At higher levels of implementation context sensitive actions require either larger amounts of meta-data, extensive case analysis based programming, or other artificial intelligence algorithms.
In computer and video games
[edit]Context sensitivity is important in video games, especially those controlled by a gamepad, joystick or computer mouse in which the number of buttons available is limited. It is primarily applied when the player is in a certain place and is used to interact with a person or object. For example, if the player is standing next to a non-player character, an option may come up allowing the player to talk with him/her.
Implementations range from the embryonic 'Quick Time Event' to context sensitive sword combat in which the attack used depends on the position and orientation of both the player and opponent, as well as the virtual surroundings. A similar range of use is found in the 'action button' which, depending upon the in-game position of the player's character, may cause it to pick something up, open a door, grab a rope, punch a monster or opponent, or smash an object.[3]
The response does not have to be player activated – an on-screen device may only be shown in certain circumstances, e.g. 'targeting' cross hairs in a flight combat game may indicate the player should fire. An alternative implementation is to monitor the input from the player (e.g. level of button pressing activity) and use that to control the pace of the game in an attempt to maximize enjoyment or to control the excitement or ambience.[4]
The method has become increasingly important as more complex games are designed for machines with few buttons (keyboard-less consoles). Bennet Ring commented (in 2006) that "Context-sensitive is the new lens flare".[5]
Context-sensitive help
[edit]Context sensitive help is a common implementation of context sensitivity, a single help button is actioned and the help page or menu will open a specific page or related topic.[6]
See also
[edit]- Autocomplete
- Autofill
- Autotype
- Combo box
- Context awareness
- DWIM "Do What I Mean"
- Principle of least astonishment (PLA/POLA)
- Quick time event (QTE)
References
[edit]Citations
[edit]- ^ Webopedia: context sensitive
- ^ Dix et al. 2006
- ^ "Assassin's Creed E3 Preview". Archived from the original on 2007-08-03. Retrieved 2008-07-29.
- ^ Glinert 2008
- ^ Gears of War review – Now this is what next-gen gaming is all about
- ^ Webopedia : Help
Sources
[edit]- Dix, A.; Catarci, T.; Habegger, B.; Ioannidis, Y.; Kamaruddin, A.; Katifori, A.; Lepouras, G.; Poggi, A.; Ramduny-Ellis, D. (2006). "Intelligent context-sensitive interactions on desktop and the web". Proceedings of the international workshop in conjunction with AVI 2006 on Context in advanced interfaces. Association for Computing Machinery. pp. 23–27. CiteSeerX 10.1.1.669.9804. doi:10.1145/1145706.1145710. ISBN 978-1-4503-7814-7. S2CID 2478733.
- Glinert, Eitan M. (2008). "4.2 Next Generation User Interfaces:context sensitivity". The Human Controller: Usability and Accessibility in Video Game Interfaces (M. Eng.). Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology. hdl:1721.1/46106.
- William Abner (2007-07-27). "Assassin's Creed E3 Preview". gameshark.com. Archived from the original on 2007-08-03. Retrieved 2008-07-29.
- "context sensitive". webopedia. September 1996. Retrieved 2017-12-06.
- Bennet Ring (2006-11-12). "Gears of War review – Now this is what next-gen gaming is all about". Yahoo!.
- "Help". webopedia. September 1996. Retrieved 2004-09-20.