<!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 />
    <article-meta>
      <title-group>
        <article-title>Mapping Model: A First Step to Ensure Usability for sustaining User Interface Plasticity</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jean-Sébastien Sottet</string-name>
          <email>jean-sebastien.sottet@imag.fr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Gaëlle Calvary University of Grenoble</institution>
          ,
          <addr-line>CLIPS</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>General Terms Algorithms</institution>
          ,
          <addr-line>Design, Human Factors, Standardization, Languages, Theory</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>Ubiquitous computing has amplified the need for interactive systems to be able to adapt to their context of use (&lt;User, Platform, Environment&gt;) while preserving usability. This property is called plasticity. Until now, efforts have been put on the functional aspect of adaptation, neglecting the usability part of the definition. This paper investigates MDE mappings for embedding both the description and control of usability. It first provides a general definition and metamodel of the notion of “mapping” that are not devoted to Human-Computer Interaction (HCI). A mapping describes a transformation that preserves properties. A transformation is performed by a set of transformation functions that can be described either by a function and/or an execution trace. The mappings properties provide the designer with a means for both selecting the most appropriate transformation functions and previewing the resulting design. When applied to HCI, mappings are appropriate for both describing and controlling ergonomic criteria either at design time or at runtime. Mappings are rubber bands that link together different perspectives of a same User Interface (UI). They break when the UI goes outside its plasticity domain.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Model</kwd>
        <kwd>Metamodel</kwd>
        <kwd>Mapping</kwd>
        <kwd>Model transformation</kwd>
        <kwd>Advanced User Interfaces</kwd>
        <kwd>Plasticity</kwd>
        <kwd>Usability</kwd>
        <kwd>Adaptation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Jean-Marie Favre
2</p>
    </sec>
    <sec id="sec-2">
      <title>1. INTRODUCTION</title>
      <p>In Human-Computer Interaction (HCI), plasticity refers to the
ability of a User Interface (UI) to withstand variations of context
of use (&lt;User, Platform, Environment&gt;) while preserving
usability. Until now, efforts have been put on the functional
aspect of adaptation. Model Driven Engineering (MDE) has been
seen as promising [3] [10]. At MDDAUI’05, we presented a MDE
approach promoting the description of a UI as a net of models and
mappings (called octopus) [17]. In this paper, we go one step
further investigating the usability part of the plasticity definition.
We show how usability can be described and controlled along the
mappings that compose a UI (the octopus legs). The idea was
roughly sketched in [18].</p>
      <p>The paper is threefold. In a first section, it provides a short
reminder of the octopus vision and a basic case study for
illustration. Then, it elaborates a general definition and
metamodel of the notion of “mapping” that are not devoted to
HCI but applicable to the domain as demonstrated on the case
study. Finally, the paper opens a discussion on issues and
perspectives in the areas of advanced UIs and MDE in general.</p>
    </sec>
    <sec id="sec-3">
      <title>2. TOWARDS OCTOPUSES</title>
      <p>Taking benefit from the past in HCI, the idea is to describe a UI as
a net of models and mappings. The models define different
perspectives on a same UI: domain concepts, user’s task,
workspaces (Wks) and interactors (I) (Figure 1). For their
deployment, these models require resources that are supplied
either by the functional core (FC) and/or the context of use (in
particular, the platform that provides the end-user with input and
output devices). Deployment is modeled as a set of mappings (the
gray boxes on Figure 1). Models and mappings are compliant to
metamodels.</p>
      <p>As illustration, let us consider a basic booking system inspired
from Nogier’s book [13]. For making a reservation, the end-user
is supposed to first specify the date, then the period of the day
(morning versus evening), and finally the number of seats he/she
would like to book. Figure 2 illustrates a sub-part of the
corresponding octopus: the mappings between tasks, concepts and
interactors. In Figure 2a, dashes have been introduced at the
interactor level to make explicit the fact that the task “Specify the
date” is mapped on two guiding labels (“Date”, “mm/dd/yy”). In
case a, there is no (human) error protection: text fields do not
prevent the end-user from bad entries. In contrast in Figure 2b, the
calendar and the radio buttons decrease the risk of error when
specifying the date and the period of the day.</p>
      <p>This paper deals with usability. It shows how usability can be
described along mappings. To that end, it provides a general
definition and metamodel of mappings that go beyond HCI.</p>
    </sec>
    <sec id="sec-4">
      <title>3. MAPPING METAMODEL</title>
      <p>Our mapping metamodel is centered on the notion of
transformation. Thus, we first define the notions of mappings and
transformations before presenting the metamodel.</p>
    </sec>
    <sec id="sec-5">
      <title>3.1 Mappings and transformations</title>
      <p>
        In the MDA literature (see Table 1), the term “mapping” is far
from being clear. However, it is clearly coupled with
transformations.
On Figure 3, “f(x)=x+2” is a transformation model that is
compliant to a mathematical metamodel. A transformation model
describes (the m relation) a transformation function in a predictive
way: in our example, {(
        <xref ref-type="bibr" rid="ref1 ref3">1,3</xref>
        ),(
        <xref ref-type="bibr" rid="ref2 ref4">2,4</xref>
        ),(
        <xref ref-type="bibr" rid="ref3 ref5">3,5</xref>
        )…} for “f” when applied to
integers. A transformation function is the set of all the
transformation instances inside the variation domain (here, the
integers). A transformation instance is a subset (the e relation) of
the transformation function. It is the execution trace of the
function (“f”).
      </p>
      <p>Next section provides a metamodel of mappings based on these
clarifications.</p>
    </sec>
    <sec id="sec-6">
      <title>3.2 A Mapping Metamodel</title>
      <p>The metamodel provided in Figure 4 is a general purpose
mapping metamodel. The core entity is the Mapping class. A
mapping links together entities that are compliant to Metamodels
(e.g., Task and Interactor). A mapping can specify Transformation
functions (e.g., {(Specify the date, Date: --/--/-- (mm/dd/yy)),
(Specify period of the day, “Period of the day: - (M: Morning; E:
Evening)), …}) by patterns. A Pattern is a transformation model.
It links together source and target elements (ModelElement) to
provide a predictive description of the transformation function. In
addition, a mapping can describe the execution trace of the
transformation function. The trace is made of a set of Links
between Instances of ModelElements. The couple (Specify the
date, Date: --/--/-- (mm/dd/yy)) is an example of Link.
A mapping conveys a set of Properties (e.g., “Error protection”).
A property is described according to a given reference framework
(Referential) (e.g., Bastien&amp;Scapin[1] that define eight criteria
among which is the “Error protection”). These properties are
descriptive. They qualify either the global set of mappings or one
specific element: a mapping, a pattern or a link.</p>
      <p>Associated transformations are in charge of maintaining the
consistency of the net of models by propagating modifications
that have an impact on other elements. For instance, if replacing
an interactor with another one decreases the UI consistency, then
the same substitution should be applied to the other interactors of
the same type. This is the job of the associated functions which
performs this adaptation locally.
Error protection to measure the extent to which the UI
prevents the end-user from bad actions;
Homogeneity-Consistency to
consistency in the UI (e.g., style).
ensure
a
global
As pointed out in Figure 5:
mappings) associates the same type of interactor (input
fields) to all the user’s actions;
Error protection is guaranteed in Figure 5b thanks to
interactors that preserve the user from mistakes
(calendar and radio buttons).</p>
      <p>In Figure 5, the scope of compatibility (e.g., C1, C2, C3) is one
mapping whilst homogeneity-consistency and error protection
deal with the global net of mappings (C4 on a and b).
·
·
·
·
·</p>
      <p>Compatibility is preserved along all the mappings
linking together tasks and interactors: the UI fully
supports the user’s task (Figures 5 a and b);
Homogeneity-Consistency is satisfied in Figure 5a as
the transformation function (that is modeled by the
For legibility, Figure 5 only mentions the criteria that are
satisfied. For instance, the “Error protection” that is not preserved
in Figure 5a has not been mentioned. In reality, octopuses should
tell the extent to which each criteria is satisfied (positively or
negatively).</p>
      <p>This work provides a sound basis for future work. Next section
elaborates on perspectives for both HCI and MDE communities.</p>
    </sec>
    <sec id="sec-7">
      <title>4. CONCLUSION AND PERSPECTIVES</title>
      <p>In 2000, B. Myers stated that model-based approaches had not
found a wide acceptance in HCI. They were traditionally used for
automatic generation and appeared as disappointing because of a
too poor quality of the produced UIs. He envisioned a second life
for models in HCI empowered by the need of device
independence. In our work, we promote the use, the description
and the capitalization of elementary transformations that target a
specific issue.</p>
      <p>
        A UI is described as a net of models and mappings both at design
time and runtime. At design time, mappings convey properties
that help the designer in selecting the most appropriate
transformation functions (or set of transformation functions).
Either the target element of the mapping is generated according to
the transformation function that has been selected, or the link is
made by the designer who then describes the mapping using a
transformation model. We envision adviser tools for making the
designer aware of the properties he/she is satisfying or neglecting.
At runtime, mappings are the key for reasoning on usability.
However, it is not easy as (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) there is not a unique consensual
reference framework; (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) ergonomic criteria may be inconsistent
and, as a result, require difficult trade-offs. Thus, (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) the
metamodel will have to be refined according to these frameworks;
(
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) a meta-UI (i.e., the UI of the adaptation process) may be
relevant for negotiating trade-offs with the end-user.
      </p>
      <p>Beyond HCI, this work provides a general contribution to MDE.
It defines a mapping metamodel and clarifies the notions of
mappings and transformations. Mappings are more than a simple
traceability link. They can be either predictive (transformation
specifications) or descriptive (supported properties), as a result
covering both the automatic generation and the hand-made
linking. Moreover mapping models can embed transformation in
order to manage models consistency. This is new in MDE as most
of the approaches currently focus on direct transformation. Our
mapping metamodel will be stored in the international Zoo of
metamodels: the ZOOOMM project [6].</p>
    </sec>
    <sec id="sec-8">
      <title>5. ACKNOWLEDGMENTS</title>
      <p>The work has been supported by the European project EMODE.
Authors would like to thank Joëlle Coutaz and Alexandre
Demeure for their strong contribution. Metamodels are edited
under Topcased plugin for eclipse: http://www.topcased.org.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Bastien J.M.C</surname>
          </string-name>
          ,
          <string-name>
            <surname>Scapin D. Ergonomic</surname>
          </string-name>
          <article-title>Criteria for the Evaluation of Human-Computer Interfaces</article-title>
          ,
          <source>Technical report INRIA, N°156</source>
          ,
          <string-name>
            <surname>June</surname>
            <given-names>1993</given-names>
          </string-name>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Caplat</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sourrouille</surname>
            ,
            <given-names>J.L</given-names>
          </string-name>
          , Considerations about Model Mapping,
          <article-title>Wisme 2003</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Clerckx</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Luyten</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Coninx</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <article-title>The mapping Problem Back and Forth: Customizing Dynamic Models while preserving Consistency</article-title>
          , 3rd International Workshop on Task Model and
          <article-title>Diagrams for User Interfaces Design</article-title>
          , Prague, Czeck Republic,
          <year>November 2004</year>
          , pp
          <fpage>33</fpage>
          -
          <lpage>42</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>DSTC</surname>
          </string-name>
          ,
          <string-name>
            <surname>IBM</surname>
          </string-name>
          , MOF STC Query/View/ Transformation, Submission by DSTC IBM, ad/2003-02-03,
          <year>March</year>
          2003
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Favre</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          <string-name>
            <surname>Toward</surname>
          </string-name>
          <article-title>a Basic Theory to Model Driven Engineering</article-title>
          , Workshop on Software Model Engineering,
          <string-name>
            <surname>WISME</surname>
          </string-name>
          <year>2004</year>
          ,
          <article-title>joint event with UML 2004, Lisboa</article-title>
          , Portugal, October
          <volume>11</volume>
          ,
          <year>2004</year>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>[6] http://zooomm.org</mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>Judson</surname>
            ,
            <given-names>S.R</given-names>
          </string-name>
          , France, R.B.,
          <string-name>
            <surname>Carver</surname>
            ,
            <given-names>D.L.</given-names>
          </string-name>
          <string-name>
            <surname>Specifying Model</surname>
          </string-name>
          <article-title>Transformation at on the Metamodel Level, Wisme 2003</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Kleppe</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Warmer</surname>
            , Bast,
            <given-names>W. MDA</given-names>
          </string-name>
          <string-name>
            <surname>Explained</surname>
          </string-name>
          .
          <source>The Model Driven Architecture: Practice and Promise</source>
          , AddisonWesley, April 2003
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <surname>Kurtev</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          , Van den Berg,
          <string-name>
            <surname>K.</surname>
          </string-name>
          <article-title>A Synthesis-Based Approach to Transformations s in an MDA Software Development Process</article-title>
          ,
          <source>In Proc. of Model Driven Architecture: Foundations and Applications</source>
          , pp.
          <fpage>121</fpage>
          -
          <lpage>126</lpage>
          , University of Twente, Enschede, The Netherlands 2003
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Limbourg</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vanderdonckt</surname>
            ,
            <given-names>J. Adressing</given-names>
          </string-name>
          <article-title>the mapping problem in User Interfaces Design</article-title>
          , 3rd International Workshop on Task Model and
          <article-title>Diagrams for User Interfaces Design</article-title>
          , Prague, Czeck Republic,
          <year>November 2004</year>
          , pp
          <fpage>155</fpage>
          -
          <lpage>163</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Mellor</surname>
            ,
            <given-names>S.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scott</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Uhl</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , Weise, l.D MDA Distilled:
          <article-title>Principles of Model-Driven Architecture</article-title>
          , Addison-Wesley,
          <article-title>March 2004</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Myers</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hudson</surname>
            ,
            <given-names>S.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pausch</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Past</surname>
          </string-name>
          , Present, and
          <article-title>Future of User Interface Software Tools, Transactions on Computer-Human Interaction (TOCHI)</article-title>
          , Vol
          <volume>7</volume>
          ,
          <string-name>
            <surname>Issue</surname>
            <given-names>1</given-names>
          </string-name>
          ,
          <fpage>2000</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>Nogier</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.F. De</surname>
          </string-name>
          <article-title>l'ergonomie du logiciel au design des sites Web, Third edition</article-title>
          , Dunod 2005
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <source>[14] OMG, MDA Guide Version 1.0</source>
          .1, omg/2003- 06-01, June 2003
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>Peltier</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>Techniques transformations de modèles basées sur la méta-modélisation</article-title>
          ,
          <source>PhD</source>
          , University of Nantes,
          <year>October 2003</year>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <source>[16] QVT- Partners Revised Submission for MOF 2</source>
          .0 Query / Views / Transformation RFP, http://qvtp.org,
          <year>August 2003</year>
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Sottet</surname>
            ,
            <given-names>J.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvary</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Favre</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Coutaz</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Demeure</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Balme</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <article-title>Towards Model-Driven Engineering of Plastic User Interfaces</article-title>
          ,
          <source>in Conference on Model Driven Engineering Languages and Systems (MoDELS'05) satellite proceedings</source>
          , Springer LNCS, pp
          <fpage>191</fpage>
          -
          <lpage>2005</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>Sottet</surname>
            ,
            <given-names>J.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvary</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Favre</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Coutaz</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Demeure</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <article-title>Towards Mappings and Models Transformations for Consistency of Plastic User Interfaces The Many Faces of Consistency</article-title>
          .
          <source>Proc. (CHI2006)</source>
          , Montréal, Québec, Canada,
          <source>April 22-23</source>
          ,
          <year>2006</year>
          ,
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>