Presentation is loading. Please wait.

Presentation is loading. Please wait.

ICrafter: A Service Framework for Ubiquitous Computing Environments Shankar Ponnekanti, Brian Lee, Armando Fox, Pat Hanrahan, Terry Winograd (Stanford.

Similar presentations


Presentation on theme: "ICrafter: A Service Framework for Ubiquitous Computing Environments Shankar Ponnekanti, Brian Lee, Armando Fox, Pat Hanrahan, Terry Winograd (Stanford."— Presentation transcript:

1 ICrafter: A Service Framework for Ubiquitous Computing Environments Shankar Ponnekanti, Brian Lee, Armando Fox, Pat Hanrahan, Terry Winograd (Stanford Univ.)

2 Outline What Example Model and Terminology Why Challenges Contributions How Architecture Techniques

3 Example

4 Example (Contd.)

5 Model and Terminology Workspace: A physically confined environment intended for collaboration

6 Model and Terminology (contd.) Service A h/w or s/w resource Provides a useful function to end-users Example: Light, projector, browser, ppt Appliance Facility used for interaction with services Example: Laptop, PDA SUIML Swing UI Markup Language

7 Outline What? Why? Challenges Contributions How?

8 Appliance Heterogeneity Must accommodate a variety of UI languages/ modalities.

9 Workspace Heterogeneity UIs must reflect workspace configuration

10 Aggregation May seem individual UIs can be combined. However ….

11 UI(S1+S2) != UI(S1)+UI(S2) Good for individual operations Clumsy for compound operation: snap- and-display

12 UI(S1+S2) != UI(S1) + UI(S2) Transfer = snap and display in one click

13 Where We Stand Suppose n services, m appliances and w workspaces O( F(n) × m × w ) UIs F(n) is some combinatorial function of n Existing ad-hoc interaction systems: Jini, UPnP, Hodes et al (Mobicom97, USITS99), Roman et al (WMCSA00) Mostly focus on appliance heterogeneity

14 Results Offload UI selection to third-party (i.e, non-service, non-appliance) Generalize existing approaches to appliance heterogeneity Frameworks for handling workspace heterogeneity and Techniques for aggregation

15 Outline What? Why? How? Architecture Techniques

16 Architecture Network Interface Manager Service Appliance

17 Interface Manager RequestUI(appl, target services ) Interface Manager User Appliance Generator Processor ReturnUI Generator Selector Generator Repository Generator (s)

18 Example Generator { S1 = lookup_cmx (Proj1, src1) S2 = lookup _cmx(Proj1, src2) } Select one of the following: {print $S1} {print $S2} …. Select one of the following: Left screen Right screen ….

19 Generators: Handling Appliance Heterogeneity Existing work: two extremes of quality/effort tradeoff UIs for each service for every appliance (Jini, UPnP, Hodes et al [Mobicom97] Generic appliance-independent service descriptions (Roman et al [WMCSA00]

20 Specialization Hierarchy HPPrinter Printer DataConsumerDevice Device Services Appliances HTML SUIML FunkyML More Effort Better Quality

21 Generator Spectrum HPPrinterService HTML Generator HPPrinterService SUIML Generator PrinterService HTML Generator PrinterService SUIML Generator DataConsumerDevice HTML Generator DataConsumerDevice SUIML Generator Fully Generic HTML Generator Fully Generic SUIML Generator Appliance Specificity Service Specificity

22 Generators: Workspace Heterogeneity All workspace configuration stored in a centralized "context memory" (Winograd, HCI 01) Generators access configuration information using fixed APIs lookup_cmx(service, configuration property) Advantages of centralized configuration easier to administer flexible, powerful queries

23 Examples lookup_cmx(projector, source1)lookup_cmx(light, location)

24 Generators: Handling Aggregation Generators for multiple services Eg. {Camera, Display}, {Camera, Display, Display} Generators for service patterns Eg. {Camera, Display+}, {Projector * } Generators for service interface patterns Eg. {DataProducer, DataDisplayer+}

25 Simplified Example Request for {Camera, Display} Matches Camera generator, Display generator, and {DataProducer, DataDisplayer} generator

26 Simplified Example Aggregated using panels

27 Outline What? Why? How?

28 Bootstrapping

29 Future Work Authentication and synchronization Aggregation: more intelligent generator set selection: Eg. Eliminate a {DataProducer, DataDisplayer} generator if a {Camera, Display} generator exists

30 Interactive Workspaces Project Info Some software already available Major release (including ICrafter) due this month For software and other info:


Download ppt "ICrafter: A Service Framework for Ubiquitous Computing Environments Shankar Ponnekanti, Brian Lee, Armando Fox, Pat Hanrahan, Terry Winograd (Stanford."

Similar presentations


Ads by Google