• No results found

Personalized User Interface Generators

Personalized User Interface Generators are developed by researchers to automatically generate user interfaces tailored to individual users’ ability, preferences, and needs. The fundamental requirement for all user interface generators is an abstract description of the interface they need to generate, and this is achievable using any of the available UIDLs. Some of the relevant user interface generators we studied are SUPPLE [14], SUPPLE++[15], and EGOKI [16].

SUPPLE and SUPPLE++ generate user interfaces to support motor-impaired users in performing point-and-click tasks (i.e. tasks involving clicking, dragging, pointing, list selection, etc.). SUPPLE relies on an interface specification, device model, usage model, and a cost function in order to generate the desired user interface. The interface specification

describes the types of data (including associated constraints) to be exchanged between the application and the user, as well as action types (which are useful for invoking application methods at run-time). The device model is a representation of available widgets, as well as device-specific constraints. The usage modelrepresents usage patterns or traces generated as the user interacts with the user interface. These usage patterns are used by SUPPLE in determining the prominence or priority of interface widgets, during the layout process or customization. The cost function determines the presentation style and quality of the user interface. For SUPPLE, the model of user preferences is used as the cost function. In order to obtain the model of user preferences, each user interacts with a preference-elicitation tool (developed by the authors, called ARNAULD) which asks the user to choose from queries showing two functionally equivalent but different user interface fragments (for example, a user may be asked to choose between list box and combo box, radio buttons and combo box, check boxes and list box, etc.). Alternatively, the ARNAULD system may show the user a preview of how the user interface for an application will look when generated; afterwards, the user is asked to suggest improvements to this user interface. The user is also allowed to customize the user interface at run-time (such as re-arranging widgets or removing widgets). The authors of SUPPLE conducted experiments by generating user interfaces for non-disabled users, motor-impaired users, and users with slight vision impairment [14][48].

Similar to SUPPLE is SUPPLE++, which personalizes interfaces based on users’ motor abilities, instead of user preferences. To achieve this, SUPPLE++ has a built-in ABILITY MODELER, which builds a model of users’ motor abilities after observing their performance on pointing, dragging, list selection, and multiple clicking tasks. This ability model is then

used as the cost function to generate the ability-based user interface [15] [49].

EGOKI generates user interfaces that provide access to ubiquitous services. It requires a UIML document, and the target user’s capability as inputs. The UIML document specifies the structure, style, content, and behaviour of interface elements. Moreover, the UIML document contains all functionality provided by the service, as well as the media types (i.e. audio, video, text, image, etc.) for the resources supplied by the user interface toolkit. The service functionality and media types are assigned priorities in order to guide selection of interface resources or widgets during layout. Furthermore, EGOKI maintains a knowledge base containing information about each media type and its associated resources and possible adaptations, based on user capabilities. Each user capability is formed by combining each interaction modality1 and each capability level2. For instance, Table 2.1 shows an example of the capability of blind users, and the corresponding media type, resources, and adaptations.

Modality

Media Resource Adaptation

Vision Auditory Speech Motor Cognitive Type

Null High High High High

Audio Text

Navigation Support, Video Text

Image Text Text Header Text Text

Table 2.1: An example of a blind user’s capability captured in the Knowledge Base Furthermore, the EGOKI system begins the user interface generation process by selecting the appropriate resources and adaptations (using the target user’s capability to search the knowledge base for a match) for each functionality provided by the service. It then transforms the abstract user interface (described in the UIML document) into the final user interface, after confirming that the selected resources are available in the UI toolkit specified in the UIML document. The final user interface generated is in XHTML format, which can easily be rendered for display on target devices. Any extra adaptation or customization can be applied to the user interface using CSS (Cascading Style Sheets).

Our work complements those of SUPPLE and SUPPLE++, since the resources, such as those used in achieving automatic and user-driven customization of interface elements, can be incorporated into graphical interface interpreters. Finally, in contrast to our work, EGOKI’s final user interface can only be rendered as a Web interface on target devices, which may not

1Vision, Auditory, Motor, Speech, and Cognitive [16] 2High, Low, and Null [16]

2.6. Conclusion 19

be suitable for blind users. Even though screen readers are available for web interfaces, their verbosity while reading screen contents can slow down blind users, thereby increasing task completion time.

Related documents