Download presentation
Presentation is loading. Please wait.
Published byLesley Willis Modified over 7 years ago
1
ICrafter: A Service Framework for Ubiquitous Computing Environments
Shankar Ponnekanti, Brian Lee, Armando Fox, Pat Hanrahan, Terry Winograd (Stanford Univ.)
2
Outline What Why How Example Model and Terminology 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
UI’s must reflect workspace configuration
10
Aggregation May seem individual UI’s 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 ) UI’s 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 Interface Manager Network Service Appliance
17
Interface Manager Generator Selector Generator Repository
RequestUI(appl, target services) Generator Processor ReturnUI User Appliance
18
Example Generator <form action=… > {
S1 = lookup_cmx (“Proj1”, “src1”) S2 = lookup_cmx(“Proj1”, “src2”) } <P> Select one of the following: <input type=radio .. >{print $S1} <input type=radio .. >{print $S2} …. </form> <form action=…> <P> Select one of the following: <input type=radio>Left screen <input type=radio>Right screen …. <//form>
19
Generators: Handling Appliance Heterogeneity
Existing work: two extremes of quality/effort tradeoff UI’s for each service for every appliance (Jini, UPnP, Hodes et al [Mobicom97] Generic appliance-independent service descriptions (Roman et al [WMCSA00]
20
Specialization Hierarchy
Services Appliances HTML SUIML FunkyML HPPrinter More Effort Better Quality Printer DataConsumerDevice Device
21
Appliance Specificity
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 Service Specificity Appliance 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(light, “location”)
lookup_cmx(projector, “source1”)
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:
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.