210 likes | 373 Views
Creating ubicomp systems. Elements of research. Problem Goal Hypotheses Approach. Why build ubicomp systems?. Problem Address problem or societal need Goal Prototype Hypotheses Test hypotheses Approach User studies (mobile users, public) Datasets Test limits of technologies.
E N D
Elements of research • Problem • Goal • Hypotheses • Approach
Why build ubicomp systems? • Problem • Address problem or societal need • Goal • Prototype • Hypotheses • Test hypotheses • Approach • User studies (mobile users, public) • Datasets • Test limits of technologies
What kind of system? • The real thing • Prototype: • Low fidelity prototype • Video (e.g. Tap input as an embedded interaction method for mobile devices) • Rapid prototype • Wizard of Oz (e.g. The effects of speech interface accuracy on driving performance) • Almost the real thing (e.g. Lucid Touch)
Lucid Touch • http://www.youtube.com/watch?v=RsNFZAEssPQ
Elements of a good system • Semantic Rubicon: • What can the system know about the world and user? • What does the user know about the system? • Interactions of the two?
The system side • Seamful design • What to show the user? • Pessimistic: only what is known to be correct • Optimistic: everything as though it was all correct • Cautious: present uncertainty • Opportunistic: exploit uncertainty
The user side • When to involve the user? • Frequency and inconvenience • Speech recognition accuracy low/high • Severity of consequences • “Lights and siren!” • Reliability of system decisions • Are you sure you should bother me? • Acceptability of automating tasks • Parking, driving
Example: Search Vox • T. Paek, B. Thiesson, Y. Ju & B. Lee. Search Vox: Leveraging multimodal refinement and partial knowledge for mobile voice search.Proceedings of User Interface Software and Technology (UIST), 2008 • Video • Tim Paek, Microsoft Research
“It is always runtime” • Need careful startup? That’s a problem. • Sporadically available elements? Handle gracefully. • What if individual elements fail/are disconnected? • How do you handle data when a source is disconnected and when reconnected? • Reconnection example: epidemic propagation • Identify version mismatches.
Debugging • Log files • Heartbeat • Status displays (e.g. LED, sound) • Diagnostic interfaces • Remote access • Externalize state or communications (e.g. publish/subscribe)
Debugging: P54 examples • Log files • Standard • Heartbeat • Observe interactions with infrastructure • Status displays (e.g. LED, sound) • User interface
Debugging: P54 examples • Diagnostic interfaces • Sniffer • Remote access • Security requirements prevent live access • File exchange servers • Jacob LeBlanc, Thomas E. Hurton, W. Thomas Miller, III, Andrew L. Kun, “Design and Evaluation of a Vehicle Data Distribution and Collection System,” Pervasive 2007
Debugging: P54 examples • Externalize state or communications (e.g. publish/subscribe) • P54 server could be used for this purpose: e.g. recover tag bank
Debugging: P54 examples • Externalize state or communications (e.g. publish/subscribe) • P54 server could be used for this purpose: e.g. recover tag bank