<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">A global process for using model-driven approaches in user interface design</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Sybille</forename><surname>Caffiau</surname></persName>
							<email>caffiaus@ensma.fr</email>
							<affiliation key="aff0">
								<orgName type="institution">LISI / ENSMA Site du Futurosope</orgName>
								<address>
									<addrLine>Téléport 2</addrLine>
									<postCode>86961</postCode>
									<settlement>Futuroscop Chasseneuil Cédex</settlement>
									<country key="FR">France</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Patrick</forename><surname>Girard</surname></persName>
							<email>girard@ensma.fr</email>
							<affiliation key="aff0">
								<orgName type="institution">LISI / ENSMA Site du Futurosope</orgName>
								<address>
									<addrLine>Téléport 2</addrLine>
									<postCode>86961</postCode>
									<settlement>Futuroscop Chasseneuil Cédex</settlement>
									<country key="FR">France</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">A global process for using model-driven approaches in user interface design</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">86A5F5F9DD554F0B85EDA28C14695524</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T00:36+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>Task Model</term>
					<term>Dialogue Model</term>
					<term>Metamodel</term>
					<term>Design Method</term>
					<term>Model-Driven Approach H5.2 [Information Interfaces and Presentation]: User Interfaces</term>
					<term>User-centered design; H.1.2 [Models and Principles]: User/Machine Systems</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>In user interface design, model-driven approaches usually use a generative solution, which has obvious limitations, especially for advanced user interfaces. Based on strong associations between task models and dialogue models, we propose a global process, which facilitates the design of interactive applications conform to their models, with the including of a rule-checking step. This process permits either to start from a task model or a user-defined prototype. In any case, it allows an iterative development, in line with user-centered design standards.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>INTRODUCTION</head><p>Model-driven approaches have been promoted for years. Despite their great interest, they remain hard to use in the context of user-centered design, especially when novel interaction techniques are expected. Thus, several research works <ref type="bibr" target="#b0">[1]</ref><ref type="bibr" target="#b1">[2]</ref><ref type="bibr" target="#b2">[3]</ref> used a generative approach to build user interfaces -mainly skeletons to be completed -from task models. Following the analysis we made in <ref type="bibr" target="#b3">[4]</ref>, we can argue that this approach has several limitations:</p><p>• Generating requires the addition of information in order to reach an operative stage of interfaces. This information can be added to high-level models, which then loose their original goal; so doing they become hard to understand and to use, because of their multiple semantics (for example, adding presentation information to task models results in adding new semantics to this model). The other way is to insert this information during the generating process. This second approach is for example used in TERESA <ref type="bibr" target="#b4">[5]</ref> by the way of heuristics, which are applied during the process. This however results in a lack of understanding of such transformations by users.</p><p>• All considered research issues are concerned with classical WIMP 1 applications. The hierarchical structure of task models is used to build the interface navigation scheme. We demonstrated in <ref type="bibr" target="#b3">[4]</ref> that introducing non menu-based interactions implies a nonautomatic transformation of the dialogue. • Generating is not easy to include in iterative design cycles such as HCI-adapted cycles. When changes are required, it is necessary to modify the high-level models, and to generate again a new skeleton, to be improved again by hand-made add-ons. Some results have been obtained around the definition of "round-trip engineering" <ref type="bibr" target="#b5">[6,</ref><ref type="bibr" target="#b6">7]</ref>, but were not applied to HCI. More, this approach prevents the designers from starting from the prototype, which method is often used in post-WIMP design.</p><p>Our aim is to introduce a new way to use models in user interface design. Leaning on meta-models of one task model and one dialogue model, we wrote equivalence rules between such models. Then, we defined a new development cycle that can be used in a user-centered iterative approach.</p><p>In this paper, the context of the used models is first described. Then, an example of the meta-models is given, and equivalence rules are presented. In the third part, the proposed way to use these models in a development cycle is outlined.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>CONTEXT OF THE STUDY: THE MODELS</head><p>The starting point of our work is the analysis from <ref type="bibr" target="#b3">[4]</ref>.</p><p>Whilst the generation appears to be too limitative, links between task models and user interfaces seem obvious. So, we decided to explore the possibility to establish strong links between task model and other models, and to consider exploiting said links in software design methods. For some reasons, which are external to our subject here, we chose the K-MAD model <ref type="bibr" target="#b7">[8]</ref> as our task model.</p><p>In our laboratory, we have been working for some time on dialogue models and formal approaches in HCI. We introduced a software architecture model, H 4 , which was first dedicated to computer-aided systems. Coupled with that architectural model, we proposed a dialogue model, the hierarchical interactors <ref type="bibr" target="#b8">[9]</ref>, and developed tools to apply it <ref type="bibr" target="#b9">[10]</ref>. Because of its hierarchical structure, the Hierarchical Interactor (HI) model appeared as the most suitable for our purpose. A previous study demonstrated the capacity to exploit these two models (K-MAD and HI) in HCI design <ref type="bibr" target="#b10">[11]</ref>.</p><p>Then, we defined the meta-model of these two models, which is published in <ref type="bibr" target="#b11">[12]</ref>. We chose to use the EXPRESS language, an alternative to the OMG approach for meta-modeling. EXPRESS is a standard data modeling language for product data. It is formalized in the ISO Standard for the Exchange of Product model STEP (ISO 10303), and standardized as ISO 10303-11 2 . It is supported by complete verification tools, and allows a full expression of constraints <ref type="bibr" target="#b12">[13]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>PRINCIPLES</head><p>In this section, we give a short description of the K-MAD and HI models, and provide some examples of the meta-models.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>The K-MAD model</head><p>The K-MAD model is a hierarchical model where tasks are decomposed in sub-tasks, with temporal operators describing the dynamics of the model. The description can be enhanced by the definition of objects and expressions (preconditions, post-conditions, and actions) to control the model dynamics more precisely. The semantics of these different elements is defined in details.</p><p>Figure <ref type="figure" target="#fig_0">1</ref> illustrates a sample of the EXPRESS definition of the central element of the model, the task.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>The Hierarchical Interactor (HI) model</head><p>The HI model consists in a state machine model where the dialogue of the application is split into independent automata. Transitions are activated by tokens that represent user inputs or automaton productions.</p><p>The hierarchical organization of the model allows the automata to produce and consume tokens. The main advantages of this system are two-fold:</p><p>• Automata are independent from each other. They can be removed or added independently, without any change to others. • Tokens are the key elements of the model. As they can refer to both user entries and automaton productions, they break the binding between user inputs and 2 http://www.tc184-sc4.org/ transitions. This allows to consider the dialogue at the level of abstract level one wants. This is particularly important when post-WIMP interaction techniques are used. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Associations between models</head><p>The general philosophy of our approach is to take advantage of the hierarchical nature of the two models to establish strong associations between them.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>The task/transition association</head><p>The first obvious association can be made between tasks from the task model and transitions from the dialogue model. This link has been largely used in the previous research works, but for us, the link is not a bijective link: because of the need for interaction facilities in applications, there can be more transitions than user tasks.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>The compound-task/automaton association</head><p>The structure of the dialogue model encourages considering each task decomposition as equivalent to a specific automaton. The structure of the automaton must then be compatible with the dynamics described through the temporal operator of the compound task. Again, the dialogue may be richer than the simple translation of the temporal operator. Another consequence of this association is the equivalence between tokens and compound tasks: each compound task may be achieved by the way of an automaton that produces a token that stands for the task achievement.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Figure 2: EXPRESS definition of the Transition entity</head><p>The object/variable and expression associations</p><p>Both task model and dialogue model use expressions, which manipulate objects/variables. This link is patent, but was not described in the previous works because the used task model did not formally consider objects and expressions.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Rules between models</head><p>Two kinds of rules can be established between the models <ref type="bibr" target="#b11">[12]</ref>, based on the previously defined associations.</p><p>The first kind of rules concerns the existence of logically associated entities in both models. For example, are there one token and one automaton for each compound task? Or is there one transition in the dialogue model for each task in the task model?</p><p>The second kind of rules relates to the semantics of the models. Are the semantics of the expressions we can find in each model equivalent? Is the navigation, which is allowed by the automata, consistent with the temporal decomposition of the tasks?</p><p>These rules can be exploited in two ways. They can be used in initial design to generate a skeleton of the dialogue, or they can be used in verification to state that two models are compatible. In that way, our work might be compared to <ref type="bibr" target="#b13">[14]</ref>. We describe in the next section the different usages of this duality.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>THE GLOBAL PROCESS</head><p>In this section, we describe the global process we propose to utilize the modeldriven approach we describe above.</p><p>As previously claimed in the introduction, generating dialogue model from task models suffers from drawbacks; the most important of them is related to the iterative nature of usercentered approaches. When changes must be made in response to new or enhanced user needs, the generating process must be run again, and all handmade changes in the interface are lost. We argue that, if a generation phase occurs, it must be restricted to a starting point; then, the process must be able to achieve without any further generation.</p><p>The scenario schema we propose is as follows.</p><p>Assuming we are able to design, edit and verify each of both task and dialogue model. Each of these phases will be called "X-editing phase" thereafter. These phases may be realized independently from each other. Our model-driven approach consists in including these phases in a dynamic design process.</p><p>Optionally, one can start by a "task-editing phase", from which a starting skeleton for the dialogue model can be derived (e.g. generated, but only once). Either kinds of rules, existence rules and semantic rules, can be used to produce this skeleton. Then, the next phase consists in filling in the skeleton, in a "dialogue-editing phase". Adding specific dialogue elements, the dialogue model can be completed.</p><p>During this step, the two models can be confronted for detecting inconsistencies. By adding specific interaction elements to the skeleton, the designer might have changed the semantics of the model.</p><p>To reach this objective, the designer must associate the two models: some added dialogue entities might be related to task entities.</p><p>After analysis, depending on the result, different solutions can be applied:</p><p>• Fail. The two models do not match. Some tasks are missing in the dialogue model. The dialogue model must be improved to take into account the whole task model. • Fail. The two models do not match. The dynamics of the two models differ. The task model and/or the dialogue model must be modified. • Success. The two models match. The system is now ready to being tested by users.</p><p>A user evaluation phase may result in new requirements, which may lead us to coming back to either dialogue or task modeling, and resuming the loop.  </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>CONCLUSION</head><p>In this paper, we present a global process to use a modeldriven approach in user interface design. This process uses rules that allow to check the validity of task models and dialogue models. Moreover, this process is compliant to user-centered approaches that promote iterative design.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: EXPRESS definition of the Task entity (partial) Such as in advanced state machines, transitions may be guarded by expressions, which involve variables. They also can trigger actions. Figure 2 (next page) illustrates a transition meta-model.</figDesc><graphic coords="2,483.35,148.39,66.55,272.95" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 3</head><label>3</label><figDesc>Figure 3 is a Petri net diagram that represents the global process. The process can start either from the Dialog-Editing Phase or the Task-Editing Phase. After rule checking, a failure results in redoing both Task and Dialogue Editing Phases. If problems are detected with usage or interaction during user evaluation, the process must also be repeated.</figDesc><graphic coords="4,45.41,316.27,126.27,140.23" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 3 :</head><label>3</label><figDesc>Figure 3: The global process.</figDesc><graphic coords="4,45.41,456.13,251.96,70.21" type="bitmap" /></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Design and Development of Multidevice User Interfaces through Multiple Logical Descriptions</title>
		<author>
			<persName><forename type="first">G</forename><surname>Mori</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Paternò</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Santoro</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Transactions on Software Engineering</title>
		<imprint>
			<biblScope unit="page" from="507" to="520" />
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Derivation of a Dialog Model from a Task Model by Activity Chain Extraction</title>
		<author>
			<persName><forename type="first">K</forename><surname>Luyten</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">DSV-IS&apos;2003. 2003</title>
				<meeting><address><addrLine>Funchal, Madeira Island, Portugal</addrLine></address></meeting>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<biblScope unit="page" from="203" to="217" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Deriving User Interfaces from Task Models</title>
		<author>
			<persName><forename type="first">A</forename><surname>Wolff</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Forbrig</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">MDDAUI&apos;09. 2009</title>
				<meeting><address><addrLine>Sanibel Island, USA</addrLine></address></meeting>
		<imprint/>
	</monogr>
	<note>CEUR-WS</note>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Generating Interactive Applications from Task Models: a Hard Challenge</title>
		<author>
			<persName><forename type="first">S</forename><surname>Caffiau</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">TAsk MOdels and DIAgrams (TAMODIA)</title>
				<meeting><address><addrLine>Toulouse, France; Berlin/Heidelberg</addrLine></address></meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2007">2007</date>
			<biblScope unit="page" from="267" to="272" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">TERESA: a transformation-based environment for designing and development multidevice interface</title>
		<author>
			<persName><forename type="first">S</forename><surname>Berti</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Conference on Human Factors in Computing Systems -CHI&apos;04. 2004</title>
				<meeting><address><addrLine>Vienna, Austria</addrLine></address></meeting>
		<imprint>
			<publisher>ACM NY</publisher>
			<biblScope unit="page" from="793" to="794" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Model Synchronisation: Definitions for Round-Trip Engineering</title>
		<author>
			<persName><forename type="first">T</forename><surname>Hettel</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Lawley</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Raymond</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Theory and Practice of Model Transformations</title>
				<meeting><address><addrLine>Zürich, Switzerland</addrLine></address></meeting>
		<imprint>
			<publisher>Springer</publisher>
			<biblScope unit="page" from="31" to="45" />
		</imprint>
	</monogr>
	<note>ICMT 2008. 2008</note>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Taming Model Round-Trip Engineering</title>
		<author>
			<persName><forename type="first">S</forename><surname>Sendall</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Küster</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">OOPSLA Workshop on Best Practices for Model Driven Software Development</title>
				<meeting><address><addrLine>Vancouver, Canada</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Proposition d&apos;un noyau et d&apos;une structure pour les modèles de tâches orientés utilisateurs</title>
		<author>
			<persName><forename type="first">V</forename><surname>Lucquiaud</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">17th French-speacking conference on Human-computer interaction</title>
				<meeting><address><addrLine>Toulouse</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2005">2005</date>
			<biblScope unit="page" from="83" to="90" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Le modèle d&apos;architecture logicielle H4 : Principes, usages, outils et retours d&apos;expérience dans les applications de conception technique</title>
		<author>
			<persName><forename type="first">F</forename><surname>Depaulis</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Revue d&apos;Interaction Homme-Machine</title>
		<imprint>
			<biblScope unit="volume">7</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="93" to="129" />
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">DTS-Edit : an Interactive Development Environment for Structured Dialog Applications</title>
		<author>
			<persName><forename type="first">F</forename><surname>Depaulis</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Maiano</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Texier</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">CADUI&apos;02</title>
				<meeting><address><addrLine>Valenciennes (France</addrLine></address></meeting>
		<imprint>
			<publisher>Kluwer Academics</publisher>
			<date type="published" when="2002">2002</date>
			<biblScope unit="page" from="75" to="82" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Hierarchical Structure: A Step for Jointly Designing Interactive Software Dialog and Task Model</title>
		<author>
			<persName><forename type="first">S</forename><surname>Caffiau</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Human-Computer Interaction. Novel Interaction Methods and Techniques</title>
				<meeting><address><addrLine>Berlin</addrLine></address></meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2009">2009</date>
			<biblScope unit="page" from="664" to="673" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Approche dirigée par les modèles pour la conception et la validation des applications interactives : une démarche basée sur la modélisation des tâches</title>
		<author>
			<persName><forename type="first">S</forename><surname>Caffiau</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">LIIS/ENSMA</title>
				<meeting><address><addrLine>Poitiers; Poitiers</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2009">2009</date>
			<biblScope unit="page">240</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<monogr>
		<title level="m" type="main">Ingénierie dirigée par lesmodèles en EXPRESS : un exemple d&apos;application</title>
		<author>
			<persName><forename type="first">H</forename><surname>Dehainsala</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
	<note type="report_type">IDM</note>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Transformations between Specifications of Requirements and User Interfaces</title>
		<author>
			<persName><forename type="first">S</forename><surname>Kavaldjian</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">MDDAUI&apos;09. 2009</title>
				<meeting><address><addrLine>Sanibel Island, USA</addrLine></address></meeting>
		<imprint/>
	</monogr>
	<note>CEUR-WS</note>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
