<!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>A Notation and a Layered Architecture to Model Dynamic Instantiation of Input Devices and Interaction Techniques: Application to Multi-Touch Interactions</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Arnaud Hamon</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Eric Barboni</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Philippe Palanque</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Raphaël André</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>AIRBUS Operations 118, route de Narbonne</institution>
          ,
          <addr-line>316 route de Bayonne 31062 Toulouse Cedex 9, France 31060 Toulouse cedex 9</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>ICS-IRIT, University Toulouse 3</institution>
        </aff>
      </contrib-group>
      <fpage>15</fpage>
      <lpage>21</lpage>
      <abstract>
        <p>Representing the behavior of multi-touch interactive systems in a complete, concise and non-ambiguous way is still a challenge for formal description techniques. Indeed, multi-touch interactive systems embed specific constraints that are either cumbersome or impossible to capture with classical formal description techniques. This is due to both the idiosyncratic nature of multi-touch technology (e.g. the fact that each finger represents an input device and that gestures are directly performed on the surface without an additional instrument) and the high dynamicity of interactions usually encountered in this kind of systems. This paper presents a formal description technique able to model multi-touch interactive systems. A layered architecture is also proposed that proposes a generic structure for organizing models of multi-touch systems. We focus the presentation on how to represent the dynamic instantiation of input devices (i.e. finger) and how they can then be exploited dynamically to offer a multiplicity of interaction techniques which are also dynamically instantiated.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>ACM Classification Keywords
D.2.2 [Software] Design Tools and Techniques -
Computeraided software engineering (CASE), H.5.2 [Information
Interfaces]: User Interfaces - Interaction styles.</p>
      <p>
        INTRODUCTION
Over the last decade the field of interactive systems
engineering had to face multiple challenges at a pace never
EGMI 2014, 1st International Workshop on Engineering
Gestures for Multimodal Interfaces, June 17 2014, Rome,
Italy. Copyright 2014 for the individual papers by the
papers' authors. Copying permitted only for private and
academic purposes. This volume is published and
copyrighted by its editors.
http://ceur-ws.org/Vol-1190/.
encountered before. Indeed, while new interaction
techniques have been proposed on a regular basis by the
research community (e.g. multimodal gesture+voice
interactions by R. Bolt in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], post-WIMP interactions such
as [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] …) recent years have seen the adoption and
deployment of such interaction techniques in many
different types of systems. Together with this evolution of
interaction techniques, the appearance and adoption of new
input devices is also a significant change with respect to the
past. Indeed, mass market computers remained for nearly
20 years equipped with standard mouse and keyboard while
nowadays, one interacts with more sophisticated input
devices such as multi-touch surfaces, Kinect, Wiimote, …
However, these new input devices and their associated
interaction techniques have significantly increased the the
development complexity of interactive systems. For
instance, multimodal interaction techniques are now
common both as input and output modalities. One of the
most challenging examples is the one of multi-touch
systems1. Indeed, even though some studies [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] show that
they improve the bandwidth between the users and the
system, they bring specific challenges such as handling
dynamic management of input devices (the fingers) and
their associated interaction techniques (including fusion and
fission of input (e.g. input fusion for a pinch) as well as
fusion and fission of rendering (e.g. output fusion for
fingers clustering)).
      </p>
      <p>This paper first presents a formal description technique able
to describe in a complete and unambiguous way the
behavior of multi-touch systems. As it consists in
extensions of previous work, we make explicit the changes
that have been made to the ICO notation. We present the
basic constructs of the extensions and how they can be
applied on a simple example making particularly explicit
how dynamic management of both input devices and
interaction techniques are accounted for. This paper
addresses more specifically multi-touch input devices and
interaction techniques but the concepts are applicable to any
interactive system where input devices are connected and
1 We use in this paper multi-touch systems as a shortcut for
interactive systems offering multi-touch interactions
disconnected at runtime and requiring reconfiguration of
interaction techniques. Secondly, the paper presents a
layered architecture that structures models of multi-touch
systems.</p>
      <p>
        MODELLING CHALLENGES DUE TO DYNAMIC
ASPECTS OF MULTITOUCH SYSTEMS
In classical interactive systems, the set of input and output
devices are identified at design time and the interaction
techniques to be used for interacting with the application
are based on this predefined set and also defined
beforehand [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Multi-touch systems challenge this by
requiring the capacity for handling input devices (i.e.
fingers) that may appear and disappear dynamically while
the interaction takes place.
      </p>
      <p>In such context, when the interactive system is started input
devices are not present and thus not identified. Users’
fingers are considered as input devices and are only
detected as they touch (or get close enough to) the tactile
surface. The input devices (fingers) detected at execution
time need to be dynamically instantiated in order to be
registered and listened to. While this can be easily managed
using programming languages, such aspect is usually not
addressed by modelling techniques in the literature. While
model-based approaches provide well identified benefits
such as abstract description, possible reasoning about
models, complete and unambiguous descriptions, in order
to deal with multi-touch systems they have to address the
following challenges:</p>
      <p>
        Describe the dynamic management of input devices.
This includes the description (inside models) of
dynamic creation (instantiation) of input devices and
the description of how many of them are present at any
time. This management also requires the removal of the
devices from the models when they are freed;
Make explicit in the models the connection between
the hardware (input devices) and their software
counterpart (i.e. device drivers and transducers as
introduced in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and formalized in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]);
Describe the set of states, the events produced and the
event consumed by the device drivers and the
transducers;
Describe the interaction techniques that have to handle
references to dynamically instantiated models related
to the input devices (drivers and transducers);
Describe how interaction techniques behavior evolves
according to the addition and removal of input devices.
Such capability is extremely demanding on the
specification techniques requiring dynamic
management of interaction techniques as demonstrated
in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>Described fusion and fission of input and output within
the interaction technique. Indeed, the use of multiple
input devices (fingers) makes it possible for interaction
designers to define very sophisticated interaction
techniques making use of several fingers grouped
together for instance. Such grouping requires fusions of
events from the groups of fingers but also the fusion of
output information to provide feedback to the users
about the current state of recognition of the interaction.
For example, interaction techniques featuring a group
of two fingers will require modifying the initial
rendering of each finger’s graphical feedback as in
Figure 1-b). Figure 1-a) presents a graphical feedback
of three fingers on a multi-touch application.</p>
      <p>
        These challenges go beyond the ones brought by
multimodal interactions identified in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
Figure 1- a) 3 input device detected; b) output of the clustering
of two input devices (merged disks bottom left)
THE EXTENDED ICO NOTATION
Based on the study of the related work and the dimensions
described in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], only the ICO notation allows the explicit
modelling of all the multi-touch characteristics. However,
extensive modelling of multi-touch systems has
demonstrated the need for modifying the ICO notation in
order to provide primitives for handling specificities of
multi-touch systems. It is important to note that these
primitives do not constitute extensions to the expressive
power of ICOs but bring the formal description technique
closer to what is needed to model multi-touch systems. This
is why the proposed extensions contribute beyond ICOs as
such extensions could be added to other notations, provided
their expressive power is sufficient for modeling
multitouch systems.
      </p>
      <p>
        Introduction
The ICO notation (Interactive Cooperative Objects) is a
formal description technique devoted to specify interactive
systems. Using high-level Petri nets [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] for dynamic
behavior description, the notation also relies on
objectoriented approach (dynamic instantiation, classification,
encapsulation, inheritance and client/server relationships) to
describe the structural or static aspects of systems.
The ICO notation is based on a behavioral description of
the interactive system using the Cooperative objects
formalism that describes how the object reacts to external
stimuli according to its inner state. This behavior, called the
Object Control Structure (ObCS) is described by means of
Object Petri Net (OPN). An ObCS can have multiple places
and transitions that are linked with arcs as with standard
Petri nets. As an extension to these standard arcs, ICO
allows using test arcs and inhibitor arcs. Each place has an
initial marking (represented by one or several tokens in the
place) describing the initial state of the system. As the
paper mainly focuses on behavioral aspects, we do not
describe them further (more can be found in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
ICO notation objects are composed of four components: a
cooperative object for the behavior description, a
presentation part (i.e. Graphical Interface), and two
functions (activation and rendering) describing the links
between the cooperative object and the presentation part.
ICOs have been used for various types of multi-modal
interfaces [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] and in particular for multi-touch [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. This
notation is also currently applied for formal specification in
the fields of Air Traffic Control interactive applications
[
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], space command and control ground systems [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], or
interactive military [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] or civil cockpits [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
    </sec>
    <sec id="sec-2">
      <title>Block</title>
      <p>1: Name
block</p>
      <p>2 :
Precondition
block</p>
    </sec>
    <sec id="sec-3">
      <title>Field Name</title>
      <p>name
precondition</p>
      <p>Field Description
unique name, not
necessary linked to the</p>
      <p>eventName
boolean expression
independent of the
event but depending on
3 : Event</p>
      <p>block
4 : Action
block
eventName
eventSource
eventParameters
eventCondition
action</p>
      <p>marking
name of the event the
transition is linked to
the source of the event</p>
      <p>received
The collection of the
parameters of the</p>
      <p>received event
boolean expression</p>
      <p>based on the
eventParameters’
values used for the</p>
      <p>firing
Informal description of dynamic instantiation
ICOs, due to their Petri nets underpinning, are particularly
efficient to create and destroy elements when they are
represented as tokens. As ICOs’ tokens refer to objects or
other ICOs, it is possible to use such high-level tokens to
represent input devices such as fingers on a touchscreen.
Such tokens refer to other ICO models describing the
detailed behavior of the input device. For instance, Figure 4
presents the behavior of a finger both in terms of states
(values for position, pressure, ...) and events (e.g. update
corresponding to move events).</p>
      <p>The ICO model in Figure 3 describes how new input
devices are instantiated and stored in a manager. The
topleft transition in Figure 3 illustrates how new input devices
can be added to an ICO model with the creation of a model
of finger type (instruction finger=create Finger(touchinfo)).
The newly created reference is then stored in a waiting
place (called ToAddFinger) in order to be connected to an
interaction technique in charge of handling the events that
will be produced by the new device.</p>
      <p>
        Handling events from dynamically instantiated sources
An ICO model may act as an event handler for events
emitted by other models or java instances. The detailed
description of these mechanisms is available in [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. In
addition, the different transition blocks of Figure 3 (top-left
transition) are presented in Table 1.
      </p>
      <p>
        Formal description
Due to space constraints, the formal definition of the
extensions is not given here but its denotational semantics
is given in terms of “standard” ICOs as defined in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
A LAYERED APPLICATION TO SUPPORT DYNAMIC
HANDLING OF INPUT DEVICES
This section proposes a layered architecture (see Figure 2)
making explicit the various models needed to describe
multi-touch systems as well as the way they communicate.
This architecture allows handling the dynamicity aspects of
input devices and interaction techniques. The proposed
architecture features “good” properties of software systems
mentioned in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] (flexibility, separation of concerns,
extensibility and hardware independence). Our proposed
architecture is similar to the layered based architecture
described in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] but explicitly describes the dynamic aspects
related to multi-touch such as dynamic instantiation.
Figure 2 presents this architecture starting (bottom) making
explicit the flow of events from the hardware (lower level)
to the multi-touch interactive application (higher level). The
architecture relies on existing coded layers and ICO models
and is OS independent. The hardware layer describes the
hardware equipment providing tactile input. In our case,
this layer relates to the touchscreens considered. The
hardware driver layer refers to the drivers used by the
operating system and produces low-level events (such as
“downs” with their basic attributes (posX, posY, …)) that
propagate the upper levels. On top of this layer, the JavaFX
layer provides object oriented events through an OS
independent layer.
      </p>
      <p>
        The low-level transducer (bigger box in Figure 2) is in
charge of producing high-level events corresponding to the
interaction techniques recognized by the system. This layer
is modelled using ICO and manages the dynamicity of the
input devices. The detailed description of this layer and its
components is described in the followings sections.
Figure 2 - Layered architecture to support dynamic handling
of input devices
DEMONSTRATING HANDLING OF INPUT DEVICES: A
SIMPLE EXAMPLE USING ICOS
This paragraph describes the ICO models used for the
example presented Figure 1-b, which handles dynamically
referenced input devices and corresponds to the main
components of the architecture presented Figure 2.
Low-level transducer description
The model presented in Figure 3 is called a transducer as it
is located (in terms of software architecture) in between the
hardware devices and the interaction techniques as
illustrated in Figure 2. There could be a chain of such
models handling events from the lower level (raw events or
data from the hardware input devices) to high-level events
as a double click (see [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] for more details on transducers).
The low-level transducer encapsulates the references
towards the upper-level models of the handling mechanism
such as FingerModels and the interaction technique
ClusteringModel. The role of this low-level transducer is to
forward events received from the hardware to low-level
events in FingerModels (which model the fingers’
behavior).
During the initialization, the low-level transducer
instantiates the ClusteringModel through the
createClustering transition and stores its reference in the
ClusteringModel place. When the low-level transducer
receives a “rawToucheventf_down” event from the
hardware, the fingerInstantiation transition is fired, the
event parameters (the touch iD, and its additional
information) are retrieved and used to dynamically
instantiate a new instance of FingerModel. The
addFingerToClustering transition then adds the
FingerModel reference to the cluster model. This is how the
interaction technique is informed of the detection of new
fingers. The low-level transducer then stores the reference
of the FingerModel in the FingerPool place (which contains
the list of all the detected fingers). When the transducer
receives “rawToucheventf_update” (resp.
“rawToucheventf_up”) events from the hardware, the
transition updatingFinger (resp. freeFinger) is then
triggered and updates accordingly the proper FingerModel.
These updates are provided using the communication
mechanism of ICO services and not using events since the
low-level transducer contains references toward the
FingerModels and is able to match the hardware events
with the right model.
described offering various properties such as finger tilt
angle, acceleration and direction of the movements.
Lastly, this finger model is an extensible model that can
describe very complex behaviors. For example, if one needs
to describe the behavior of a finger input as in Proton++
[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], this can be done in a finger model as the one
presented. Indeed this model specifies when the touch
Modelling touch fingers
Each time the low-level transducer receives an event
corresponding to the detection of a finger on the hardware,
it creates the model and links it with the interaction
technique model(s). When the event received corresponds
to an update of an already detected finger, the low-level
transducer notifies the corresponding finger model using
the services “update”. When the finger is removed from the
hardware, the low-level transducer fires the transition
freeFinger, which destroys the corresponding FingerModel.
For readability purposes, the model presented in Figure 4
features a limited set of fingers properties: position and
pressure. However, more complex finger models have been
events are broadcasted and that such broadcasting can be
controlled in order to match a sequential system sending
user events every 30ms as in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
      </p>
      <p>Modelling the interaction technique “finger clustering”
This paragraph describes how the ICO notation handles
interaction techniques including output fusion of
information related to the reception of events produced by
dynamically instantiated input devices (see Figure 5). In
this example, the interaction technique model is in charge
of pairing co-located input devices so they can be handled
as a group of fingers. This corresponds to the interaction
presented in Figure 1 where the right-hand side of the figure
presents the rendering associated to the detection of a pair
of fingers (bottom-left of the figure) while the other finger
remains ungrouped. The model presented in Figure 5 is
composed of a service (addFinger), two places (ListOfPairs
storing the pairs of fingers and SingleFingersList storing the
“single” fingers) and event-transitions to update the
clustering according to the evolution of the position of
fingers on the touchscreen. Each time a finger model is
created (a new finger touches the screen), the low level
transducer calls the “addFinger” service and a reference to a
new finger model is set in place SingleFinger. When a
finger from SingleFingerList (called finger1 for instance)
moves close enough to another finger (e.g. finger2) in that
place too, two cases are represented:
•
•
•
finger2 is close enough of finger1 (condition in the
event condition zone of transition cluster2Fingers is
true) then transition cluster2Fingers is fired, finger1
and finger2 are removed from place SingleFingerList
and a new token consisting of the pair (finger1,
finger2) and their respective position is stored in place
ListOfFingerPairs.
finger2 is too far from finger1 (condition in the event
condition zone of transition noClusterDetected is true)
then that transition is fired and the new position of
finger is updated.</p>
      <p>When a pair is detected, the user interface should
display graphically such dynamic grouping. This is
defined by the rendering function associated to the
interaction technique and presented in Table 2. When
two fingers are merged, the token referencing these two
models are removed from SingleFingerList place
which triggers the method hideFingerRendering for
each model. This method hides the elementary
rendering associated to each finger. When a pair is
detected, both references are combined in a token
added to the place LisfOfFingerPairs which calls the
method createPairedFingerRendering, which displays
the rendering associated to the two-finger cluster.It is
important to note that output is thus connected to state
changes in the models (which only occur when tokens
are added to or removed from places) while inputs are
event based and thus associated to transitions.</p>
    </sec>
    <sec id="sec-4">
      <title>ObCS Node name</title>
    </sec>
    <sec id="sec-5">
      <title>ObCS</title>
      <p>event</p>
    </sec>
    <sec id="sec-6">
      <title>Rendering method</title>
      <p>SingleFingerList
tokenAdded
showFingerRendering
SingleFingerList
tokenRemoved
hideFingerRendering
ListOfFingerPairs
tokenAdded
createPairedFingerRendering
ListOfFingerPairs
tokenRemoved
removePairedFingerRendering</p>
      <p>Table 2 -Rendering functions of the interaction technique
CONCLUSION
This paper has identified a set of challenges towards the
production of complete and unambiguous specifications of
multi-touch systems. The main issues deal with the
dynamic instantiation of input devices and the dynamic
reconfiguration of interaction techniques. We have
highlighted the fact that such concerns have not previously
encountered (at least at this large scale) when engineering
interactive systems. This paper has presented a twofold way
for addressing these issues:
•
•</p>
      <p>A layered software architecture made up of
communicating models, which makes explicit a set of
components and their inter-relations in order to address
this dynamicity challenge;
A formal description technique able to describe in a
complete and unambiguous way such dynamic
behaviors.</p>
      <p>While the formal notation contribution is very specific to
the work presented here, the layered architecture is
independent from it and can be reused within any
framework dealing with multi-touch interactions.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Accot</surname>
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chatty</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maury</surname>
            <given-names>S.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Palanque P. Formal</surname>
          </string-name>
          <article-title>Transducers: Models of Devices and Building Bricks for Highly Interactive Systems</article-title>
          .
          <source>DSVIS 1997</source>
          , Springer Verlag, pp.
          <fpage>234</fpage>
          -
          <lpage>259</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Bastide</surname>
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Navarre</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schyn</surname>
            <given-names>A.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Dragicevic P. A</surname>
          </string-name>
          <article-title>Model-Based Approach for Real-Time Embedded Multimodal Systems in Military Aircrafts</article-title>
          .
          <source>Int. Conference on Multimodal Interfaces (ICMI'04)</source>
          , ACM DL,
          <volume>10</volume>
          pages.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Bellik</surname>
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rebaï</surname>
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Machrouh</surname>
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barzaj</surname>
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jacquet</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pruvost</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sansonnet</surname>
            <given-names>J.-P.</given-names>
          </string-name>
          :
          <article-title>Multimodal Interaction within Ambient Environments: An Exploratory Study</article-title>
          .
          <source>INTERACT (2)</source>
          <year>2009</year>
          :
          <fpage>89</fpage>
          -
          <lpage>92</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Bi</surname>
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grossman</surname>
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Matejka</surname>
            <given-names>J.</given-names>
          </string-name>
          , and Fitzmaurice G.:
          <year>2011</year>
          .
          <article-title>Magic desk: bringing multi-touch surfaces into desktop work</article-title>
          .
          <source>In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '11)</source>
          . ACM, New York, NY, USA,
          <fpage>2511</fpage>
          -
          <lpage>2520</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Bolt</surname>
            ,
            <given-names>R</given-names>
          </string-name>
          and Herranz,
          <string-name>
            <surname>E.</surname>
          </string-name>
          (
          <year>1992</year>
          ).
          <article-title>“Two-Handed Gesture in Multi-Modal Natural Dialog”, Proceedings of the fifth annual ACM symposium on User interface software and technology</article-title>
          , ACM Press, p
          <fpage>7</fpage>
          -
          <lpage>14</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Buxton</surname>
            <given-names>W.</given-names>
          </string-name>
          <article-title>A three-state model of graphical input</article-title>
          ,
          <source>IFIP TC 13 INTERACT'90</source>
          ,
          <year>1990</year>
          , p.
          <fpage>449</fpage>
          -
          <lpage>456</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Echtler</surname>
            <given-names>F.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Klinker</surname>
            <given-names>G..</given-names>
          </string-name>
          <year>2008</year>
          .
          <article-title>A multitouch software architecture</article-title>
          .
          <source>In Proceedings of the 5th Nordic conference on Human-computer interaction: building bridges (NordiCHI '08)</source>
          . ACM, New York, NY, USA,
          <fpage>463</fpage>
          -
          <lpage>466</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Genrich</surname>
            ,
            <given-names>H. J.</given-names>
          </string-name>
          <year>1991</year>
          .
          <article-title>Predicate/Transitions Nets. In High-Levels Petri Nets: Theory and</article-title>
          <string-name>
            <given-names>Application. K.</given-names>
            <surname>Jensen</surname>
          </string-name>
          and G. Rozenberg, (Eds.), Springer Verlag (
          <year>1991</year>
          ) pp.
          <fpage>3</fpage>
          -
          <lpage>43</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Hamon</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Silva</surname>
            <given-names>J-L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Deleris</surname>
            <given-names>Y.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Barboni</surname>
            <given-names>E.</given-names>
          </string-name>
          <year>2013</year>
          .
          <article-title>Formal description of multi-touch interactions.5th symp. on Engineering interactive computing systems (EICS '13)</article-title>
          . ACM,
          <volume>207</volume>
          -
          <fpage>216</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Kenrick</surname>
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Björn</surname>
            <given-names>H.</given-names>
          </string-name>
          , DeRose T. &amp;
          <string-name>
            <surname>Maneesh</surname>
            <given-names>A.</given-names>
          </string-name>
          <year>2012</year>
          .
          <article-title>Proton++: a customizable declarative multitouch framework</article-title>
          .
          <source>Proc. of ACM symposium on User interface software and technology (UIST '12)</source>
          . ACM,
          <volume>477</volume>
          -
          <fpage>486</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Ladry</surname>
            <given-names>J-F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Navarre</surname>
            <given-names>D.</given-names>
          </string-name>
          , Palanque P.
          <article-title>Formal description techniques to support the design, construction and evaluation of fusion engines for sure (safe, usable, reliable and evolvable) multimodal interfaces</article-title>
          .
          <source>ICMI</source>
          <year>2009</year>
          :
          <fpage>185</fpage>
          -
          <lpage>192</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Lalanne</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nigay</surname>
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Robinson</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vanderdonckt</surname>
            <given-names>J.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Ladry J-F</surname>
          </string-name>
          .
          <article-title>Fusion engines for multimodal input: a survey</article-title>
          .
          <source>ACM ICMI</source>
          <year>2009</year>
          :
          <fpage>153</fpage>
          -
          <lpage>160</lpage>
          , ACM DL
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Spano L-D.</surname>
          </string-name>
          ,
          <string-name>
            <surname>Cisternino</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paternò</surname>
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fenu</surname>
            <given-names>G.</given-names>
          </string-name>
          <article-title>GestIT: a declarative and compositional framework for multiplatform gesture definition</article-title>
          .
          <source>EICS</source>
          <year>2013</year>
          :
          <fpage>187</fpage>
          -
          <lpage>196</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Navarre</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ladry</surname>
            <given-names>J-F.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Barboni</surname>
            <given-names>E.</given-names>
          </string-name>
          <article-title>ICOs: A model-based user interface description technique dedicated to interactive systems addressing usability, reliability and scalability</article-title>
          .
          <source>ACM Trans. Comput</source>
          .-Hum. Interact.,
          <volume>16</volume>
          (
          <issue>4</issue>
          ),
          <volume>18</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>18</lpage>
          :
          <fpage>56</fpage>
          . 2009
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bernhaupt</surname>
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Navarre</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ould</surname>
            <given-names>M.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Winckler M. Supporting</surname>
          </string-name>
          <article-title>Usability Evaluation of Multimodal Man-Machine Interfaces for Space Ground Segment Applications Using Petri net Based Formal Specification</article-title>
          .
          <source>Ninth Int. Conference on Space Operations</source>
          , Italy, June 18-22,
          <year>2006</year>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Schyn</surname>
            <given-names>A.</given-names>
          </string-name>
          <article-title>A Model-Based Approach for Engineering Multimodal Interactive Systems in INTERACT 2003, IFIP TC 13 conf</article-title>
          .
          <source>on HCI</source>
          ,
          <volume>10</volume>
          pages.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Khandkar</surname>
            <given-names>S.H.</given-names>
          </string-name>
          &amp;
          <article-title>Maurer F. A domain specific language to define gestures for multi-touch applications</article-title>
          .
          <source>In Proceedings of the 10th Workshop on Domain-Specific Modeling (DSM '10)</source>
          . ACM, New York, NY, USA, ,
          <issue>Article 2</issue>
          , 6 pages.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>