User Interfaces Articles

Anthropomorphism and Persuasion

Interface agents are semi-autonomous software entities that perform tasks on behalf of their users. One of the attributes an agent may possess is anthropomorphism. Could an anthropomorphic agent make people believe information that was not true? This article describes an experiment that investigated the effect the source of information (person or computer) had on whether people believed it.

Anthropomorphism on Trial

Agents are semi-autonomous software entities that perform tasks on behalf of their users. One of the attributes an agent may possess is anthropomorphism-the projection of human characteristics onto non-human or inanimate objects. As anthropomorphic agents become more common we need to consider what impact they will have on their human users. I put forward a for and against argument drawn from the current literature on anthropomorphism and then look to the future of anthropomorphic agents.

A Conceptual Model for Personalizing an Automated Teller Machine

This article introduces a new conceptual model for automated teller machines called the personal bank teller. The disadvantage of the conceptual model users have of current automated teller machines is of an inflexible mechanical replacement for a bank teller. The personal bank teller aims to personalize automated teller machines by controlling the options that are offered and the order in which they are displayed, and by insulating the user from the differences between domestic and international automated teller machines. Design considerations for an implementation of personal bank tellers are discussed.

The Document Visualizer

This article describes the Document Visualizer, a prototype document visualization tool that supports the relevance evaluation of information retrieval results by presenting search terms and document similarities in four visual styles: bar charts, matrix charts, a scatter plot, and a document map. Users are able to explore the documents with dynamic queries and interactive sorting.

Drop Buttons—A Compact User Interface for Selecting Data from Multiple Sources

Drop buttons provide a compact user interface for accepting input from a variety of input sources. Pushing the button pastes data copied onto the clipboard into an application. Dropping data onto the button's label transfers data into an application with a drag and drop operation. Right-clicking the button displays a drop down menu that enables users to invoke file selection and WebChooser dialogs to select files located on the local machine and on the web.

Prototyping a User Interface for the ELF Information Browser

This article describes the design, prototyping and evaluation of a user interface for the Electronic Learning Facilitator, an intelligent assistant for researchers browsing the ISLE Object Store. After outlining an initial user interface based on a filing cabinet metaphor, this article describes a prototype user interface inspired by the SuperBook structured browsing and retrieval system.

The Expanding Table—A User Interface Control for Visualizing Tabular Data

This article describes the Expanding Table, a tabular user interface component that enables table cells to expand and contract with smooth animation. The Expanding Table can be used for visualization and browsing applications, and when the user interface component for editing table cell values would make tables prohibitively large. An Expanding Calendar is provided as an example application.

A Relational Storage Mechanism for Implementing Flexible Input Controls

Users sometimes need to enter invalid values or values they are not sure of. Flexible input controls allow invalid data values to be entered, they enable values that the user is not sure of to be marked as such, and enable the user to make explanatory annotations. This article describes a storage technique for relational databases that bridges the gap between the invalid and uncertain values used by flexible input controls and the strict data integrity and validation rules required by relational databases.

Flexible Input Controls for Humane User Interfaces

Graphical user interfaces provide input controls that constrain input values to meet database integrity and validation rules. Sometimes, however, users need to enter data temporarily that is known to be invalid or not completely accurate. Current software is inflexible because it prevents invalid and uncertain values to be entered temporarily. This article describes flexible input controls, a new idiom that enables user interfaces to be more humane by acknowledging that users need to use invalid and uncertain values. Flexible input controls allow users to enter invalid values, to mark uncertain values, and to attach explanatory annotations to such values.

Google's Simple User Interface Must Be Clear

From its inception, Google's search interface has been praised for its simplicity. However, simplicity is not a replacement for clarity, which is the most important attribute of a user interface. I don't know if I've ever misunderstood a user interface control as much as I misunderstood Google's I'm Feeling Lucky button.

A Java Class Framework for Describing Application Parameters

This article describes a Java class framework for describing application parameters of commonly occurring data types. The framework can automatically construct user interface components for each type of parameter enabling users to view and edit parameter values. Parameters can be grouped into sets and the framework can automatically generate the user interface of a parameter set which contains the user interface component of each parameter in the set.

Link Labels—A Java Component for Hyperlinks

A link label is a Java Swing component that provides hyperlink functionality for Java applications. Link labels display a hyperlink and generate an event when the cursor is moved on and off the hyperlink and when the mouse is clicked over it. Interested clients listen for link label events to enable them to invoke application dependent hyperlink behavior.

Mix Interface Idioms With Care

As hyperlink-style web interfaces become more common in desktop applications, developers must take care not to throw away the familiar semantics of GUI controls such as buttons. This article provides an example from Firefox where replacing buttons with hyperlinks removes the perceived safety net of cancellable operations.

A Multiple Source Input Framework

This article describes a Java framework for collecting and processing input from five types of input source: files on the local machine, files on the web, copy and paste and drag and drop operations, and programmatic input. The framework distills the five input sources into a generic Reader object from which the input is read and processed by a data source processor, an abstraction of data processing functionality such as parsing and data analysis.

Poorly-Written Error Messages Trump Crashes

Well-written error messages inform users about the steps they should take next. In contrast, poorly-written error messages simply report the internal state of the application in the hope that users will understand the problem and be able to correct it. However, detecting that an error has occurred and presenting some information to users is far better than simply crashing.

Progress Windows Monitor the Progress of Lengthy Tasks

Interactive applications use progress bars to provide users with feedback on the progress of lengthy tasks such as downloading large files. Current graphical user interface toolkits pop up a window with the progress bar; as the operation progresses, the length of the bar increases from left to right to indicate how much of the task has been completed, and to enable users to estimate how much longer the task will take. When the task is complete, the application closes the window containing the progress bar and opens the window containing the content. But there's a problem.

The Space Filler Explorer

This article describes the Space Filler Explorer, an application for navigating around hierarchical filing systems with three co-ordinated views: a directory tree structure, a list of files, and a 2D tree-map space-filling visualization of the files. Users can dynamically query the tree-map visualization to filter out files based on their size using several relational operators.

Copying and Moving Data with the Visible Clipboard

The design of the clipboard used by graphical user interfaces often confuses users because the data that has been copied onto the clipboard is not visible. This article introduces the visible clipboard, a new idiom for copying and moving data that displays the data on the clipboard while it is being copied or moved.

Visual Filtering of Search Results with Document Maps

Document maps are a new visualization tool that help users filter information retrieval search results. Documents are compactly represented by a square matrix that presents document similarity and frequently occurring search items. Evaluation has shown that document maps enable users to filter search results quickly and accurately.

The WebChooser Dialog

This article describes a new file selection dialog called WebChooser that enables users to select files that are published on web pages and FTP servers, as well as files stored on local machines. The WebChooser dialog also generalizes file selection to URL selection which increases the range of information that can be selected to include files, email addresses, newsgroups, and web queries.