Creating a lightweight user interface description language: An overview and analysis of the personal universal controller project

Over six years, we iterated on the design of a language for describing the functionality of appliances, such as televisions, telephones, VCRs, and copiers. This language has been used to describe more than thirty diverse appliances, and these descriptions have been used to automatically generate both graphical and speech user interfaces on handheld computers, mobile phones, and desktop computers. In this article, we describe the final design of our language and analyze the key design choices that led to this design. Through this analysis, we hope to provide a useful guide for the designers of future user interface description languages.

[1]  Jeffrey Nichols,et al.  Taking handheld devices to the next level , 2004, Computer.

[2]  Marc Abrams,et al.  UIML: An Appliance-Independent XML User Interface Language , 1999, Comput. Networks.

[3]  Jeffrey Nichols,et al.  Improving automatic interface generation with smart templates , 2004, IUI '04.

[4]  Marc Abrams,et al.  Building Multi-Platform User Interfaces with UIML , 2001, CADUI.

[5]  Angel R. Puerta,et al.  A Model-Based Interface Development Environment , 1997, IEEE Softw..

[6]  Jeffrey Nichols,et al.  Studying the use of handhelds to control smart appliances , 2003, 23rd International Conference on Distributed Computing Systems Workshops, 2003. Proceedings..

[7]  James D. Foley,et al.  Providing high-level control and expert assistance in the user interface presentation design , 1993, INTERCHI.

[8]  Fabio Paternò,et al.  Design and development of multidevice user interfaces through multiple logical descriptions , 2004, IEEE Transactions on Software Engineering.

[9]  Joëlle Coutaz,et al.  Towards a New Generation of Widgets for Supporting Software Plasticity: The "Comet" , 2004, EHCI/DS-VIS.

[10]  Krzysztof Z. Gajos,et al.  Ligature: Gesture-Based Configuration of the E21 Intelligent Environment , 2001 .

[11]  K. Gegenfurtner,et al.  Design Issues in Gaze Guidance Under review with ACM Transactions on Computer Human Interaction , 2009 .

[12]  Jeffrey Nichols,et al.  Huddle: automatically generating interfaces for systems of multiple connected appliances , 2006, UIST.

[13]  Benjamin Michotte,et al.  USIXML: A Language Supporting Multi-path Development of User Interfaces , 2004, EHCI/DS-VIS.

[14]  Pat Hanrahan,et al.  ICrafter: A Service Framework for Ubiquitous Computing Environments , 2001, UbiComp.

[15]  Jeffrey Nichols,et al.  Automatically generating high-quality user interfaces for appliances , 2006 .

[16]  Jeffrey Nichols,et al.  Report on the INCITS/V2 AIAP-URC Standard , 2004 .

[17]  Marc Abrams,et al.  Using UIML to Automate Generation of Usability Prototypes and Tactical Software , 2007 .

[18]  Ping Luo,et al.  Facilitating the exploration of interface design alternatives: the HUMANOID model of interface design , 1992, CHI.

[19]  Jeffrey Nichols,et al.  Generating remote control interfaces for complex appliances , 2002, UIST '02.

[20]  A MyersBrad,et al.  Creating a lightweight user interface description language , 2009 .

[21]  Mark W. Newman,et al.  User interfaces when and where they are needed: an infrastructure for recombinant computing , 2002, UIST '02.

[22]  Jacob Eisenstein,et al.  XIML: a common representation for interaction data , 2002, IUI '02.

[23]  Brad A. Myers,et al.  Past, Present and Future of User Interface Software Tools , 2000, TCHI.

[24]  Pedro A. Szekely Retrospective and Challenges for Model-Based Interface Development , 1996, DSV-IS.

[25]  Brad A. Myers,et al.  Automatic, look-and-feel independent dialog creation for graphical user interfaces , 1990, CHI '90.

[26]  Charles Wiecha,et al.  ITS: a tool for rapidly developing interactive applications , 1990, TOIS.

[27]  Jeffrey Nichols,et al.  UNIFORM: automatically generating consistent remote control user interfaces , 2006, CHI.

[28]  James D. Foley,et al.  A second generation user interface design environment: the model and the runtime architecture , 1993, INTERCHI.

[29]  Krzysztof Z. Gajos,et al.  Automatically generating user interfaces adapted to users' motor and vision capabilities , 2007, UIST.

[30]  Fabio Paternò,et al.  ConcurTaskTrees: A Diagrammatic Notation for Specifying Task Models , 1997, INTERACT.

[31]  Jeffrey Nichols,et al.  Demonstrating the viability of automatically generated user interfaces , 2007, CHI.

[32]  Fabio Paternò,et al.  CTTE: Support for Developing and Analyzing Task Models for Interactive System Design , 2002, IEEE Trans. Software Eng..

[33]  Mari Ostendorf,et al.  SABLE: a standard for TTS markup , 1998, ICSLP.

[34]  Allen Newell,et al.  The psychology of human-computer interaction , 1983 .

[35]  Rainer Simon,et al.  A generic uiml vocabulary for device- and modality independent user interfaces , 2004, WWW Alt. '04.

[36]  Gregg C. Vanderheiden,et al.  Prototype implementations for a universal remote console specification , 2002, CHI Extended Abstracts.

[37]  Wolfgang Müller,et al.  Dialog Modeling for Multiple Devices and Multiple Interaction Modalities , 2006, TAMODIA.