926
K.Z. Gajos et al. / Artificial Intelligence 174 (2010) 910–9505.3. Capturing consistency across interfaces for different devicesSupple enables people to access their applications on a variety of devices. This is a welcome opportunity but also a challenge users may need to learn several versions of a user interface. To alleviate this problem, newly created user interfaces for any particular application—even if they are created fora novel device—should be
consistent with previously created ones that the user is already familiar with. Consistency can be achieved at several different levels,
such as functionality, vocabulary, appearance, branding, and more [72]. By creating all versions of a user interface from the same model, Supple naturally supports consistency at the level of functionality and vocabulary. In this section, we present an extension to Supple’s cost function that allows it to account for dissimilarities in visual appearance and organization between pairs of interfaces. The objective is, if an interface was once rendered on a particular device (for example,
a desktop computer) and it now needs to be rendered fora different platform (for example, a PDA), the new interface should strike a balance between being optimally adapted to the new platform and resembling the previous inter- face.
For that reason, we extended Supple’s cost function to include a measure of dissimilarity between the current rendering
R and a previous
reference rendering
Rref:
$
R(Sf),T,Rref(Sf)=
$
R(Sf),T+
αsR(Sf),Rref(Sf)(11)
Here,
Tas
before stands fora user trace, $
(R(Sf),T )is the original cost function, and
(R(Sf),Rref(Sf))is a dissimilarity metric between the current rendering
R and the reference rendering
Rref. The user-tunable parameter
αscontrols the trade-off between a design that would be optimal for the current platform and one that would be maximally similar to the previously seen interface.
As with the cost function introduced in Section 5.1, we define the dissimilarity function
as a linear combination of Kfactors fk:
W ×
W → {
0
,1
}
, which for any pair of widgets returns 0 or 1 depending on whether or not the two widgets are similar according to a particular criterion. Each factor corresponds to a different criterion. Because dissimilarity factors are defined in terms of differences between individual widgets, overall dissimilarity factors similarly to the cost function from
Section 5.1:
R(Sf),Rref(Sf)=
e∈
SfKk=
1
ukfkR(e),Rref(e)(12)
Thus the dissimilarity function can be computed incrementally, supporting efficient computation of an effective admissible heuristic.
5.3.1. Relevant widget dissimilarity featuresTo find the relevant widget features for comparing visual presentations of interface renderings
across different platforms,
we generated interfaces for several different applications for several different platforms and examined cross-device pairs that appeared most and least similar to one another. These observations resulted in a preliminary set of widget features.
Those relevant to primitive widgets (as opposed to the layout and organization elements) are listed below:
Share with your friends: