Context sensitive user interface
Encyclopedia
A context sensitive user interface is one which can automatically choose from a multiplicity of options based on the current or previous state(s) of the program operation.Context sensitivity is almost ubiquitous in current graphical user interface
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

s, and should, when operating correctly, be practically transparent to the user.

For example:

Clicking on a text document automatically opens the document in a word processing environment. The user does not have to specify what type of program opens the file under standard conditions.

The same methodology applies to other file types e.g.:
  • Video files (.mpg .mov .avi  etc.) open in a video player without being the user having to select a specific program.
  • Photographic and other image files (.jpg .png etc.) will open in a photo viewer automatically.
  • Program files and their shortcuts (i.e. .exe files) are automatically run by the operating system
    Operating system
    An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

    .


The user-interface may also provide Context sensitive feedback
Feedback
Feedback describes the situation when output from an event or phenomenon in the past will influence an occurrence or occurrences of the same Feedback describes the situation when output from (or information about the result of) an event or phenomenon in the past will influence an occurrence or...

, such as changing the appearance of the mouse pointer or cursor, menu colour changes, or where applicable auditory or tactile feedback.

Reasoning and advantages of context sensitivity

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
    Point-and-click
    Point-and-click is the action of a computer user moving a cursor to a certain location on a screen and then pressing a mouse button, usually the left button , or other pointing device...

     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 to be on screen at one time (i.e. "clutter").

Disadvantages

Context sensitive actions may be perceived as dumbing down
Dumbing down
Dumbing down is a pejorative term for a perceived trend to lower the intellectual content of literature, education, news, and other aspects of culture...

 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
Office Assistant
The Office Assistant was a Microsoft Office feature to assist users by way of an interactive animated character, which interfaced with the Office help content. It used technology initially from Microsoft Bob and later Microsoft Agent, offering advice based on Bayesian algorithms...

.

Implementation

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 users previous actions, the size of the file, the programs in current use, metadata
Metadata
The term metadata is an ambiguous term which is used for two fundamentally different concepts . Although the expression "data about data" is often used, it does not apply to both in the same way. Structural metadata, the design and specification of data structures, cannot be about data, because at...

 etc.

The method is not only limited to the response to imperative
Imperative programming
In computer science, imperative programming is a programming paradigm that describes computation in terms of statements that change a program state...

 button presses and mouse clicks - pop up menus can be pruned and/or altered, or a web search can prune results based on previous searches.

At higher levels of implementation context sensitive actions require either larger amounts of meta-data, extensive case analysis
Case analysis
Case analysis is one of the most general and applicable methods of analytical thinking, depending only on the division of a problem, decision or situation into a sufficient number of separate cases. Analysing each such case individually may be enough to resolve the initial question...

 based programming, or other artificial intelligence
Artificial intelligence
Artificial intelligence is the intelligence of machines and the branch of computer science that aims to create it. AI textbooks define the field as "the study and design of intelligent agents" where an intelligent agent is a system that perceives its environment and takes actions that maximize its...

 algorithms.

In computer and video games

Context sensitivity is important in video games - especially those controlled by a gamepad
Gamepad
A gamepad , is a type of game controller held in two hands, where the digits are used to provide input. Gamepads generally feature a set of action buttons handled with the right thumb and a direction controller handled with the left...

, joystick
Joystick
A joystick is an input device consisting of a stick that pivots on a base and reports its angle or direction to the device it is controlling. Joysticks, also known as 'control columns', are the principal control in the cockpit of many civilian and military aircraft, either as a center stick or...

 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 an NPC, an option may come up allowing the player to talk with him/her.

Implementations range from the embryonic 'Quick Time Event
Quick Time Event
In video games, a Quick Time Event is a method of context-sensitive gameplay in which the player performs actions on the control device shortly after the appearance of an on-screen prompt. It allows for limited control of the game character during cut scenes or cinematic sequences in the game...

' 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 dependent on the in game position of the player's character may cause the avatar to pick something up, open a door, grab a rope, punch a monster or opponent, or smash an object.

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 maximise enjoyment or to control the excitement or ambiance.

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".

Context-sensitive help

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 topic related

See also

  • Semantics
    Semantics
    Semantics is the study of meaning. It focuses on the relation between signifiers, such as words, phrases, signs and symbols, and what they stand for, their denotata....

  • Autocomplete
    Autocomplete
    Autocomplete is a feature provided by many web browsers, e-mail programs, search engine interfaces, source code editors, database query tools, word processors, and command line interpreters. Autocomplete involves the program predicting a word or phrase that the user wants to type in without the...

  • Autofill
    Autofill
    Autofill is a function in some computer applications or programs, typically those containing forms, which fills in a field automatically.Most of the time, such as in Internet Explorer and Google Toolbar, the entries depend on the form field's name, so as to not enter street names in a last name...

  • Autotype
    Autotype
    Autotype is a function in some computer applications or programs, typically those containing forms, which fills in a field once you have typed in the first few letters...

  • Combo box
    Combo box
    A combo box is a commonly used graphical user interface widget . It is a combination of a drop-down list or list box and a single-line textbox, allowing the user to either type a value directly into the control or choose from a list of existing options.Combo boxes are typically applied to provide...

  • DWIM
    DWIM
    DWIM computer systems attempt to anticipate what users intend to do, correcting trivial errors automatically rather than blindly executing users' explicit but incorrect input...

     "Do What I Mean"
  • Principle of least astonishment
    Principle of least astonishment
    The principle of least astonishment applies to user interface design, software design, and ergonomics. It is alternatively referred to as the rule or law of least astonishment, or the rule or principle of least surprise .The POLA states that, when two elements of an interface conflict, or are...

     (PLA/POLA)
  • Quick time event
    Quick Time Event
    In video games, a Quick Time Event is a method of context-sensitive gameplay in which the player performs actions on the control device shortly after the appearance of an on-screen prompt. It allows for limited control of the game character during cut scenes or cinematic sequences in the game...

    (QTE)
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK