Distributed User Interfaces (DUIs) have become one vivid area of research and development in Human-Computer Interaction (HCI) where many dramatic changes occur in the way we can interact with interactive systems. DUIs attempt to surpass user interfaces that are manipulated only by a single end user, on the same computing platform, and in the same environment, with little or no variations among these axes. In contrast to such currently existing user interfaces, DUIs enable end users to distribute any user interface element, ranging from the largest one to the smallest one, across one or many of these dimensions at design- and/or run-time: across different users, across different computing platforms, and across different physical environments. In this way, end users could be engaged in distributed tasks that are regulated by distribution rules, many of them being currently used in the real world. This paper provides a conceptual framework that invites us to re-think traditional user interfaces in a distributed way based on the locus of distribution control: in the hands of the end user, under control of the system, or in mixed-initiative way. Any user interface submitted to distribution may also be subject to adaptation with respect to the user, the platform, and the environment.
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Distributed User Interfaces: How to Distribute User Interface Elements across Users, Platforms, and Environments
1. Distributed User Interfaces:How to Distribute User Interface Elements across Users, Platforms, and Environments Jean Vanderdonckt LouvainInteractionLab Universitécatholique de Louvain Jean.Vanderdonckt@uclouvain.be
9. Introduction DUI = Distributed User Interface across Multiple Users: single user stereotypes vs. multiple stereotypes Multiple computingPlatforms: single platform vs. multiple platforms Simultaneously Asynchronously Multiple surroundingEnvironments(physical): same place vs. multiple places Problem to beaddressed: the design and the development of DUIswhiletakingintoaccount Aspects that are common to various distributions Aspects that are specific to some distributions Today, thereis an ontological confusion in the various distributions possible The State of the Art islargelyinconsistent It isdifficult to compare relatedwork
17. Multi-monitor/device Whytake care of multiple monitors? Deviceside Monitor surface isincreasing, whilepriceisdecreasing User side Usersprefer more display surface User’sproductivityincreasesfrom 10% to 30% (althoughsomeusabilityproblems are raised) [Harris,2002]
19. Multi-monitor/device Whytake care of multiple monitors? Effects of Display Size on Task Times 160 140 120 100 Small Average Task Time (Seconds) 80 Large 60 40 20 0 DISPLAY [Czerwinsky,2005]
20. Multi-monitor/device Whytake care of multiple monitors? The tasks were easy to perform 5 4 3 Average Rating (1=Disagree, 5=Agree) 2 1 0 Small Large Display Size [Czerwinsky,2005]
28. The 4C Framework for DUIs C1 (Computation) represents the computation of a DUI, i.e. what are the elements to be distributed during the operation C2 (Communication) represents the dimension of distribution time, i.e. when are the elements of an interactive system distributed C3 (Coordination) represents the dimension of distribution responsibility, i.e. who is distributing the interactive system Detection, computation, selection, execution => ISATINE framework[Lopez2006] C4 (Configuration) represents where a UI is distributed. It therefore poses the problem of how to distribute it Conserving physical pixels Conserving logical pixels Conserving semantic pixels [Demeure et al.,2004]
29. Dimensions of the 4C C4 (Configuration) represents where a UI is distributed. It therefore poses the problem of how to distribute it by conserving Physical pixels Logical pixels Semantic pixels [Demeure et al.,2004]
30. One dimension at a time The predominant paradigm: single… Monitor, device Computing platform User Environment Context of use Domain and task one many 16
31. Multi-platform (Amount of interactive systems) (Amount of end users) 10 to 50 systems for 1 user 10000 50000 2 or 3 systems for 1 user 1 system for 1 user 1000 5000 100 500 1 system for 100 users 10 50 1970 1980 1990 2000 2010 2020 Source: ForresterResearch, 2002 Source: M. Weiser
33. Multi-platform Problem: how to design a UI thattakes care of multiple computingplatforms? Some solutions: DistriXML = software architecture for distributingUIsfrom one computingplatform to anotheratrun-time [Grolaux et al., 2005] MigriXML = software architecture for migratingUisfrom one platform to anotheratrun-time with adaptation [Molina et al., 2006]
37. Multi-platform Problem: how to design a UI thattakes care of multiple computingplatforms? Painting Pencil Paintingtool Palette [Grolaux & Vanderdonckt,2005]
51. Case study 1 2 3 4 Migrating from one laptop to the other Aspire 200015”, 16:10 1280x800 PT-LB10SU4:3 800x600 Latitude15”, 4:3 1024x768
52. Case study 1 2 3 Migrating from a laptop to the Pocket PC Aspire 200015”, 16:10 1280x800 e7503,8”, 3:4240x320
53. One dimension at a time The predominant paradigm: single… Monitor, device Computing platform User Environment Context of use Domain and task one many 39
54. Multiple users Design guideline #1: provide multiple ways to carry out a task by differentusers Interactive systemsshouldbetter support multiple users in multi-taskingbecause group definition changes [Mandviwalla & Olfman, 2000]
55. Multiple users Design guideline #2: support multiple workmethods A sametaskcouldinvolvedifferentsub-tasksdepending on the context Design guideline #3:support group evolution GR1 et GR2 changent en fonction du temps [Mandviwalla & Olfman, 2000]
56. One dimension at a time The predominant paradigm: single… Monitor, device Computing platform User Environment Context of use Domain and task one many 42
58. One dimension at a time The predominant paradigm: single… Monitor, device Computing platform User Environment Context of use Domain and task one many 44
63. Display Site Architecture overview Transparent proxy mechanisms Proxies relay event bindings from the functional core Widgets trigger these events inside the CM at the display site The CM relays and triggers the event at the application site Proxies store all their event bindings Application Site User Interface Communication Manager Functional Core Widget 1 Proxy Widget 1 Widget 2 Proxy Widget 2 (using TCP) Widget … Proxy Widget … Event Listener Event Triggerer Widget N Proxy Widget N
64. Multi-taskingcombined Set of services offered to multiple usersusing multiple platforms in the samecontext [Vandervelpen et al., 2005]
66. Conclusion Advantages of the 4C framework for DUI Multiple monitors, same platform, same user Multiple platforms, same user Multiple platforms, different users, but same technological space Multiple platforms, different users, different technological spaces Limitations Framework oriented towards the context of use Some aspects not considered in the framework Ambient intelligence Possible extension Generalization needed
67. User Interface eXtensibleMarkupLanguage http://www.usixml.org FP7 Serenoaprojecthttp://serenoa.morfeo-project.org/wiki/index.php/Main_Page FP7 Selfmanprojecthttp://www.ist-selfman.org/ For more information and downloading,http://www.isys.ucl.ac.be/bchi Thankyouverymuch!