<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Feb</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Graphs of models for exploring design spaces in the engineering of Human Computer Interaction</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Alexandre Demeure, Dimitri Masson</string-name>
          <email>firstname.lastname@inrialpes.fr</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gaelle Calvary</string-name>
          <email>gaelle.calvary@imag.fr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Laboratory of Informatics of Grenoble</institution>
          ,
          <addr-line>385, rue de la Bibliothèque - B.P. 53 - 38041, Grenoble Cedex 9, France, +33 (0)4 76 51 48 54</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Laboratory of Informatics of Grenoble</institution>
          ,
          <addr-line>655 Avenue de l'Europe, 38330 Montbonnot-Saint-Martin, France, +33 (0)4 76 51 48 54</addr-line>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2011</year>
      </pub-date>
      <volume>13</volume>
      <issue>2011</issue>
      <abstract>
        <p>Model Driven Engineering (MDE) has focused on the latest stages of the design process so far and as a result has missed the opportunity to foster creativity in the early phases. Our research aims at stretching MDE all over the design process including the creative phases so that to go beyond the well-known „fast-food UIs‟ limit of MDE. We propose to consider sketches and prototypes as models. This paper claims for storing these models in a graph so that to both inspire designers and support adaptation at runtime.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Model based User Interfaces</kwd>
        <kwd>graph of models</kwd>
        <kwd>design spaces</kwd>
        <kwd>creativity</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>INTRODUCTION</title>
      <p>
        Early phases of User Interfaces (UI) design require the
production of numerous propositions so that to result in a
successful design [
        <xref ref-type="bibr" rid="ref1 ref11">1, 11</xref>
        ]. Those propositions are usually
explored through sketches and prototypes that quickly
materialize designers‟ ideas as a support for discussion,
selection and validation. Whilst those early phases are
crucial for good design, we observe that currently Model
Driven Engineering (MDE) sustains the latest stages of
design only (i.e., when the code of the concrete UI is
produced). This can be explained by the historical
grounding of MDE that comes from software engineering.
Those approaches aim at proposing optimal solutions for a
given problem in a particular context (e.g. SUPPLE [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]) but
not at sustaining human creativity. As a result, MDE seems
      </p>
      <p>
        Tools exist to help designers to sketch and prototype UIs. A
simple yet quiet efficient example is a pen coupled with a
sheet of paper. However, paper based sketches are not really
appropriate to describe interaction. In some cases, this
shortcoming can simply be overcome by using animated
GIF. More generally, electronic tools such as SILK [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] or
DENIM [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] have been developed to enable designers to
quickly specify the interaction directly from sketches. Other
tools such as SketchiXML [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] enable the designers to
sketch a UI that is then interpreted as a set of UsiXML
widgets. However, the set of widgets is not extensible (i.e. a
brand new widget can not be added), which is a strong
limitation for creativity.
h
c
t
e
k
S
iF ep
w ty
oL troo
p
iF ep
igh ttoy
H ro
p
d
FXiXguXrEeX1::InNteorldeaevsinagraet ccohdaerlaecvteelr/iXzeXdX bFyUIa level of
aXbXsXtraEcXtio:nSkaentcdh aofleavneilntoefrlpearveicnigsiobny.zoAoman/dXXBXare two
samples detailed below.
      </p>
      <p>
        A
la n
m tio
roF iife
n
Demeure [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] explored semantic graphs for storing and
reusing UI components both at design time and runtime.
Masson [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] investigated genetic algorithms as a support for
exploring possible UIs for a given task by assembling UI
components that correspond to the (sub)tasks and tasks
operators. However, in both cases, the components were
formally described. Thus sketches and prototypes were not
taken into account which dramatically limits the design
space exploration.
      </p>
    </sec>
    <sec id="sec-2">
      <title>STRUCTURE OF THE GRAPH OF MODELS</title>
      <p>
        As in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], we propose to organize the UIs‟ models in a graph
but enriched with informal models such as sketches and
prototypes.
      </p>
    </sec>
    <sec id="sec-3">
      <title>Nodes of the graph</title>
      <p>Nodes of the graph are UIs‟ models defined at one of the
CAMELEON levels of abstraction: Concepts and tasks
(C&amp;T), Abstract UI (AUI), Concrete UI (CUI) and Final UI
(FUI). Each node is enriched with a level of precision. This
level ranges from “rough sketch” to “formal definition”,
covering all levels of fidelity in prototyping.</p>
      <sec id="sec-3-1">
        <title>Level of abstraction (as defined in CAMELEON) C&amp;T AUI</title>
        <p>CUI B</p>
        <p>
          FUI
Point A in Figure 1 may correspond to a formal definition
of the interleaving task operator. Such a definition could be
based on CTT [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. More concrete descriptions of this
operator could be provided. For instance, point B is a
concrete description of this operator but at a sketch level of
precision only. Figure 2 provides an example of such a
CUISketch definition.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Arcs of the graph</title>
      <p>The arcs of the graph model the relationships between UI
models. Arcs can be seen as transformations that produce
target UI models from source UI models. A transformation
is defined by:</p>
      <p>A level of precision ranging from informal to
formal;
The context of use (in terms of platform, user and
environment) the transformation requires;
A degree of originality that conveys how much the
know-how expressed in the arc is spread over
designers: is it shared by the whole HCI
community, or just by a part of it? This attribute
gives designers clues on how well established or
how innovative the transformation is.</p>
      <p>Figure 3 illustrates a possible classification of
transformations. This classification goes beyond usual
transformations that are limited to the levels of abstraction
they manipulate (Abstracts and Concretizes). Thanks to our
classification, transformations can also be used for:
Changing the level of precision of UI models (e.g.,
providing a formally defined UI model from an
informal prototype).</p>
      <p>Making the composition of a UI model explicit
(e.g., a task tree is composed of subtasks and task
operators).</p>
      <p>Expressing that a UI model is another version of
another one. This can be useful for knowing that
UI alternatives exist.</p>
      <p>Overall, transformations are a means for expressing the
design rationale of an evolution in the design process.</p>
      <sec id="sec-4-1">
        <title>Transformation</title>
      </sec>
      <sec id="sec-4-2">
        <title>Precision Composes Abstracts</title>
      </sec>
      <sec id="sec-4-3">
        <title>Blurs</title>
      </sec>
      <sec id="sec-4-4">
        <title>Concretizes Sharpens Is a version of</title>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>EXPLOITATION OF THE GRAPH OF MODELS</title>
      <p>This section develops how powerful the graph is to support
evolution both at design time and at runtime. Figure 4 is
used to support explanation.</p>
    </sec>
    <sec id="sec-6">
      <title>At design time</title>
      <p>At design time, the graph serves two purposes: 1) to inspire
designers by capitalizing the know-how in UI design, and 2)
to provide a space to store and access UIs produced by
designers during the design process.</p>
      <p>The graph provides a means for designers‟ teams to
structure their production of sketches and prototypes.
Relationships between the UI models can embed the design
rationale of the design process (the motivations of the
design choices). For instance, in Figure 4, a project starts
by a sketch of a C&amp;T description. Neither the tasks nor the
concepts are well defined, but stakeholders agree on an
informal description of the project. Then this description is
sharpened to a formal C&amp;T model (here a CTT model).
Nodes C, D, E, F and G describe one possible design
evolution: from the C&amp;T model, designers explore two
paths: C followed by E and G, in parallel with F. C is more
thoroughly explored. Several design versions are proposed
and explained. The last version (G) sharpens parts of the
design.</p>
      <p>The graph stores the evolutions, discussions, and choices
along with their rationale. Thus designers can later on go
back to understand where an idea comes from, or start a new
branch while keeping memory of alternatives. Indeed,
different parts of the design may evolve at different places in
the graph, or along different paths. In a same node, some
parts can be highly detailed denoting a high level of
confidence in the design choice, whilst other parts can still
be roughly sketched (for instance node G in Figure 4 where
only a part of the UI is sharpened).</p>
      <p>Designers can select parts of a drawing and link them to
other nodes, or parts of other nodes. For instance, designers
can specify that one part of the C&amp;T model represents the
“Manage contacts list” and link it with the corresponding
nodes. They can also link it to the circle part in node C.
This possibility to identify parts of models is particularly
useful when applied together with the “Composes”
relationship. Designers can specify that a node is composed
of several sub-nodes. In the case of a C&amp;T model, sub
nodes may represent sub tasks involved in the model. The
“Composes” relationship makes it possible to split
problems carried out by models into sub-problems. This is
key for reducing complexity by finding, capitalizing and
reusing solutions to smaller problems.</p>
      <p>
        Designers can then explore possible solutions by
assembling solutions of sub-problems together. As
subproblems can be decomposed in turn, this leads to a
combinatory explosion and makes it impossible for
designers to explore all of them. Thus one solution is to let
the exploration of the combinations to search algorithms.
Masson [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] proposed to use genetic algorithms to produce
examples of UIs designs. Based on an external database that
capitalizes widgets at several levels of abstraction (C&amp;T to
FUI), it takes a C&amp;T model in input and produces a set of
transformations to be applied on the C&amp;T model to produce
final UIs. However this approach focuses on widgets at a
very high level of precision only. As a consequence, the
generated UIs might not be suitable for early design phases.
This approach can be extended to sketches and prototypes.
      </p>
    </sec>
    <sec id="sec-7">
      <title>At runtime</title>
      <p>
        Designers can rely on nodes and arcs at the formal
definition level to propose automatic UI generators that can
produce UI adapted to a given context of use. Indeed, for a
given task, one can go through arcs and nodes to retrieve all
possible implementations of this task. For each of these
implementations, the path that links it with the original task
informs about the context of use it is designed for. For
instance, in Figure 4, one can follow the concretization arcs
from the interleaving node to find all possible solutions to
represent it. This process can be guided by the information
about the context of use the node requires. By doing so, it
is possible to retrieve all CUI/FUIs adapted to a given
context of use. This was explored in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. It is related to a
service broker devoted to HCI.
      </p>
      <p>
        The graph, used as a service broker, could be integrated in
automatic UI generation algorithms like SUPPLE [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. The
richer the graph is for a given task, higher the chance is to
produce adapted UIs. Thus the openness and extendibility
of the graph is key compared to closed or non explicit
approaches that enumerate possible renderings for tasks or
tasks operators. Actually, algorithms like SUPPLE [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] can
be seen as a concretization arc in the graph that produces a
CUI/FUI (at the formal definition level precision) based on
a C&amp;T description (at the formal definition level precision),
a user model (his/her UI preferences, Fitts parameters and
typical traces) and the targeted platform (widgets set and
screen size). Applying SUPPLE to a particular task tree
results in adding an arc in the graph starting from the node
that embeds the C&amp;T description to a node that describes
the generated CUI/FUI. For instance, in Figure 4, SUPPLE
can be applied to the C&amp;T node that describes the instant
messenger to produce a CUI (B in Figure 4) optimized for
the platform P and user characteristics U.
      </p>
    </sec>
    <sec id="sec-8">
      <title>CONCLUSION</title>
      <p>Considering sketches and prototypes as models in MDE is
promising to avoid the “fast-food UI” limit. It should enable
UI designers to take advantages of these powerful
approaches while taking benefit of the strong know-how
HCI has in MDE.</p>
      <p>We explore how capitalizing models in a graph can be
useful both at design time and runtime to get inspired and
make the exploration of the design spaces easier. The
implementation of this graph and the related exploration
tools is currently work-in-progress. We plan to involve UI
designers in their design as well.</p>
      <p>Informal description
of instant messenger
based on images
samples…</p>
      <sec id="sec-8-1">
        <title>Sharpens</title>
      </sec>
      <sec id="sec-8-2">
        <title>C&amp;T Sketch of an instant messager ….</title>
        <p>B</p>
      </sec>
      <sec id="sec-8-3">
        <title>Definition of the interleaving operator with respect to CTT.</title>
      </sec>
      <sec id="sec-8-4">
        <title>Composes</title>
      </sec>
      <sec id="sec-8-5">
        <title>Sharpens</title>
      </sec>
      <sec id="sec-8-6">
        <title>SUPPLE &lt;platform P, User U&gt;</title>
      </sec>
      <sec id="sec-8-7">
        <title>Concretizes C G</title>
      </sec>
      <sec id="sec-8-8">
        <title>Concretizes</title>
        <p>Blurs</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Buxton</surname>
            ,
            <given-names>B. Sketching</given-names>
          </string-name>
          <article-title>User Experiences: Getting the Design Right and the Right Design</article-title>
          .
          <volume>448</volume>
          <fpage>pages</fpage>
          , Morgan Kaufmann (March 30,
          <year>2007</year>
          ). ISBN-
          <volume>13</volume>
          :
          <fpage>978</fpage>
          -
          <lpage>0123740373</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Coutaz</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , User Interface Plasticity:
          <article-title>Model Driven Engineering to the Limit!</article-title>
          ,
          <string-name>
            <surname>in</surname>
            <given-names>ACM</given-names>
          </string-name>
          ,
          <source>Engineering Interactive Computing Systems (EICS</source>
          <year>2010</year>
          )
          <article-title>International Conference</article-title>
          .
          <source>Keynote paper. Pages 1-8</source>
          .
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Coyette</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Faulkner</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kolp</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Limbourg</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vanderdonckt</surname>
            ,
            <given-names>J.,</given-names>
          </string-name>
          <article-title>SketchiXML: Towards a Multi-Agent Design Tool for Sketching User Interfaces Based on UsiXML</article-title>
          ,
          <source>Proc. of 3rd Int. Workshop on Task Models</source>
          and
          <article-title>Diagrams for user interface design TAMODIA'2004 (Prague</article-title>
          , November 15-
          <issue>16</issue>
          ,
          <year>2004</year>
          ), Ph. Palanque,
          <string-name>
            <given-names>P.</given-names>
            <surname>Slavik</surname>
          </string-name>
          , M. Winckler (eds.), ACM Press, New York,
          <year>2004</year>
          , pp.
          <fpage>75</fpage>
          -
          <lpage>82</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Demeure</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvary</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Coutaz</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Vanderdonckt</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>The comets inspector: Towards run time plasticity control based on a semantic network</article-title>
          .
          <source>In TAMODIA‟06.</source>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Gajos</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Weld</surname>
            ,
            <given-names>D. S.</given-names>
          </string-name>
          <string-name>
            <surname>Supple</surname>
          </string-name>
          <article-title>: automatically generating user interfaces</article-title>
          .
          <source>In IUI ‟04: Proceedings of the 9th international conference on Intelligent user interface (</source>
          New York, NY, USA,
          <year>2004</year>
          ), ACM Press, pp.
          <fpage>93</fpage>
          -
          <lpage>100</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Landay</surname>
            ,
            <given-names>J.A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Myers</surname>
            ,
            <given-names>B.A.</given-names>
          </string-name>
          <article-title>Interactive sketching for the early stages of user interface design</article-title>
          .
          <source>Proceedings of the SIGCHI conference on Human factors in computing systems</source>
          ,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Srivastava</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Kumar</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Brafman</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Klemmer</surname>
            ,
            <given-names>S.R.</given-names>
          </string-name>
          <article-title>Designing with interactive example galleries</article-title>
          .
          <source>Proceedings of the 28th international conference on Human factors in computing systems</source>
          ,
          <year>2010</year>
          , pp.
          <fpage>2257</fpage>
          --
          <lpage>2266</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Lin</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Newman</surname>
            ,
            <given-names>M.W.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Hong</surname>
            ,
            <given-names>J.I.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Landay</surname>
            ,
            <given-names>J.A.</given-names>
          </string-name>
          <string-name>
            <surname>DENIM</surname>
          </string-name>
          <article-title>: finding a tighter fit between tools and practice for Web site design</article-title>
          .
          <source>Proceedings of the SIGCHI conference on Human factors in computing systems</source>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9. Masson,
          <string-name>
            <given-names>D.</given-names>
            and
            <surname>Demeure</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            and
            <surname>Calvary</surname>
          </string-name>
          ,
          <string-name>
            <surname>G.</surname>
          </string-name>
          <article-title>Magellan, an Evolutionary System to Foster User Interface Design Creativity</article-title>
          .
          <source>In proceedings of EICS‟10</source>
          , Berlin,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Paterno</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Mancini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Meniconi</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <article-title>ConcurTaskTrees: A Diagrammatic Notation for Specifying Task Models</article-title>
          .
          <source>In Proceedings Interact‟97</source>
          ,
          <string-name>
            <surname>July</surname>
          </string-name>
          ‟
          <volume>97</volume>
          ,
          <string-name>
            <surname>Sydney</surname>
          </string-name>
          , Chapman&amp;Hall,
          <year>1997</year>
          , pp.
          <fpage>362</fpage>
          -
          <lpage>369</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Tohidi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Buxton</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Baecker</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Sellen</surname>
            ,
            <given-names>A. Getting</given-names>
          </string-name>
          <article-title>the right design and the design right</article-title>
          .
          <source>In CHI ‟06: Proceedings of the SIGCHI conference on Human Factors in computing systems</source>
          (New York, NY, USA,
          <year>2006</year>
          ), ACM, pp.
          <fpage>1243</fpage>
          -
          <lpage>1252</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>