SlideShare une entreprise Scribd logo
1  sur  31
Jérémie Melchior, Jean Vanderdonckt and Peter Van Roy
                                                                     Jeremie.Melchior@uclouvain.be
                                                             Researcher at LiLab, http://www.lilab.be
                                                         Université catholique de Louvain (BELGIUM)
18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                                                  1
•     Motivations
 •     Distributed User Interfaces: what and how?
 •     Lacks in other works
 •     Contribution: distribution graph
 •     Case study: a distributed Pictionary
 •     Conclusion




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th   2
•     1 or more desktops
 •     1 or more phones
             •     Mobile phone
             •     Smartphone
 •     1 or more laptops
 •     And maybe more !
             •     Xbox
             •     Playstation
             •     TV
             •     …


18/05/2012   RCIS 2012 – Valencia, Spain, May 17th   3
•     Lots of devices
 •     High need of visualization of the distribution state
 •     Only pre-programmed disposition & static
       environment
 •     No support for platform leaving or joining at run-
       time




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th            4
Definition:
         “any application UI whose components can be
         distributed across different displays of different
          computing platforms that are used by different
              users (co-located or remote collaboration)”




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th            5
-     Any UI could be distributed
 -     Example: Paint (not distributed by default)




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th   6
-     Any UI could be distributed
 -     Example: Paint (distributed)
             -     Windows: drawing area
             -     Windows Phone: all buttons, bars, …




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th       7
•     Distribution state of the whole system
 •     Snapshot of the system at a certain moment of
       time in a stable distribution state
 •     Context = set of platforms, set of users and one
       environment)
 •     Visual representation:                      C1adrien
 •     Example:
             •     Adrien is in distribution state DS1, which means he is in
                   the context of use C1
             •     C1adrien = ({desktop}, {Adrien}, quiet)
             •     Adrien’s distribution state = C1adrien


18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                             8
•     Sum of all individual states
 •     Example:
             •     C1bastien = ({desktop, laptop}, {Bastien}, quiet)
             •     Distribution shared state = {C1adrien, C1bastien}

                                                                       C1adrien
 •     Visual representation:                                          C1bastien




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                                 9
• Need to know the distribution state




                                        Distribution Graph


18/05/2012   RCIS 2012 – Valencia, Spain, May 17th           10
• Need to know the distribution state
 • Need to trigger the distribution


                                        Distribution Primitives
                                        Distribution Script

18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                11
• Need to know the distribution state
 • Need to trigger the distribution
 • Need to know « what » to distribute


                                        Part or whole of the UI


18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                12
•    ARIS: visualisation of devices and windows
             •     Meta-UI
             •     Static environment
             •     States: ?




[BIE04] Biehl & Bailey
ARIS: An Inferface for Application Relocation in an Interactive Space
18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                      13
•     A Reference Model for DUIs
             •       Widgets:
                 •     An image:        (WS Slides)
                 •     A text: « Infos » (WS Infos)
             •       Conceptual level
             •       States: ?




[DEM05] Demeure, Calvary, et al.
A Reference Model for DUIs
18/05/2012   RCIS 2012 – Valencia, Spain, May 17th    14
•     Idea: state-transition diagram
 •     Allow modelling of the distribution
 •     Dynamic evolution of the distribution
 •     Ability to join or split models
 •     Need of some concepts:
             •     Distribution state
             •     Distribution shared state
             •     Distribution graph
             •     Distribution primitive
             •     Distribution script

18/05/2012   RCIS 2012 – Valencia, Spain, May 17th   15
•     State diagram/state chart model
             •       Node
                 •       Individual states of entities involved in the distribution
                     ▪      Distribution State
                 •       Collective representation of their synchronization
                     ▪      Distribution Shared State
             •       Transitions =
                 •       Event-condition-action:
                     ▪     Action = Distribution Script
 •     At conceptual level
 •     Evolution at run-time


18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                                    16
C1adrien = ({desktop}, {Adrien}, quiet)
 C1bastien = ({desktop, laptop}, {Bastien}, quiet)        Event: Adrien changes platform
                                                          Action: Replace(C1a, C2a)



                                                     C2adrien = ({laptop}, {Adrien}, quiet)
                                                                  C1bastien


                                                         Event: Bastien changes platform
                              C2adrien                   Action: Replace(C1b, C2b)
        C2bastien = ({desktop}, {Bastien}, quiet)

18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                                        17
•     Distribution Script:
             •     Set of distribution primitives
 •     Distribution Primitive
             •     Definition: basic operations that manipulates parts or wholes
                   of a user interfaces at run-time
             •     Part of a catalog
 •     Example of distribution primitive:
             {Display td(name:p1 button(name:b_c glue:e text:"Create:"))}
             {Display entry(name:e_c glue:w bg:white init:"Own game"
                            handle:HEntry return:R) #p1}

             Operation – Widget - Property:Value - #Location


18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                                 18
Name                             Effect
  Display                          Display an item in one or more UIs
  Undisplay                        Hide an item from one to many UIs
  Move                             Move an item from a UI to another one
  Copy                             Copy an item of an UI to another one
  Insert                           Insert an item in a container of a UI
  Switch                           Exchange two components in the same or different UIs
  Merge                            Merge two UIs together
  Separate                         Explode a UI in two or more separated UIs




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                                        19
•     A distributed Pictionary:
             •       3 roles:
                 •     The drawer
                 •     The observer
                 •     The guesser




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th   20
•     A distributed Pictionary:
             •       3 roles:
                 •     The drawer: allowed to draw in the application (+drawing bar)
                 •     The observer: allowed to see the drawing
                 •     The guesser: allowed to see the drawing and suggest words




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                                     21
•     A distributed Pictionary:                             Player2
                                                      Event: Player1 connects
                                                      Action: execute Distribution Script 1
             Player connects



     No game started

                    Condition: More than 2
                    players connected


      Game started




18/05/2012    RCIS 2012 – Valencia, Spain, May 17th                                           22
•     Distribution Script 1:
             {Display td(name:p1 button(name:b_c glue:e text:"Create:"))}
             {Display entry(name:e_c glue:w bg:white init:"Own game”
                              handle:HEntry return:R)
              #p1}
             {Display lr(name:create_game b_c e_c)#p1}
             {Display td(name:p1 create_game td(name:join)
                        label(name:status glue:swe text:"Waiting for a game“
                              bg:white) )
             }
             for I in {DiscoverGames} do
                {Display button(name:b#I glue:nswe text:"Join "#I} #join}
             end


18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                             23
•     A distributed Pictionary:                      Event: Player2 connects
                                                      Action: execute Distribution Script 2
             Player connects



     No game started

                    Condition: More than 2
                    players connected


      Game started




18/05/2012    RCIS 2012 – Valencia, Spain, May 17th                                           24
•     Distribution Script 2:
             {Copy p1 td(name:p2)}




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th   25
•     A distributed Pictionary:                      Event: Player1 or 2 starts the game
                                                      Action: execute Distribution Script 3
             Player connects



     No game started

                    Condition: More than 2
                    players connected


      Game started




18/05/2012    RCIS 2012 – Valencia, Spain, May 17th                                           26
•     Distribution Script 3:
             {Undisplay create_game#p1}
             {Update status "Running game: "#Name}
             {Display td(name:observer
                           lr(name:enter_word glue:nwe bg:white
                            label(bg:white text:"Enter word: ")
                              entry(glue:w bg:white init:"House“ handle:HEW))
                           lr(name:start_found bg:white glue:new
                              button(glue:e text:"Start")
                              button(glue:w text:"Found !"))
                           lr(name:remaining_time bg:white glue:swe
                              label(glue:e bg:white text:"Remaining time: ")
                              label(glue:w bg:white text:"02:00")))
               #p1}
             {Display td(name:p1 create_game observer status)}

18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                              27
•     A distributed Pictionary:
             •     Simple example
             •     Only 2 players




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th   28
•     A distributed Pictionary:
             •       Complex example
             •       4 players
             •       2 teams (A - B)
                 •     2 players in Team A
                 •     2 players in Team B




18/05/2012   RCIS 2012 – Valencia, Spain, May 17th   29
•     Concepts
             •     Distribution Graph
             •     Distribution State
             •     Distribution Primitive (distribution operation)
             •     Distribution Script
 •     Complex concepts with several items:
             •     Devices
             •     User Interface components
             •     Roles
 •     Reusable: others can reuse the idea or extends
       the concepts
 •     Need for validation with a real game/application
18/05/2012   RCIS 2012 – Valencia, Spain, May 17th                   30
18/05/2012   RCIS 2012 – Valencia, Spain, May 17th   31

Contenu connexe

Plus de Jean Vanderdonckt

UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...Jean Vanderdonckt
 
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...Jean Vanderdonckt
 
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...Jean Vanderdonckt
 
Gesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOpsGesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOpsJean Vanderdonckt
 
Engineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeEngineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeJean Vanderdonckt
 
Evaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and MeasuresEvaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and MeasuresJean Vanderdonckt
 
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...Jean Vanderdonckt
 
Designing Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and PitfallsDesigning Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and PitfallsJean Vanderdonckt
 
Fundamentals of Gestural Interaction
Fundamentals of Gestural InteractionFundamentals of Gestural Interaction
Fundamentals of Gestural InteractionJean Vanderdonckt
 
Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?Jean Vanderdonckt
 
User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...Jean Vanderdonckt
 
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...Jean Vanderdonckt
 
Attach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you WorkAttach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you WorkJean Vanderdonckt
 
The Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV GesturesThe Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV GesturesJean Vanderdonckt
 
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-Defined Gestures with Upper BodyHead and Shoulders Gestures: Exploring User-Defined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper BodyJean Vanderdonckt
 
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for SmartphonesG-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for SmartphonesJean Vanderdonckt
 
Vector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture RecognitionVector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture RecognitionJean Vanderdonckt
 
An ontology for reasoning on body-based gestures
 An ontology for reasoning on body-based gestures An ontology for reasoning on body-based gestures
An ontology for reasoning on body-based gesturesJean Vanderdonckt
 
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design AlternativesAB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design AlternativesJean Vanderdonckt
 
Gelicit: A Cloud Platform for Distributed Gesture Elicitation Studies
 Gelicit: A Cloud Platform for Distributed Gesture Elicitation Studies Gelicit: A Cloud Platform for Distributed Gesture Elicitation Studies
Gelicit: A Cloud Platform for Distributed Gesture Elicitation StudiesJean Vanderdonckt
 

Plus de Jean Vanderdonckt (20)

UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
UsyBus: A Communication Framework among Reusable Agents integrating Eye-Track...
 
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
 
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
 
Gesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOpsGesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOps
 
Engineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeEngineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with Slime
 
Evaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and MeasuresEvaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and Measures
 
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
 
Designing Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and PitfallsDesigning Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and Pitfalls
 
Fundamentals of Gestural Interaction
Fundamentals of Gestural InteractionFundamentals of Gestural Interaction
Fundamentals of Gestural Interaction
 
Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?
 
User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...
 
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...
 
Attach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you WorkAttach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you Work
 
The Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV GesturesThe Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV Gestures
 
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-Defined Gestures with Upper BodyHead and Shoulders Gestures: Exploring User-Defined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper Body
 
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for SmartphonesG-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
 
Vector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture RecognitionVector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture Recognition
 
An ontology for reasoning on body-based gestures
 An ontology for reasoning on body-based gestures An ontology for reasoning on body-based gestures
An ontology for reasoning on body-based gestures
 
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design AlternativesAB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
 
Gelicit: A Cloud Platform for Distributed Gesture Elicitation Studies
 Gelicit: A Cloud Platform for Distributed Gesture Elicitation Studies Gelicit: A Cloud Platform for Distributed Gesture Elicitation Studies
Gelicit: A Cloud Platform for Distributed Gesture Elicitation Studies
 

Dernier

VIP Vapi Call Girls 📞 8617697112 Vapi Call Girls
VIP Vapi Call Girls 📞 8617697112 Vapi Call GirlsVIP Vapi Call Girls 📞 8617697112 Vapi Call Girls
VIP Vapi Call Girls 📞 8617697112 Vapi Call GirlsNitya salvi
 
Papi kondalu Call Girls 8250077686 Service Offer VIP Hot Model
Papi kondalu Call Girls 8250077686 Service Offer VIP Hot ModelPapi kondalu Call Girls 8250077686 Service Offer VIP Hot Model
Papi kondalu Call Girls 8250077686 Service Offer VIP Hot ModelDeiva Sain Call Girl
 
❤Personal Contact Number Mcleodganj Call Girls 8617697112💦✅.
❤Personal Contact Number Mcleodganj Call Girls 8617697112💦✅.❤Personal Contact Number Mcleodganj Call Girls 8617697112💦✅.
❤Personal Contact Number Mcleodganj Call Girls 8617697112💦✅.Nitya salvi
 
Sample sample sample sample sample sample
Sample sample sample sample sample sampleSample sample sample sample sample sample
Sample sample sample sample sample sampleCasey Keith
 
WhatsApp Chat: 📞 8617697112 Suri Call Girls available for hotel room package
WhatsApp Chat: 📞 8617697112 Suri Call Girls available for hotel room packageWhatsApp Chat: 📞 8617697112 Suri Call Girls available for hotel room package
WhatsApp Chat: 📞 8617697112 Suri Call Girls available for hotel room packageNitya salvi
 
Sample sample sample sample sample sample
Sample sample sample sample sample sampleSample sample sample sample sample sample
Sample sample sample sample sample sampleCasey Keith
 
Hire 💕 8617697112 Surat Call Girls Service Call Girls Agency
Hire 💕 8617697112 Surat Call Girls Service Call Girls AgencyHire 💕 8617697112 Surat Call Girls Service Call Girls Agency
Hire 💕 8617697112 Surat Call Girls Service Call Girls AgencyNitya salvi
 
Mathura Call Girls 8250077686 Service Offer VIP Hot Model
Mathura Call Girls 8250077686 Service Offer VIP Hot ModelMathura Call Girls 8250077686 Service Offer VIP Hot Model
Mathura Call Girls 8250077686 Service Offer VIP Hot ModelDeiva Sain Call Girl
 
Ahmedabad Escort Service Ahmedabad Call Girl 0000000000
Ahmedabad Escort Service Ahmedabad Call Girl 0000000000Ahmedabad Escort Service Ahmedabad Call Girl 0000000000
Ahmedabad Escort Service Ahmedabad Call Girl 0000000000mountabuangels4u
 
Top travel agency in panchkula - Best travel agents in panchkula
Top  travel agency in panchkula - Best travel agents in panchkulaTop  travel agency in panchkula - Best travel agents in panchkula
Top travel agency in panchkula - Best travel agents in panchkulauseyourbrain1122
 
Ooty Call Girls 8250077686 Service Offer VIP Hot Model
Ooty Call Girls 8250077686 Service Offer VIP Hot ModelOoty Call Girls 8250077686 Service Offer VIP Hot Model
Ooty Call Girls 8250077686 Service Offer VIP Hot ModelDeiva Sain Call Girl
 
Call Girls Jaisalmer Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jaisalmer Just Call 8617370543 Top Class Call Girl Service AvailableCall Girls Jaisalmer Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jaisalmer Just Call 8617370543 Top Class Call Girl Service AvailableNitya salvi
 
Tamluk ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Tamluk ESCORT SERVICE❤CALL GIRL
Tamluk ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Tamluk ESCORT SERVICE❤CALL GIRLTamluk ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Tamluk ESCORT SERVICE❤CALL GIRL
Tamluk ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Tamluk ESCORT SERVICE❤CALL GIRLNitya salvi
 
Ooty call girls 📞 8617697112 At Low Cost Cash Payment Booking
Ooty call girls 📞 8617697112 At Low Cost Cash Payment BookingOoty call girls 📞 8617697112 At Low Cost Cash Payment Booking
Ooty call girls 📞 8617697112 At Low Cost Cash Payment BookingNitya salvi
 
Elevate Your Busy Season Email Marketing, Holly May Webinar.pptx
Elevate Your Busy Season Email Marketing, Holly May Webinar.pptxElevate Your Busy Season Email Marketing, Holly May Webinar.pptx
Elevate Your Busy Season Email Marketing, Holly May Webinar.pptxRezStream
 
Genuine 8250077686 Hot and Beautiful 💕 Visakhapatnam Escorts call Girls
Genuine 8250077686 Hot and Beautiful 💕 Visakhapatnam Escorts call GirlsGenuine 8250077686 Hot and Beautiful 💕 Visakhapatnam Escorts call Girls
Genuine 8250077686 Hot and Beautiful 💕 Visakhapatnam Escorts call GirlsDeiva Sain Call Girl
 
Night 7k to 12k Daman Call Girls 👉👉 8617697112⭐⭐ 100% Genuine Escort Service ...
Night 7k to 12k Daman Call Girls 👉👉 8617697112⭐⭐ 100% Genuine Escort Service ...Night 7k to 12k Daman Call Girls 👉👉 8617697112⭐⭐ 100% Genuine Escort Service ...
Night 7k to 12k Daman Call Girls 👉👉 8617697112⭐⭐ 100% Genuine Escort Service ...Nitya salvi
 
IATA GEOGRAPHY AREAS in the world, HM111
IATA GEOGRAPHY AREAS in the world, HM111IATA GEOGRAPHY AREAS in the world, HM111
IATA GEOGRAPHY AREAS in the world, HM1112022472524
 
Kolkata Call Girls - 📞 8617697112 🔝 Top Class Call Girls Service Available
Kolkata Call Girls - 📞 8617697112 🔝 Top Class Call Girls Service AvailableKolkata Call Girls - 📞 8617697112 🔝 Top Class Call Girls Service Available
Kolkata Call Girls - 📞 8617697112 🔝 Top Class Call Girls Service AvailableNitya salvi
 
Genuine 8250077686 Hot and Beautiful 💕 Hosur Escorts call Girls
Genuine 8250077686 Hot and Beautiful 💕 Hosur Escorts call GirlsGenuine 8250077686 Hot and Beautiful 💕 Hosur Escorts call Girls
Genuine 8250077686 Hot and Beautiful 💕 Hosur Escorts call GirlsDeiva Sain Call Girl
 

Dernier (20)

VIP Vapi Call Girls 📞 8617697112 Vapi Call Girls
VIP Vapi Call Girls 📞 8617697112 Vapi Call GirlsVIP Vapi Call Girls 📞 8617697112 Vapi Call Girls
VIP Vapi Call Girls 📞 8617697112 Vapi Call Girls
 
Papi kondalu Call Girls 8250077686 Service Offer VIP Hot Model
Papi kondalu Call Girls 8250077686 Service Offer VIP Hot ModelPapi kondalu Call Girls 8250077686 Service Offer VIP Hot Model
Papi kondalu Call Girls 8250077686 Service Offer VIP Hot Model
 
❤Personal Contact Number Mcleodganj Call Girls 8617697112💦✅.
❤Personal Contact Number Mcleodganj Call Girls 8617697112💦✅.❤Personal Contact Number Mcleodganj Call Girls 8617697112💦✅.
❤Personal Contact Number Mcleodganj Call Girls 8617697112💦✅.
 
Sample sample sample sample sample sample
Sample sample sample sample sample sampleSample sample sample sample sample sample
Sample sample sample sample sample sample
 
WhatsApp Chat: 📞 8617697112 Suri Call Girls available for hotel room package
WhatsApp Chat: 📞 8617697112 Suri Call Girls available for hotel room packageWhatsApp Chat: 📞 8617697112 Suri Call Girls available for hotel room package
WhatsApp Chat: 📞 8617697112 Suri Call Girls available for hotel room package
 
Sample sample sample sample sample sample
Sample sample sample sample sample sampleSample sample sample sample sample sample
Sample sample sample sample sample sample
 
Hire 💕 8617697112 Surat Call Girls Service Call Girls Agency
Hire 💕 8617697112 Surat Call Girls Service Call Girls AgencyHire 💕 8617697112 Surat Call Girls Service Call Girls Agency
Hire 💕 8617697112 Surat Call Girls Service Call Girls Agency
 
Mathura Call Girls 8250077686 Service Offer VIP Hot Model
Mathura Call Girls 8250077686 Service Offer VIP Hot ModelMathura Call Girls 8250077686 Service Offer VIP Hot Model
Mathura Call Girls 8250077686 Service Offer VIP Hot Model
 
Ahmedabad Escort Service Ahmedabad Call Girl 0000000000
Ahmedabad Escort Service Ahmedabad Call Girl 0000000000Ahmedabad Escort Service Ahmedabad Call Girl 0000000000
Ahmedabad Escort Service Ahmedabad Call Girl 0000000000
 
Top travel agency in panchkula - Best travel agents in panchkula
Top  travel agency in panchkula - Best travel agents in panchkulaTop  travel agency in panchkula - Best travel agents in panchkula
Top travel agency in panchkula - Best travel agents in panchkula
 
Ooty Call Girls 8250077686 Service Offer VIP Hot Model
Ooty Call Girls 8250077686 Service Offer VIP Hot ModelOoty Call Girls 8250077686 Service Offer VIP Hot Model
Ooty Call Girls 8250077686 Service Offer VIP Hot Model
 
Call Girls Jaisalmer Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jaisalmer Just Call 8617370543 Top Class Call Girl Service AvailableCall Girls Jaisalmer Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jaisalmer Just Call 8617370543 Top Class Call Girl Service Available
 
Tamluk ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Tamluk ESCORT SERVICE❤CALL GIRL
Tamluk ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Tamluk ESCORT SERVICE❤CALL GIRLTamluk ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Tamluk ESCORT SERVICE❤CALL GIRL
Tamluk ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Tamluk ESCORT SERVICE❤CALL GIRL
 
Ooty call girls 📞 8617697112 At Low Cost Cash Payment Booking
Ooty call girls 📞 8617697112 At Low Cost Cash Payment BookingOoty call girls 📞 8617697112 At Low Cost Cash Payment Booking
Ooty call girls 📞 8617697112 At Low Cost Cash Payment Booking
 
Elevate Your Busy Season Email Marketing, Holly May Webinar.pptx
Elevate Your Busy Season Email Marketing, Holly May Webinar.pptxElevate Your Busy Season Email Marketing, Holly May Webinar.pptx
Elevate Your Busy Season Email Marketing, Holly May Webinar.pptx
 
Genuine 8250077686 Hot and Beautiful 💕 Visakhapatnam Escorts call Girls
Genuine 8250077686 Hot and Beautiful 💕 Visakhapatnam Escorts call GirlsGenuine 8250077686 Hot and Beautiful 💕 Visakhapatnam Escorts call Girls
Genuine 8250077686 Hot and Beautiful 💕 Visakhapatnam Escorts call Girls
 
Night 7k to 12k Daman Call Girls 👉👉 8617697112⭐⭐ 100% Genuine Escort Service ...
Night 7k to 12k Daman Call Girls 👉👉 8617697112⭐⭐ 100% Genuine Escort Service ...Night 7k to 12k Daman Call Girls 👉👉 8617697112⭐⭐ 100% Genuine Escort Service ...
Night 7k to 12k Daman Call Girls 👉👉 8617697112⭐⭐ 100% Genuine Escort Service ...
 
IATA GEOGRAPHY AREAS in the world, HM111
IATA GEOGRAPHY AREAS in the world, HM111IATA GEOGRAPHY AREAS in the world, HM111
IATA GEOGRAPHY AREAS in the world, HM111
 
Kolkata Call Girls - 📞 8617697112 🔝 Top Class Call Girls Service Available
Kolkata Call Girls - 📞 8617697112 🔝 Top Class Call Girls Service AvailableKolkata Call Girls - 📞 8617697112 🔝 Top Class Call Girls Service Available
Kolkata Call Girls - 📞 8617697112 🔝 Top Class Call Girls Service Available
 
Genuine 8250077686 Hot and Beautiful 💕 Hosur Escorts call Girls
Genuine 8250077686 Hot and Beautiful 💕 Hosur Escorts call GirlsGenuine 8250077686 Hot and Beautiful 💕 Hosur Escorts call Girls
Genuine 8250077686 Hot and Beautiful 💕 Hosur Escorts call Girls
 

Modelling and Developing Distributed User Interfaces based on Distribution Graph

  • 1. Jérémie Melchior, Jean Vanderdonckt and Peter Van Roy Jeremie.Melchior@uclouvain.be Researcher at LiLab, http://www.lilab.be Université catholique de Louvain (BELGIUM) 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 1
  • 2. Motivations • Distributed User Interfaces: what and how? • Lacks in other works • Contribution: distribution graph • Case study: a distributed Pictionary • Conclusion 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 2
  • 3. 1 or more desktops • 1 or more phones • Mobile phone • Smartphone • 1 or more laptops • And maybe more ! • Xbox • Playstation • TV • … 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 3
  • 4. Lots of devices • High need of visualization of the distribution state • Only pre-programmed disposition & static environment • No support for platform leaving or joining at run- time 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 4
  • 5. Definition: “any application UI whose components can be distributed across different displays of different computing platforms that are used by different users (co-located or remote collaboration)” 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 5
  • 6. - Any UI could be distributed - Example: Paint (not distributed by default) 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 6
  • 7. - Any UI could be distributed - Example: Paint (distributed) - Windows: drawing area - Windows Phone: all buttons, bars, … 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 7
  • 8. Distribution state of the whole system • Snapshot of the system at a certain moment of time in a stable distribution state • Context = set of platforms, set of users and one environment) • Visual representation: C1adrien • Example: • Adrien is in distribution state DS1, which means he is in the context of use C1 • C1adrien = ({desktop}, {Adrien}, quiet) • Adrien’s distribution state = C1adrien 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 8
  • 9. Sum of all individual states • Example: • C1bastien = ({desktop, laptop}, {Bastien}, quiet) • Distribution shared state = {C1adrien, C1bastien} C1adrien • Visual representation: C1bastien 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 9
  • 10. • Need to know the distribution state Distribution Graph 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 10
  • 11. • Need to know the distribution state • Need to trigger the distribution Distribution Primitives Distribution Script 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 11
  • 12. • Need to know the distribution state • Need to trigger the distribution • Need to know « what » to distribute Part or whole of the UI 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 12
  • 13. ARIS: visualisation of devices and windows • Meta-UI • Static environment • States: ? [BIE04] Biehl & Bailey ARIS: An Inferface for Application Relocation in an Interactive Space 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 13
  • 14. A Reference Model for DUIs • Widgets: • An image: (WS Slides) • A text: « Infos » (WS Infos) • Conceptual level • States: ? [DEM05] Demeure, Calvary, et al. A Reference Model for DUIs 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 14
  • 15. Idea: state-transition diagram • Allow modelling of the distribution • Dynamic evolution of the distribution • Ability to join or split models • Need of some concepts: • Distribution state • Distribution shared state • Distribution graph • Distribution primitive • Distribution script 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 15
  • 16. State diagram/state chart model • Node • Individual states of entities involved in the distribution ▪  Distribution State • Collective representation of their synchronization ▪  Distribution Shared State • Transitions = • Event-condition-action: ▪ Action = Distribution Script • At conceptual level • Evolution at run-time 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 16
  • 17. C1adrien = ({desktop}, {Adrien}, quiet) C1bastien = ({desktop, laptop}, {Bastien}, quiet) Event: Adrien changes platform Action: Replace(C1a, C2a) C2adrien = ({laptop}, {Adrien}, quiet) C1bastien Event: Bastien changes platform C2adrien Action: Replace(C1b, C2b) C2bastien = ({desktop}, {Bastien}, quiet) 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 17
  • 18. Distribution Script: • Set of distribution primitives • Distribution Primitive • Definition: basic operations that manipulates parts or wholes of a user interfaces at run-time • Part of a catalog • Example of distribution primitive: {Display td(name:p1 button(name:b_c glue:e text:"Create:"))} {Display entry(name:e_c glue:w bg:white init:"Own game" handle:HEntry return:R) #p1} Operation – Widget - Property:Value - #Location 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 18
  • 19. Name Effect Display Display an item in one or more UIs Undisplay Hide an item from one to many UIs Move Move an item from a UI to another one Copy Copy an item of an UI to another one Insert Insert an item in a container of a UI Switch Exchange two components in the same or different UIs Merge Merge two UIs together Separate Explode a UI in two or more separated UIs 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 19
  • 20. A distributed Pictionary: • 3 roles: • The drawer • The observer • The guesser 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 20
  • 21. A distributed Pictionary: • 3 roles: • The drawer: allowed to draw in the application (+drawing bar) • The observer: allowed to see the drawing • The guesser: allowed to see the drawing and suggest words 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 21
  • 22. A distributed Pictionary: Player2 Event: Player1 connects Action: execute Distribution Script 1 Player connects No game started Condition: More than 2 players connected Game started 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 22
  • 23. Distribution Script 1: {Display td(name:p1 button(name:b_c glue:e text:"Create:"))} {Display entry(name:e_c glue:w bg:white init:"Own game” handle:HEntry return:R) #p1} {Display lr(name:create_game b_c e_c)#p1} {Display td(name:p1 create_game td(name:join) label(name:status glue:swe text:"Waiting for a game“ bg:white) ) } for I in {DiscoverGames} do {Display button(name:b#I glue:nswe text:"Join "#I} #join} end 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 23
  • 24. A distributed Pictionary: Event: Player2 connects Action: execute Distribution Script 2 Player connects No game started Condition: More than 2 players connected Game started 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 24
  • 25. Distribution Script 2: {Copy p1 td(name:p2)} 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 25
  • 26. A distributed Pictionary: Event: Player1 or 2 starts the game Action: execute Distribution Script 3 Player connects No game started Condition: More than 2 players connected Game started 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 26
  • 27. Distribution Script 3: {Undisplay create_game#p1} {Update status "Running game: "#Name} {Display td(name:observer lr(name:enter_word glue:nwe bg:white label(bg:white text:"Enter word: ") entry(glue:w bg:white init:"House“ handle:HEW)) lr(name:start_found bg:white glue:new button(glue:e text:"Start") button(glue:w text:"Found !")) lr(name:remaining_time bg:white glue:swe label(glue:e bg:white text:"Remaining time: ") label(glue:w bg:white text:"02:00"))) #p1} {Display td(name:p1 create_game observer status)} 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 27
  • 28. A distributed Pictionary: • Simple example • Only 2 players 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 28
  • 29. A distributed Pictionary: • Complex example • 4 players • 2 teams (A - B) • 2 players in Team A • 2 players in Team B 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 29
  • 30. Concepts • Distribution Graph • Distribution State • Distribution Primitive (distribution operation) • Distribution Script • Complex concepts with several items: • Devices • User Interface components • Roles • Reusable: others can reuse the idea or extends the concepts • Need for validation with a real game/application 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 30
  • 31. 18/05/2012 RCIS 2012 – Valencia, Spain, May 17th 31

Notes de l'éditeur

  1. WS = workspace
  2. L in L_uimeans « Laptop »