Upload
jean-vanderdonckt
View
2.387
Download
3
Tags:
Embed Size (px)
DESCRIPTION
In this paper we present a software toolkit for deploying peer-to-peer distributed graphical user interfaces across four dimen-sions: multiple displays, multiple platforms, multiple operating systems, and multiple users, either independently or concurrently. This toolkit is based on the concept of multi-purpose proxy connected to one or many rendering engines in order to render a graphical user interface in part or whole for any user, any operating system (Linux, Mac OS X and Windows XP or higher), any computing platform (ranging from a pocket PC to a wall screen), and/or any display (ranging from private to public displays). This toolkit is a genuine peer-to-peer solution in that no computing platform is used for a server or for a client: any user interface can be distributed across users, systems, and platforms independently of their location, system constraints, and platform constraints. After defining the toolkit concepts, its implementation is described, motivated, and exemplified on two non-form based user interfaces: a distrib-uted office automation and a distributed interactive game.
Citation preview
Jérémie Melchior, Donatien Grolaux, Jean Vanderdonckt, Peter Van Roy
[email protected] at BCHI, http://www.isys.ucl.ac.be/bchi
Université catholique de Louvain (BELGIUM)
EICS 2009 - July 15
Outline - Motivations• Multi-user user interfaces• Multi-device environments• Multi-platform user interfaces• Toolkit for distributed user interfaces• Peer-to-Peer distribution• Demonstration• Future work
Motivations
Multi-user user interfaces
User Group
System
User 1 User 2 User NU
• Whenever • Wherever
Multi-device environments
User 1 User 2 User NU
User Group
Device 1 Device 2 Device ND
Multi-platform user interfaces
User 1 User 2 User NU
User Group
Device 1 Device 2 Device ND
CP 1 CP 2 CP N
CP 1 CP 2 CP N
CP 1 CP 2 CP N
Toolkit for distributed user interfaces
• Three-layer structure :o Application - user interfaceso Ext/Tk - toolkit for migration and adaptationo Mozart - for the distribution layer
Application
Ext/Tk
Mozart
Toolkit for distributed user interfaces
• Application layer : o UI is dynamically migratable
• o UI is dynamically adaptable
Toolkit for distributed user interfaces
• Ext/tk : 1°) Creation of the UI
UI={Build window( name:window selector( name:selectoritems:["Radiobuttons" "Listbox" "Menu"]curselection:1text:"Selector"action:proc{$}R={UI.selector get(curselection:$)}in{UI.selector setContext((default#listbox#menu).R)}end))}{UI.window show}
Toolkit for distributed user interfaces
• Ext/tk : 2°) Migration of the UI
{Offer {UI.selector getRef($)}}
UI2={Build window(name:window)}{UI2.window show}{UI2.window display({Obtain})}
Toolkit for distributed user interfaces
• Mozart : Multi-paradigm programming languageo Strongly dynamically typedo Procedural, Object-Orientationo Functional, Logic and Symbolic programmingo Transparent distribution support
Distributed network protocols are attached automatically to some of the native data types of OZ
Proxy W Renderer W
Site A
Peer-to-Peer distribution• Widget : Proxy + Renderer
Proxy W
Site A
Renderer W
Site B
• Proxy = stationary, functional core• Renderer = distributed, user interaction
Demonstration• Mozart :
Demonstration• Ext/tk
Future work• Android support• Transparent migration of the top level widget• Compatibility with Mozart 1.4.0 and newer• High-level operations (window migration, widget
copy, ...)
Bibliography• Donatien Grolaux, Transparent Migration and
Adaptation in a Graphical User Interface Toolkit, Ph.D. dissertation, Department of Computing Science and Engineering, Université catholique de Louvain, Sep. 2007.