=Paper=
{{Paper
|id=Vol-214/paper-12
|storemode=property
|title=Mapping Model: A First Step to Ensure Usability for sustaining User Interface Plasticity
|pdfUrl=https://ceur-ws.org/Vol-214/paper12.pdf
|volume=Vol-214
|dblpUrl=https://dblp.org/rec/conf/models/SottetCF06
}}
==Mapping Model: A First Step to Ensure Usability for sustaining User Interface Plasticity==
Mapping Model: A First Step to Ensure Usability
for sustaining User Interface Plasticity
Jean-Sébastien Sottet12 Gaëlle Calvary1 Jean-Marie Favre2
1 2
University of Grenoble, CLIPS and LSR Labs
385, Rue de la Bibliothèque, BP53, 38041 Grenoble cedex 9, France
jean-sebastien.sottet@imag.fr gaelle.calvary@imag.fr jean-marie.favre@imag.fr
ABSTRACT mappings that compose a UI (the octopus legs). The idea was
Ubiquitous computing has amplified the need for interactive roughly sketched in [18].
systems to be able to adapt to their context of use () while preserving usability. This property reminder of the octopus vision and a basic case study for
is called plasticity. Until now, efforts have been put on the illustration. Then, it elaborates a general definition and
functional aspect of adaptation, neglecting the usability part of the metamodel of the notion of “mapping” that are not devoted to
definition. This paper investigates MDE mappings for embedding HCI but applicable to the domain as demonstrated on the case
both the description and control of usability. It first provides a study. Finally, the paper opens a discussion on issues and
general definition and metamodel of the notion of “mapping” that perspectives in the areas of advanced UIs and MDE in general.
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 2. TOWARDS OCTOPUSES
that can be described either by a function and/or an execution Taking benefit from the past in HCI, the idea is to describe a UI as
trace. The mappings properties provide the designer with a means a net of models and mappings. The models define different
for both selecting the most appropriate transformation functions perspectives on a same UI: domain concepts, user’s task,
and previewing the resulting design. When applied to HCI, workspaces (Wks) and interactors (I) (Figure 1). For their
mappings are appropriate for both describing and controlling deployment, these models require resources that are supplied
ergonomic criteria either at design time or at runtime. Mappings either by the functional core (FC) and/or the context of use (in
are rubber bands that link together different perspectives of a particular, the platform that provides the end-user with input and
same User Interface (UI). They break when the UI goes outside its output devices). Deployment is modeled as a set of mappings (the
plasticity domain. gray boxes on Figure 1). Models and mappings are compliant to
metamodels.
Categories and Subject Descriptors
D.3.3 [Programming Languages]: Language Contructs and
Features – abstract data types, polymorphism, control structures.
The ACM Computing Classification Scheme:
http://www.acm.org/class/1998/
General Terms
Algorithms, Design, Human Factors, Standardization, Languages,
Theory.
Keywords
Model, Metamodel, Mapping, Model transformation, Advanced
User Interfaces, Plasticity, Usability, Adaptation.
1. INTRODUCTION
In Human-Computer Interaction (HCI), plasticity refers to the
ability of a User Interface (UI) to withstand variations of context
of use () while preserving Figure 1. In our MDE vision, UIs look like octopuses. They are
usability. Until now, efforts have been put on the functional net of models whose mappings define the UI deployment on the
aspect of adaptation. Model Driven Engineering (MDE) has been functional core (FC) and the context of use.
seen as promising [3] [10]. At MDDAUI’05, we presented a MDE
As illustration, let us consider a basic booking system inspired
approach promoting the description of a UI as a net of models and
from Nogier’s book [13]. For making a reservation, the end-user
mappings (called octopus) [17]. In this paper, we go one step
is supposed to first specify the date, then the period of the day
further investigating the usability part of the plasticity definition.
(morning versus evening), and finally the number of seats he/she
We show how usability can be described and controlled along the
would like to book. Figure 2 illustrates a sub-part of the Figure 3 aims at clarifying the situation according to [5]. In
corresponding octopus: the mappings between tasks, concepts and particular, it defines the labels of the columns of Table 1.
interactors. In Figure 2a, dashes have been introduced at the
On Figure 3, “f(x)=x+2” is a transformation model that is
interactor level to make explicit the fact that the task “Specify the
compliant to a mathematical metamodel. A transformation model
date” is mapped on two guiding labels (“Date”, “mm/dd/yy”). In
describes (the µ relation) a transformation function in a predictive
case a, there is no (human) error protection: text fields do not
way: in our example, {(1,3),(2,4),(3,5)…} for “f” when applied to
prevent the end-user from bad entries. In contrast in Figure 2b, the
integers. A transformation function is the set of all the
calendar and the radio buttons decrease the risk of error when
transformation instances inside the variation domain (here, the
specifying the date and the period of the day.
integers). A transformation instance is a subset (the ε relation) of
the transformation function. It is the execution trace of the
function (“f”).
Figure 3 refines the µ relation into µp and µd. These relations
respectively stand for predictive and descriptive representations.
Predictive means that there is no ambiguity: the transformation
model (e.g., “f(x)=x+2”) fully specifies the transformation
function. Descriptive refers to a qualifier (e.g., “growing”). It is
not sufficient for specifying the transformation function, but it is a
means for providing additional information. Figure 3 illustrates
two kinds of descriptive representations: one deals with a
transformation model (“f(x)>x”) whilst the other one deals with
transformation instances (“growing”). In the first case, the
description is made a priori whilst it is made a posteriori in the
second case. A posteriori descriptions are subject to
incompleteness and/or errors due to too few samples.
Figure 2. A basic case study illustrating a sub-part of the
octopus: the mappings between tasks, concepts and
interactors. For legibility, the equivalent dashes for the other
mappings in a) and b) have not been drawn.
p d
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.
3. MAPPING METAMODEL
Our mapping metamodel is centered on the notion of d
transformation. Thus, we first define the notions of mappings and
transformations before presenting the metamodel.
3.1 Mappings and transformations Figure 3. Clarification of the notions of transformation
In the MDA literature (see Table 1), the term “mapping” is far model/function/instance.
from being clear. However, it is clearly coupled with
transformations. Next section provides a metamodel of mappings based on these
clarifications.
3.2 A Mapping Metamodel
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.
Table 1. A confusing literature on “mappings” and
“transformations” terms.
Figure 4. A Mapping MetaModel. Containment relations between Mapping and Metamodels are due to the Eclipse Modeling
Framework needs.
A mapping conveys a set of Properties (e.g., “Error protection”). mappings) associates the same type of interactor (input
A property is described according to a given reference framework fields) to all the user’s actions;
(Referential) (e.g., Bastien&Scapin[1] that define eight criteria
• Error protection is guaranteed in Figure 5b thanks to
among which is the “Error protection”). These properties are
interactors that preserve the user from mistakes
descriptive. They qualify either the global set of mappings or one
(calendar and radio buttons).
specific element: a mapping, a pattern or a link.
In Figure 5, the scope of compatibility (e.g., C1, C2, C3) is one
Associated transformations are in charge of maintaining the
mapping whilst homogeneity-consistency and error protection
consistency of the net of models by propagating modifications
deal with the global net of mappings (C4 on a and b).
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.
Figure 5 applies the mapping metamodel to the case study
according to Bastien&Scapin’s framework. Three criteria are
considered:
• Compatibility to check the extent to with the UI design
is compliant to the user’s task;
• Error protection to measure the extent to which the UI
prevents the end-user from bad actions;
• Homogeneity-Consistency to ensure a global
consistency in the UI (e.g., style).
As pointed out in Figure 5:
• Compatibility is preserved along all the mappings Figure 5. The Mapping Metamodel applied to the case study.
linking together tasks and interactors: the UI fully
supports the user’s task (Figures 5 a and b); For legibility, Figure 5 only mentions the criteria that are
satisfied. For instance, the “Error protection” that is not preserved
• Homogeneity-Consistency is satisfied in Figure 5a as in Figure 5a has not been mentioned. In reality, octopuses should
the transformation function (that is modeled by the
tell the extent to which each criteria is satisfied (positively or [3] Clerckx, T., Luyten, K., Coninx, K. The mapping Problem
negatively). Back and Forth: Customizing Dynamic Models while
This work provides a sound basis for future work. Next section preserving Consistency, 3rd International Workshop on Task
elaborates on perspectives for both HCI and MDE communities. Model and Diagrams for User Interfaces Design, Prague,
Czeck Republic, November 2004, pp 33-42
4. CONCLUSION AND PERSPECTIVES [4] DSTC, IBM, MOF STC Query/View/ Transformation,
In 2000, B. Myers stated that model-based approaches had not Submission by DSTC IBM, ad/2003-02-03, March 2003
found a wide acceptance in HCI. They were traditionally used for
[5] Favre, J.M. Toward a Basic Theory to Model Driven
automatic generation and appeared as disappointing because of a
Engineering, Workshop on Software Model Engineering,
too poor quality of the produced UIs. He envisioned a second life
WISME 2004, joint event with UML 2004, Lisboa, Portugal,
for models in HCI empowered by the need of device
October 11,2004
independence. In our work, we promote the use, the description
and the capitalization of elementary transformations that target a [6] http://zooomm.org
specific issue. [7] Judson, S.R, France, R.B., Carver, D.L. Specifying Model
A UI is described as a net of models and mappings both at design Transformation at on the Metamodel Level, Wisme 2003
time and runtime. At design time, mappings convey properties [8] Kleppe, A., Warmer, Bast, W. MDA Explained. The Model
that help the designer in selecting the most appropriate Driven Architecture: Practice and Promise, Addison-
transformation functions (or set of transformation functions). Wesley, April 2003
Either the target element of the mapping is generated according to [9] Kurtev, I., Van den Berg, K. A Synthesis-Based Approach to
the transformation function that has been selected, or the link is Transformations s in an MDA Software Development
made by the designer who then describes the mapping using a Process, In Proc. of Model Driven Architecture: Foundations
transformation model. We envision adviser tools for making the and Applications, pp. 121-126, University of Twente,
designer aware of the properties he/she is satisfying or neglecting. Enschede, The Netherlands 2003
At runtime, mappings are the key for reasoning on usability. [10] Limbourg, Q., Vanderdonckt, J. Adressing the mapping
However, it is not easy as (1) there is not a unique consensual problem in User Interfaces Design, 3rd International
reference framework; (2) ergonomic criteria may be inconsistent Workshop on Task Model and Diagrams for User Interfaces
and, as a result, require difficult trade-offs. Thus, (1) the Design, Prague, Czeck Republic, November 2004, pp 155-
metamodel will have to be refined according to these frameworks; 163
(2) a meta-UI (i.e., the UI of the adaptation process) may be
relevant for negotiating trade-offs with the end-user. [11] Mellor, S.J., Scott, K., Uhl, A., Weise, l.D MDA Distilled:
Principles of Model-Driven Architecture, Addison-Wesley,
Beyond HCI, this work provides a general contribution to MDE. March 2004
It defines a mapping metamodel and clarifies the notions of [12] Myers, B., Hudson, S.E., Pausch, R. Past, Present, and
mappings and transformations. Mappings are more than a simple Future of User Interface Software Tools, Transactions on
traceability link. They can be either predictive (transformation Computer-Human Interaction (TOCHI), Vol 7, Issue 1,2000
specifications) or descriptive (supported properties), as a result
covering both the automatic generation and the hand-made [13] Nogier, J.F. De l'ergonomie du logiciel au design des sites
linking. Moreover mapping models can embed transformation in Web, Third edition, Dunod 2005
order to manage models consistency. This is new in MDE as most [14] OMG, MDA Guide Version 1.0.1, omg/2003- 06-01, June
of the approaches currently focus on direct transformation. Our 2003
mapping metamodel will be stored in the international Zoo of
[15] Peltier, M. Techniques transformations de modèles basées
metamodels: the ZOOOMM project [6].
sur la méta-modélisation, PhD, University of Nantes,
October 2003
5. ACKNOWLEDGMENTS [16] QVT- Partners Revised Submission for MOF 2.0 Query /
The work has been supported by the European project EMODE. Views / Transformation RFP, http://qvtp.org, August 2003
Authors would like to thank Joëlle Coutaz and Alexandre
Demeure for their strong contribution. Metamodels are edited [17] Sottet, J.S., Calvary, G., Favre, J.M., Coutaz, J., Demeure,
under Topcased plugin for eclipse: http://www.topcased.org. A., Balme, L. Towards Model-Driven Engineering of Plastic
User Interfaces, in Conference on Model Driven Engineering
Languages and Systems (MoDELS’05) satellite proceedings,
6. REFERENCES Springer LNCS, pp 191-2005
[1] Bastien J.M.C, Scapin D. Ergonomic Criteria for the
Evaluation of Human-Computer Interfaces, Technical report [18] Sottet, J.S., Calvary, G., Favre, J.M., Coutaz, J., Demeure, A.
INRIA, N°156, June 1993 Towards Mappings and Models Transformations for
Consistency of Plastic User Interfaces The Many Faces of
[2] Caplat, G., Sourrouille, J.L, Considerations about Model Consistency. Proc. (CHI2006), Montréal, Québec, Canada,
Mapping, Wisme 2003 April 22-23, 2006,