32
1 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008 An Intelligent Editor for Multi-Presentation User Interfaces Benoît Collignon 1 , Jean Vanderdonckt 1 , Gaëlle Calvary 2 1 Université catholique de Louvain (UCL) Louvain School of Management (LSM) Belgian Laboratory of Computer-Human Interaction (BCHI) http://www.isys.ucl.ac.be/bchi 2 Université Joseph Fourier – Grenoble I, Laboratoire LIG 385, rue de la Bibliothèque BP 53 - F-38041 Grenoble Cedex 9 (France)

An Intelligent Editor for Multi-Presentation User Interfaces

Embed Size (px)

DESCRIPTION

In ubiquitous computing, interactive applications are shipped with different variations of its user interface depending on the constraints imposed by the context in which they are running, such as the user, the computing platform and environment. A multi-presentation user interface is composed of a series of in-terconnected user interfaces for the same task to be carried out in different contexts of use. When access to software applica-tions must be guaranteed in more than one context of use, it is necessary to automatically adapt the interface in order to pre-serve their usability when context switching occurs, for instance, a switch from a desktop to a pocket computer. To achieve this goal, this paper proposes a model and a visualization technique to express and manipulate the plasticity domains of a multi-presentation user interface. The plasticity domain denotes the set of contexts of use it is able to cover while preserving its usabil-ity. This paper focuses primarily on one aspect of the context of use: the computing platform and its screen size: when the di-mensions of a graphical user interface change, the multi-presentation interface automatically switches to the presentation which is the most adapted to this screen. The model supports the definition of this plasticity domain in terms of window size and location. The visualization technique helps in both making ob-servable the set of presentations that fit the available space, and perceiving which operations could help in switching from one presentation to another one. The model has been integrated into a user interface description language and is supported by an in-telligent editor, because it infers from plasticity domains all the constraints and conditions required for context switching.

Citation preview

Page 1: An Intelligent Editor for Multi-Presentation User Interfaces

1 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

An Intelligent Editor forMulti-Presentation User Interfaces

Benoît Collignon1, Jean Vanderdonckt1, Gaëlle Calvary2

1Université catholique de Louvain (UCL)Louvain School of Management (LSM)

Belgian Laboratory of Computer-Human Interaction (BCHI)http://www.isys.ucl.ac.be/bchi

2Université Joseph Fourier – Grenoble I, Laboratoire LIG385, rue de la Bibliothèque BP 53 - F-38041 Grenoble Cedex 9 (France)

Page 2: An Intelligent Editor for Multi-Presentation User Interfaces

2 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Introduction

• The problem of designing multi-target user interfaces– Context of use = {user, computing platform, physical environment}– Multiple contexts of use => multiple variations of users, platforms, and

environments• Independently• Simultaneously

• Notion of plasticity– Plasticity = user interface ability to change according to a change of the

context of use while preserving predefined usability properties• Context-aware adaptation = mere adaptation depending on context

changes• Plasticity = more than context-aware adaptation since usability should

be guaranteed at a minimum level of satisfaction

• To address the problem, we combine– Model-driven engineering of user interfaces– Plasticity as a mean to address context-aware adaptation

Page 3: An Intelligent Editor for Multi-Presentation User Interfaces

3 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Multiplicity of contexts of use

Location Role Device Experience

Sporting Multimedia Travel programme

Working Travel booking sitePowerful interface for complex operations

Travelling Booking notificationEverywhere connectivity for simple data exchange

Family TV is multi-media family device #1

Page 4: An Intelligent Editor for Multi-Presentation User Interfaces

4 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Example of a Plastic User interface

• Property of plasticity = adaptation to the context of use while preserving predefined usability properties of interest

[Grolaux et al.,2002]

Page 5: An Intelligent Editor for Multi-Presentation User Interfaces

5 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Example of a multi-target UI

• Traditional approach: Atomica

HTML/Java UI code

Target 1:Web terminal

Target 2:Personal computer

Visual C++ UI code

Target 3:Pocket PC

Mobile Visual Basic UI

Page 6: An Intelligent Editor for Multi-Presentation User Interfaces

6 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Related work

• Some solutions to address this problem:– The mediator solution

(model-based approach)

[Eisenstein et al.,2001]

Page 7: An Intelligent Editor for Multi-Presentation User Interfaces

7 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Related work

• Some solutions to address this problem:– Multiple variations based on a model (here, a platform model)

[Märtin et al.,1990]

Page 8: An Intelligent Editor for Multi-Presentation User Interfaces

8 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Related work

• Some solutions to address this problem:– Adaptive UI layout: widgets are (un)displayed and laid out

according to resolution

[Plomp & Keranen,2002]

Page 9: An Intelligent Editor for Multi-Presentation User Interfaces

9 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Related work

• Some solutions to address this problem:– Artistic resizing : widgets have different variations according to

resolution

[Dragicevic et al.,2005]

w

h

wL

hL

yL

xLr

hB

wB xL = (w-wL) / 2 yL = (h-hL) / 2 wL = 20 hL = 10

wB = 5 hB = 5

r = 20

Page 10: An Intelligent Editor for Multi-Presentation User Interfaces

10 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Our solution

• Combine model-driven engineering and plasticity domains

Page 11: An Intelligent Editor for Multi-Presentation User Interfaces

11 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Case study

• Case study: multi-target plastic UI for date & time (FlexClock)

[Grolaux et al.,2002]

Page 12: An Intelligent Editor for Multi-Presentation User Interfaces

12 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Case study

• Dialogue modeled through a Moore machine– 16 alternative variations– 6 resizing operations

• Observations– Visualization is hard to achieve

Page 13: An Intelligent Editor for Multi-Presentation User Interfaces

13 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

W1HH:MM

W2HH:MM:SS

W3HH:MMJJ/MM

W4HH:MM:SSJJ/MM/AAAA

W5HH:MM:SS

DAY JJ/MM/AAAA

W6HH:MM:SS

DAY JJ MONTH AAAA

W7

W8

HH:MM

JJ/MM

W9 HH:MM:SS

JJ/MM/AAAA

W10 HH:MM:SS

DAY JJ/MM/AAAA

W11 HH:MM:SS

DAY JJ MONTH AAAA

W13

HH:MM:SS

DAY JJ/MM/AAAA

W12

HH:MM:SSJJ/MM/AAAA

W14

HH:MM:SS

DAY JJ MONTH AAAA

W15

HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W16HH:MM:SS

DAY JJ MONTH AAAACALENDAR

Page 14: An Intelligent Editor for Multi-Presentation User Interfaces

14 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

W1HH:MM

W2HH:MM:SS

W3HH:MMJJ/MM

W4HH:MM:SSJJ/MM/AAAA

W5HH:MM:SS

DAY JJ/MM/AAAA

W6HH:MM:SS

DAY JJ MONTH AAAA

W7

W8

HH:MM

JJ/MM

W9 HH:MM:SS

JJ/MM/AAAA

W10 HH:MM:SS

DAY JJ/MM/AAAA

W11 HH:MM:SS

DAY JJ MONTH AAAA

W13

HH:MM:SS

DAY JJ/MM/AAAA

W12

HH:MM:SSJJ/MM/AAAA

W14

HH:MM:SS

DAY JJ MONTH AAAA

W15

HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W16HH:MM:SS

DAY JJ MONTH AAAACALENDAR

Page 15: An Intelligent Editor for Multi-Presentation User Interfaces

15 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

W1HH:MM

W2HH:MM:SS

W3HH:MMJJ/MM

W4HH:MM:SSJJ/MM/AAAA

W5HH:MM:SS

DAY JJ/MM/AAAA

W6HH:MM:SS

DAY JJ MONTH AAAA

W7

W8

HH:MM

JJ/MM

W9 HH:MM:SS

JJ/MM/AAAA

W10 HH:MM:SS

DAY JJ/MM/AAAA

W11 HH:MM:SS

DAY JJ MONTH AAAA

W13

HH:MM:SS

DAY JJ/MM/AAAA

W12

HH:MM:SSJJ/MM/AAAA

W14

HH:MM:SS

DAY JJ MONTH AAAA

W15

HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W16HH:MM:SS

DAY JJ MONTH AAAACALENDAR

Page 16: An Intelligent Editor for Multi-Presentation User Interfaces

16 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

W1HH:MM

W2HH:MM:SS

W3HH:MMJJ/MM

W4HH:MM:SSJJ/MM/AAAA

W5HH:MM:SS

DAY JJ/MM/AAAA

W6HH:MM:SS

DAY JJ MONTH AAAA

W7

W8

HH:MM

JJ/MM

W9 HH:MM:SS

JJ/MM/AAAA

W10 HH:MM:SS

DAY JJ/MM/AAAA

W11 HH:MM:SS

DAY JJ MONTH AAAA

W13

HH:MM:SS

DAY JJ/MM/AAAA

W12

HH:MM:SSJJ/MM/AAAA

W14

HH:MM:SS

DAY JJ MONTH AAAA

W15

HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W16HH:MM:SS

DAY JJ MONTH AAAACALENDAR

Page 17: An Intelligent Editor for Multi-Presentation User Interfaces

17 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

W1HH:MM

W2HH:MM:SS

W3HH:MMJJ/MM

W4HH:MM:SSJJ/MM/AAAA

W5HH:MM:SS

DAY JJ/MM/AAAA

W6HH:MM:SS

DAY JJ MONTH AAAA

W7

W8

HH:MM

JJ/MM

W9 HH:MM:SS

JJ/MM/AAAA

W10 HH:MM:SS

DAY JJ/MM/AAAA

W11 HH:MM:SS

DAY JJ MONTH AAAA

W13

HH:MM:SS

DAY JJ/MM/AAAA

W12

HH:MM:SSJJ/MM/AAAA

W14

HH:MM:SS

DAY JJ MONTH AAAA

W15

HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W16HH:MM:SS

DAY JJ MONTH AAAACALENDAR

Page 18: An Intelligent Editor for Multi-Presentation User Interfaces

18 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

W1HH:MM

W2HH:MM:SS

W3HH:MMJJ/MM

W4HH:MM:SSJJ/MM/AAAA

W5HH:MM:SS

DAY JJ/MM/AAAA

W6HH:MM:SS

DAY JJ MONTH AAAA

W7

W8

HH:MM

JJ/MM

W9 HH:MM:SS

JJ/MM/AAAA

W10 HH:MM:SS

DAY JJ/MM/AAAA

W11 HH:MM:SS

DAY JJ MONTH AAAA

W13

HH:MM:SS

DAY JJ/MM/AAAA

W12

HH:MM:SSJJ/MM/AAAA

W14

HH:MM:SS

DAY JJ MONTH AAAA

W15

HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W16HH:MM:SS

DAY JJ MONTH AAAACALENDAR

Page 19: An Intelligent Editor for Multi-Presentation User Interfaces

19 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

W1HH:MM

W2HH:MM:SS

W3HH:MMJJ/MM

W4HH:MM:SSJJ/MM/AAAA

W5HH:MM:SS

DAY JJ/MM/AAAA

W6HH:MM:SS

DAY JJ MONTH AAAA

W7

W8

HH:MM

JJ/MM

W9 HH:MM:SS

JJ/MM/AAAA

W10 HH:MM:SS

DAY JJ/MM/AAAA

W11 HH:MM:SS

DAY JJ MONTH AAAA

W13

HH:MM:SS

DAY JJ/MM/AAAA

W12

HH:MM:SSJJ/MM/AAAA

W14

HH:MM:SS

DAY JJ MONTH AAAA

W15

HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W16HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W1HH:MM

W2HH:MM:SS

W3HH:MMJJ/MM

W4HH:MM:SSJJ/MM/AAAA

W5HH:MM:SS

DAY JJ/MM/AAAA

W6HH:MM:SS

DAY JJ MONTH AAAA

W7

W8

HH:MM

JJ/MM

W9 HH:MM:SS

JJ/MM/AAAA

W10 HH:MM:SS

DAY JJ/MM/AAAA

W11 HH:MM:SS

DAY JJ MONTH AAAA

W13

HH:MM:SS

DAY JJ/MM/AAAA

W12

HH:MM:SSJJ/MM/AAAA

W14

HH:MM:SS

DAY JJ MONTH AAAA

W15

HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W16HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W1HH:MM

W2HH:MM:SS

W3HH:MMJJ/MM

W4HH:MM:SSJJ/MM/AAAA

W5HH:MM:SS

DAY JJ/MM/AAAA

W6HH:MM:SS

DAY JJ MONTH AAAA

W7

W8

HH:MM

JJ/MM

W9 HH:MM:SS

JJ/MM/AAAA

W10 HH:MM:SS

DAY JJ/MM/AAAA

W11 HH:MM:SS

DAY JJ MONTH AAAA

W13

HH:MM:SS

DAY JJ/MM/AAAA

W12

HH:MM:SSJJ/MM/AAAA

W14

HH:MM:SS

DAY JJ MONTH AAAA

W15

HH:MM:SS

DAY JJ MONTH AAAACALENDAR

W16HH:MM:SS

DAY JJ MONTH AAAACALENDAR

Page 20: An Intelligent Editor for Multi-Presentation User Interfaces

20 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Case study

• Dialogue modeled through a Mealy machine

W2 W1

W2 W2

W2 W2

W2 W1

2 / 1 1

11 / 12

17 / 133

30/15 4

19 / 95

42 / 16 6

98 / 167

102 / 16

8

Page 21: An Intelligent Editor for Multi-Presentation User Interfaces

21 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Case study

• Main idea: design one UI variation for one context at a time, connect related variations afterwards

Horizontal screen resolution

Vertical screen resolution

Plasticity domain

Page 22: An Intelligent Editor for Multi-Presentation User Interfaces

22 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Case study

• Main idea: design one UI variation for one context at a time, connect related variations afterwards

Page 23: An Intelligent Editor for Multi-Presentation User Interfaces

23 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Tool support: PlastiXML

• Graphical editor for plasticity domains– Direct manipulation of plasticity domains (here, rectangles)– Assignment of a UI variation to each plasticity domain– Automated generation of UsiXML for

• Layout• Navigation between variations

<contextModel id="test-contextModel_14" name="test-contextModel"> <contextRessource contextId="cont1"> <Environment id="envir1" name="envir1" … /> <userStereotype id="ustr1" stereotypeName="ustr1" … /> <Platform id="plat1" name="plat1"> <HardwarePlatform …screenSize="640x480"/> <SoftwarePlatform … /> <NetworkCharacteristics … /> <WapCharacteristics … /> <BrowserUA … /> </Platform> </contextRessource> <PlasticityDomainSet id="plasts1"> <PlasticityDomain id="plast1" contextId="cont1"> <PlatformPlasticityDomain id="platp1" PlatformId="plat1"> <ScreenSizeAspect id="scrd1" shape="rectangle" corners="{(80,10);(80,30);(ScreenSizeXLimit,10); (ScreenSizeXLimit,30)}" allowedOperations="{vertical shrinkage}"/> </PlatformPlasticityDomain> </PlasticityDomain> <PlasticityDomain id="plast2" contextId="cont1"> <PlatformPlasticityDomain id="platp2" PlatformId="plat1"> <ScreenSizeAspect id="scrd2" shape="polygon" corners="{(80,30);(ScreenSizeXLimit,30); (ScreenSizeXLimit,60);(100,60); (100,ScreenSizeYLimit); (80,ScreenSizeYLimit)}" allowedOperations="{vertical shrinkage}"/> </PlatformPlasticityDomain> </PlasticityDomain> </PlasticityDomainSet> </contextModel><mappingModel id="map1" name="map1" …> <isShapedFor id="adp1" name="adp1"> <source sourceId="W2"/> <target targetId="plast1"/> </isShapedFor> <isShapedFor id="adp2" name="adp2"> <source sourceId="W4"/> <target targetId="plast2"/> </isShapedFor> <source sourceId="W12"/> <target targetId="plast4"/> </isShapedFor></mappingModel>

Page 24: An Intelligent Editor for Multi-Presentation User Interfaces

24 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Scenario

• First plasticity domain

Page 25: An Intelligent Editor for Multi-Presentation User Interfaces

25 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Scenario

• Second plasticity domain

Page 26: An Intelligent Editor for Multi-Presentation User Interfaces

26 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Scenario

• Third plasticity domain

Page 27: An Intelligent Editor for Multi-Presentation User Interfaces

27 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Running applications

• Example #1: country selector

Page 28: An Intelligent Editor for Multi-Presentation User Interfaces

28 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Running applications

• Example #2: multi-presentationmedical teaching application

Page 29: An Intelligent Editor for Multi-Presentation User Interfaces

29 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Running applications

• Example #3: multi-presentationsimple information systems

Page 30: An Intelligent Editor for Multi-Presentation User Interfaces

30 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Conclusion (1/2)

• Advantages– One UI variation is assigned to one context (here, a resolution) at a time– Connect related variations afterwards– Visual design of connected variations insted of separate (unrelated) design– Automated generation of UsiXML specifications

• Presentation• Navigation

– Mealy machine– Moore machine

• Limitations– Apart from copy/paste, no direct reuse of components from one UI

variation to another– No factoring out of common components

• Possible extension– Generate a default UI variation to feed the various resolutions to be

supported– Edit afterwards

• Generalization needed

Page 31: An Intelligent Editor for Multi-Presentation User Interfaces

31 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Conclusion (2/2)

• Feedback from designers– Like the visual, colourful design aspects– Dislike the modelling aspects (fortunately generated by software)– Limited to GUIs for the moment

• Feedback from users– Adaptation always induce some user disruption– No explanation of the adaptation

• But would it be better is explanation is provided

Page 32: An Intelligent Editor for Multi-Presentation User Interfaces

32 ACM SAC’2008 – Fortaleza, Ceará, Brazil, March 16-20, 2008

Thank you very much for your attention

For more information and downloading,http://www.isys.ucl.ac.be/bchi

http://www.usixml.orgUser Interface eXtensible Markup Language

http://www.similar.ccEuropean network on Multimodal UIs

Special thanks to all members of the team!