Table Of ContentAutomatically Generating High-Quality
User Interfaces for Appliances
Jeffrey Nichols
December 2006
CMU-HCII-06-109
Human Computer Interaction Institute
School of Computer Science
Carnegie Mellon University
Pittsburgh, Pennsylvania 15213
Thesis Committee:
Brad A. Myers, Chair
Scott E. Hudson
John Zimmerman
Dan R. Olsen, Jr., Brigham Young University
Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy
Copyright © 2006 Jeffrey Nichols. All rights reserved.
This research was supported in part by the National Science Foundation (through the author’s Graduate Re-
search Fellowship and grants IIS-0117658 and IIS-0534349), Microsoft, General Motors, the Pittsburgh
Digital Greenhouse, and Intel. Equipment supporting this research was generously donated by Mitsubishi Elec-
tric Research Laboratories, VividLogic, Lantronix, Lutron, IBM Canada, Symbol Technologies, Hewlett-
Packard, and Lucent. The views and conclusions contained herein are those of the author and should not be
interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of any
sponsoring party or the U.S. Government.
Keywords: Automatic interface generation, aggregate user interfaces, handheld computers,
personal digital assistants, mobile phones, home theater, appliances, personal universal con-
troller (PUC), user interface description languages (UIDLs), remote controls, multi-modal
interfaces, speech recognition, Smart Templates, user interface consistency, personal consis-
tency, familiarity
ii
Automatically Generating High-Quality
User Interfaces for Appliances
Jeffrey Nichols
iii
iv
Abstract
In this dissertation, I show that many appliance usability problems can be addressed by mov-
ing the user interface from the appliance to a handheld device that the user is already
carrying, such as a Personal Digital Assistant (PDA) or mobile phone. This approach, called
the Personal Universal Controller (PUC), takes advantage of the increasing pervasiveness of
wireless communication technologies that will allow handheld devices to communicate di-
rectly with appliances. Automatic generation of the appliance user interface allows the PUC
to create interfaces that are customized to the platform of the controller device, the user’s
previous experience, and all the appliances that are present in the user’s current environment.
This dissertation makes several contributions to the state of the art in automatic interface
generation:
• Automatic generation that makes use of dependency information to determine a better
structure for the generated user interfaces
• The general Smart Templates technique for incorporating domain-specific design con-
ventions into an appliance specification and automatically rendering the conventions
appropriately on different platforms and in different interface modalities
• Algorithms that apply knowledge of similarity between specifications and interfaces the
user has previously seen to generate new interfaces that are personally consistent
• Algorithms that use a model of the content flow between appliances to generate task-
based interfaces that combine functionality from multiple appliances
An evaluation of the PUC system compared the automatically generated interfaces for two
all-in-one printers with the manufacturer’s interfaces for the same two appliances and found
that users of the automatically generated interfaces were twice as fast and four times as suc-
cessful for both common and complex tasks. The evaluation also shows that the PUC’s
consistency features allow users to be twice as fast when using a new appliance that is similar
to an appliance they have previously encountered. This evaluation is the first known user
study of automatically generated interfaces compared to human designs, and it shows that
automatic generation of user interfaces for end users is now viable for interactive systems.
v
vi
For my parents
vii
viii
Table of Contents
Abstract.................................................................................................................................v
List of Figures...................................................................................................................xvii
List of Tables.....................................................................................................................xxv
Acknowledgements.........................................................................................................xxvii
1 Introduction 1
1.1 The Personal Universal Controller.....................................................................7
1.2 Outside the Scope............................................................................................13
1.3 Contributions..................................................................................................14
1.4 Dissertation Overview......................................................................................15
2 Related Work 17
2.1 Control of Appliances......................................................................................18
2.1.1 Commercial Products.............................................................................18
2.1.2 Commercial Standards...........................................................................20
2.1.2.1 INCITS/V2 Standard.............................................................20
2.1.2.2 Universal Plug and Play..........................................................21
2.1.2.3 Digital Living Network Alliance..............................................22
2.1.2.4 Home Audio-Video Interoperability.........................................22
2.1.2.5 JINI.......................................................................................23
2.1.2.6 OSGi.....................................................................................23
2.1.3 Research Systems....................................................................................23
2.1.3.1 Universal Interactor................................................................23
2.1.3.2 IBM Universal Information Appliance.....................................24
2.1.3.3 ICrafter..................................................................................24
2.1.3.4 Xweb......................................................................................25
2.1.3.5 Ubiquitous Interactor..............................................................25
ix
2.1.3.6 Analyses of Actual Remote Control Usage..................................26
2.1.3.7 DiamondHelp.........................................................................26
2.1.3.8 Roadie....................................................................................26
2.2 Automatic & Guided User Interface Design.....................................................27
2.2.1 Early Model-Based Systems.....................................................................28
2.2.1.1 Mickey....................................................................................28
2.2.1.2 Jade........................................................................................29
2.2.1.3 UIDE.....................................................................................29
2.2.1.4 Humanoid..............................................................................30
2.2.1.5 Mastermind............................................................................30
2.2.1.6 ITS........................................................................................30
2.2.1.7 TRIDENT.............................................................................31
2.2.2 Model-Based Systems for Very Large Interfaces and Platform Independence31
2.2.2.1 Mobi-D..................................................................................32
2.2.2.2 ConcurTaskTrees....................................................................32
2.2.2.3 XIML.....................................................................................33
2.2.2.4 IBM PIMA and MDAT.........................................................33
2.2.2.5 UIML and TIDE...................................................................33
2.2.2.6 TERESA................................................................................34
2.2.2.7 USIXML................................................................................34
2.2.2.8 XAML and XUL.....................................................................34
2.2.2.9 SUPPLE................................................................................35
2.3 Aggregate User Interfaces.................................................................................36
3 Preliminary User Studies 39
3.1 Hand-Designed User Interfaces........................................................................39
3.2 User Studies.....................................................................................................42
3.2.1 Procedure..............................................................................................42
3.2.2 Evaluation............................................................................................42
3.3 Study #1..........................................................................................................43
x
Description:ing the user interface from the appliance to a handheld device that the user is
already carrying, such as a Algorithms that use a model of the content flow
between appliances to generate task- based interfaces that 8.4.3.2 Re-
ordering .