Interfaces which support natural inputs such as handwriting and speech are becoming more prevalent. These input techniques allow people to use computers in situations where the mouse and keyboard are not an option, such as mobile computing. They can also allow people with disabilities or little computing experience to use computers.
However, these recognition-based interface techniques are error-prone. Despite research efforts to improve recognition rates, a certain amount of error will never be removed. Research in the area of error handling for recognition technologies must assume that errors will occur, and then answer questions about the best ways to deal with them. Humans have developed countless ways to correct errors in understanding or clarify ambiguous statements. It is time for interface designers to focus on ways for computers to do the same.
There is need for a new area of user interface research ---the design, implementation, and study of interfaces for handling errors in error-prone input technologies. The definition of this research topic is grounded in our survey of previous work in the areas of error discovery, error handling techniques, validation, and toolkit level support.
Researchers have had no choice but to handle errors in recognition systems on an applicaiton by application basis. Our goal is to provide re-useable support for error handling across applications. To this end, we are designing a toolkit which will provide services such as error discovery, as well as error handling interfaces which can be combined with existing applications.
This toolkit will transparantly replace the event handling module of a normal user interface toolkit with an underlying system that supports negotiation between multiple recognizers and the error handling interface. This negotiation will be transparent to the application, which is required to handle only two extensions. First, events are supplemented by an associated probability indicating the certainty that the event has happened. Second, the application needs to be able to undo an event on request, because a new interperation of the input may become more likely.
We plan to demonstrate the effectiveness of this toolkit by using it to implement some of the standard techniques uncovered in our survey, and then applying the error handling techniques in multiple settings.
Our goal in proposing this new area of research is to encourage other researchers to contribute new knowledge, and to give designers faced with error-prone situations some guidance in designing better user interfaces.
An interface toolkit which supports error handling will make natural interfaces more accessible to designers. People who want to use recognition technologies in their interfaces will no longer have to be experts in the area in order to build interfaces which support error handling.
In addition, the toolkit will provide a consistent platform for
experimenting with new techniques and testing both new and old
techniques. Rather than coding each new variation from scratch,
researchers will be able to easily switch and compare among several
alternatives.