Abstract
This article describes an infrastructure that supports the creation of interoperable systems while requiring only limited prior agreements about the specific forms of communication between these systems. Conceptually, our approach uses a set of “meta-interfaces”—agreements on how to exchange new behaviors necessary to achieve compatibility at runtime, rather than requiring that communication specifics be built in at development time—to allow devices on the network to interact with one another. While this approach to interoperability can remove many of the system-imposed constraints that prevent fluid, ad hoc use of devices now, it imposes its own limitations on the user experience of systems that use it. Most importantly, since devices may be expected to work with peers about which they have no detailed semantic knowledge, it is impossible to achieve the sort of tight semantic integration that can be obtained using other approaches today, despite the fact that these other approaches limit interoperability. Instead, under our model, users must be tasked with performing the sense-making and semantic arbitration necessary to determine how any set of devices will be used together. This article describes the motivation and details of our infrastructure, its implications on the user experience, and our experience in creating, deploying, and using applications built with it over a period of several years.
- Balfanz, D., Smetters, D. K., Stewart, P., and Wong, H. C. 2002. Talking to strangers: Authentication in ad hoc wireless networks. In Proceedings of the Network and Distributed Systems Security Symposium (NDSS'02).Google Scholar
- Bandelloni, R., Mori, G., and Paterno, F. 2005. Dynamic generation of web migratory interfaces. In Proceedings of the Conference on Human Computer Interaction with Mobile Devices and Services (MobileHCI). Google ScholarDigital Library
- Bharat, K. A. and Cardelli, L. 1995. Migratory applications. In Proceedings of the ACM Symposium on User Interface Software and Technology (UIST'95). ACM, New York, 133--142. Google ScholarDigital Library
- Black, J. A., Edwards, W. K., Newman, M. W., Sedivy, J. Z., and Smith, T. F. 2003. Supporting extensible public display systems with Speakeasy. In Public and Situated Displays: Social and Interactional Aspects of Shared Display Technologies, K. O'Hara, et al. Eds., Kluwer Academic, Amsterdam.Google Scholar
- Bluetooth Consortium. 2001. Specification of the Bluetooth System, Version 1.1 Core. http://www.bluetooth.com.Google Scholar
- Borenstein, N. and Freed, N. 1992. MIME (multipurpose internet mail extensions): Mechanisms for specifying and describing the format of internet messages. Internet RFC 1341. Google ScholarDigital Library
- Box, D., Ehnebuske, D., Kakivaya, G., Layman, A., Mendelsohn, N., Nielsen, H. F., Thatte, S., and Winer, D. 2000. W3C note: Simple object access protocol (SOAP) 1.1. World Wide Web Consortium.Google Scholar
- Chakraborty, D. and Joshi, A. 2001. Dynamic service composition: state-of-the-art and research directions. Tech. rep.TR-CS-01-19, CSEE, University of Maryland, Baltimore.Google Scholar
- Ducheneaut, N., Smith, T., Begole, J., Newman, M. W., and Beckmann, C. 2006. The Orbital browser: Composing Ubicomp services using only rotation and selection. In Proceedings of the ACM Conference on Human-Factors in Computing Systems (CHI'06). ACM, New York, 321--326. Google ScholarDigital Library
- Edwards, W. K., Newman, M. W., Sedivy, J. Z., Smith, T. F., and Izadi, S. 2002a. Challenge: Recombinant computing and the Speakeasy approach. In Proceedings of the 8th ACM International Conference on Mobile Computing and Networking (MOBICOM). ACM, New York. Google ScholarDigital Library
- Edwards, W. K., Newman, M. W., Sedivy, J. Z., Smith, T. F., Balfanz, D., Smetters, D. K., Wong, H. C. and Izadi, S. 2002b. Using Speakeasy for ad hoc peer-to-peer collaboration. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work. ACM, New York, 256--265. Google ScholarDigital Library
- Edwards, W. K., Bellotti, V., Dey, A. K., and Newman, M. W. 2003. Stuck in the middle: The challenges of user-centered design and evaluation of infrastructure. In Proceedings of the ACM Conference on Human Factors in Computing Systems. ACM, New York, 297--304. Google ScholarDigital Library
- Edwards, W. K., Newman, M. W., Sedivy, J. Z. and Smith, T. F. 2004. Supporting serendipitous integration in mobile computing environments. Int. J. Hum. Comput. Stud. 60, 666--700.Google ScholarCross Ref
- Edwards, W. K., Newman, M. W., Sedivy, J. Z., and Smith, T. F. 2005. An extensible set- top box platform for home media applications. IEEE Trans.Consumer Electron. 51, 4, 1175--1181. Google ScholarDigital Library
- Edwards, W. K. 2006. Discovery systems in ubiquitous computing. IEEE Pervasive Comput. 5, 2, 70--77. Google ScholarDigital Library
- Fox, A., Goldberg, I., Gribble, S. D., Lee, D. C., Polito, A., and Brewer, E. A. 1998. Experience with Top Gun Wingman: A proxy-based graphical web browser for the 3com Palm Pilot. In Proceedings of the Middleware Conference. Google ScholarDigital Library
- Gelernter, D. 1985. Generative communication in Linda. ACM Trans. Program. Languages Syst. 7, 1, 80--112. Google ScholarDigital Library
- Gong, L. 1999. Inside Java 2 Platform Security: Architecture, API Design, and Implementation. Addison-Wesley, Reading, MA. Google ScholarDigital Library
- Gribble, S. D., Welsh, M., Von Behren, J. R., Brewer, E. A., Culler, D., Borisov, N., Czerwinski, S., Gummadi, R., Hill, J., Joseph, A., Katz, R. H., Mao, Z. M., Ross, S. and Zhao, B. 2001. The Ninja architecture for robust internet-scale systems and services. Comput. Netw. 35, 4, 473--497. Google ScholarDigital Library
- Harmonia Inc. 2000. User interface modeling language 2.0 draft specification. http://www.uiml.org/specs/uiml2/index.htm.Google Scholar
- Han, R., Perret, V., and Naghshineh, M. 2000. WebSplitter: A unified XML famework for multi-device collaborative web browsing. In Proceedings of the ACM Conference on Computer Supported Cooperative Work (CSCW). ACM, New York, 221--230. Google ScholarDigital Library
- Hodes, T. and Katz, R. H. 1999. A document-based framework for internet application control. In Proceedings of the 2nd USENIX Symposium on Internet Technologies and Systems (USITS). 59--70. Google ScholarDigital Library
- Huang, A. C., Ling, B. C., Barton, J. and Fox, A. 2001. Making computers disappear: appliance data services. In Proceedings of the 7th ACM/IEEE International Conference on Mobile Computing and Networking (MOBICOM). Google ScholarDigital Library
- Humble, J., Crabtree, A., Hemmings, T., Akesson, K.-P., Koleva, B., Rodden, T. and Hansson, P. 2003. Playing with the bits: User-configuration of ubiquitous domestic environments. In Proceedings of the 5th International Conference on Ubiquitous Computing.Google Scholar
- Internet Engineering Task Force (IETF). 2005. Zeroconf Working Group. http://www.zeroconf.org.Google Scholar
- Johanson, B., Fox, A., and Winograd, T. 2002. The interactive workspaces project: experiences with ubiquitous computing rooms. IEEE Pervasive Comput. 1, 2, 71--78. Google ScholarDigital Library
- Jeronimo, M. and Weast, J. 2003. UPnP Design by Example. Intel Press.Google Scholar
- Kiciman, E., Melloul, L., and Fox, A. 2001. Towards zero-code service composition. In Proceedings of the Workshop on Hot Topics on Operating Systems (HOTOS). Google ScholarDigital Library
- Kiczales, G., Des Rivieres, J., and Bobrow, D. G. 1991. The Art of the Metaobject Protocol. MIT Press, Cambridge, MA. Google ScholarDigital Library
- Kindberg, T. and Barton, J. 2001. A web-based nomadic computing system. Comput. Netw. 35, 4, 443--456. Google ScholarDigital Library
- Kindberg, T. and Fox, A. 2002. System software for ubiquitous computing. IEEE Pervasive Comput. 1, 1, 70--81. Google ScholarDigital Library
- Lee, K., Lamarca, A., and Chambers, C. 2003. HydroJ: Object-oriented pattern matching for evolvable distributed systems. In Proceedings of the ACM Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, New York. Google ScholarDigital Library
- Liskov, B. and Wing, J. M. 1994. A behavioral notion of subtyping. ACM Trans. Program. Lang. 16, 6, 1811--1841. Google ScholarDigital Library
- MacKay, W. E. 1990. Patterns of sharing customizable software. In Proceedings of the Conference on Computer Supported Cooperative Work. ACM, New York. Google ScholarDigital Library
- MacKay, W. E. 1991. Triggers and barriers to customizing software. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI'91). ACM, New York, 153--160. Google ScholarDigital Library
- Mao, Z. M. and Katz, R. H. 2002. Achieving service portability using self-adaptive data paths. IEEE Comm. 40, 1, 108--114. Google ScholarDigital Library
- Newman, M. W., Izadi, S., Edwards, W. K., Sedivy, J. Z., and Smith, T. F. 2002a. User interfaces when and where they are needed: An infrastructure for recombinant computing. In Proceedings of the 15th ACM Symposium on User Interface Software and Technology (UIST'02). ACM, New York. Google ScholarDigital Library
- Newman, M. W., Sedivy, J. Z., Edwards, W. K., Smith, T. F., Marcelo, K., Neuwirth, C. M., Hong, J. I. and Izadi, S. 2002b. Designing for serendipity: Supporting end-user configuration of ubiquitous computing environments. In Proceedings of the Designing Interactive Systems Conference (DIS'02). Google ScholarDigital Library
- Newman, M., Ducheneaut, N., Edwards, W. K., Sedivy, J., and Smith, T. 2007. Supporting the unremarkable: Experiences with the Obje display mirror Personal Ubiquitous Comput. (DOI:10.1007/s00779-006-0117-0). To appear. Google ScholarCross Ref
- Newman, M., Elliott, A., and Smith, T. F. 2008. Providing an integrated user experience of networked media, devices, and services through end-user composition. In Proceedings of the International Conference on Pervasive Computing (PERVASIVE'08). Google ScholarDigital Library
- Nichols, J., Myers, B. A., Higgins, M. Hughes, J., Harris, T. K., Rosenfeld, R., and Pignol, M. 2002. Generating remote control interfaces for complex appliances. In Proceedings of the ACM Symposium on User Interface Software and Technology (UIST'02). ACM, New York, 161--170. Google ScholarDigital Library
- Object Management Group. 1995. CORBA: The common object request broker architecture, Rev. 2.0.Google Scholar
- Ockerbloom, J. 1998. Mediating among diverse data formats. Tech.rep., CMU-CS-98-10, Carnegie Mellon University.Google Scholar
- Olsen, D. R., Jeffries, S., Nielsen, T., Moyes, W., and Frederickson, P. 2000. Crossmodel interaction with XWeb. In Proceedings of the ACM Symposium on User Interface Software and Technology (UIST). ACM, New York, 191--200. Google ScholarDigital Library
- Omojokun, O. and Dewan, P. 2003. A high-level and flexible framework for dynamically composing networked devices. In Proceedings of the 5th IEEE Workshop on Mobile Computing Systems and Applications (WMCSA) .Google Scholar
- Ponnekanti, S. R., Lee, B., Fox, A., Hanrahan, P., and Winograd, T. 2001. ICrafter: A service framework for ubiquitous computing environments. In Proceedings of the UBICOMP Conference. 56--75. Google ScholarDigital Library
- Ponnekanti, S. R., and Fox, A. 2004. Interoperability among independently evolving web services. In Proceedings of the 5th ACM/IFIP/USENIX International Conference on Middleware. 331--351. Google ScholarDigital Library
- Rekimoto, J., Ayatsuka, Y., Kohno, M., and Oba, H. 2003. Proximal Interactions: A direct manipulation technique for wireless networking. In Proceedings of the INTERACT Conference. Richardson, T., Stafford-Fraser, Q., Wood, K. and Hopper, A. 1998. Virtual network computing. IEEE Internet Comput. 2, 1.Google Scholar
- Rose, M. 2001. RFC 3080: The blocks extensible exchange protocol core. Internet Engineering Task Force (IETF). Google ScholarDigital Library
- Smetters, D. K. and Grinter, R. E. 2002. Moving from the design of usable security technologies to the design of useful secure applications. In Proceedings of the ACM New Security Paradigms Workshop. ACM, New York. Google ScholarDigital Library
- Smetters, D. K., Balfanz, D., Durfee, G., Smith, T., and Lee, K. 2006. Instant matchmaking: Simple secure virtual extensions to ubiquitous computing environments. In Proceedings of the 8th International Conference on Ubiquitous Computing (UBICOMP). Lecture Notes in Computer Science, vol. 4206, Springer, Berlin, 477--494. Google ScholarDigital Library
- Stajano, F. and Anderson, R. J. 1999. The resurrecting duckling: Security issues for ad hoc wireless networks. In Proceedings of the 7th Security Protocols Workshop. Lecture Notes in Computer Science, vol. 1796, Springer, Berlin, 172--194. Google ScholarDigital Library
- Sun Microsystems. 1999. Jini discovery and join specification.Google Scholar
- Swindells, C., Inkpen, K. M., Dill, J. C., and Tory, M. 2002. Use that there! Pointing to establish device identity. In Proceedings of the ACM Symposium on User Interface Software and Technology (UIST). ACM, New York. Google ScholarDigital Library
- Truong, K. N., Huang, E. M., and Abowd, G. D. 2004. CAMP: A magnetic poetry interface for end-user programming of capture applications for the home. In Proceedings of the 6th International Conference on Ubiquitous Computing (UBICOMP). 143--160.Google Scholar
- UPNP Forum. 2005. MediaServer V 1.0 and Media Renderer V 1.0. http://www.upnp.org/standardizeddcps/mediaserver.asp.Google Scholar
- Universal Serial Bus Implementer's Forum. 2000. Universal serial bus revision 2.0 specification.Google Scholar
- Venners, B. 2005. The ServiceUI API specification, version 1.1a. http://www.artima.com/jini/serviceui/Spec.html.Google Scholar
- Voida, S., Edwards, W. K., Newman, M. W., Grinter, R. E., and Ducheneaut, N. 2006. Share and share alike: Exploring the user interface affordances of file sharing. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI). ACM, New York. Google ScholarDigital Library
- Waldo, J. 1999. The Jini architecture for network-centric computing. Comm. ACM, 76--82. Google ScholarDigital Library
- Weiser, M. and Brown, J. S. 1996. Designing calm technology. http://powergrid.electriciti.com/1.01.Google Scholar
- Whitten, A. and Tygar, J. D. 1999. Why Johnny can't encrypt: A usability evaluation of PGP 5.0. In Proceedings of the 9th USENIX Security Symposium. 23--26. Google ScholarDigital Library
- Wing, J. M. and Ockerbloom, J. 2000. Respectful type converters. IEEE Trans. Softw. Engin. 28, 7, 579--593. Google ScholarDigital Library
- Wollrath, A., Riggs, R., and Waldo, J. 1996. A distributed object model for the Java system. USENIX Comput. Syst. 9. Google ScholarDigital Library
Index Terms
- Experiences with recombinant computing: Exploring ad hoc interoperability in evolving digital networks
Recommendations
Designing for serendipity: supporting end-user configuration of ubiquitous computing environments
DIS '02: Proceedings of the 4th conference on Designing interactive systems: processes, practices, methods, and techniquesThe future world of ubiquitous computing is one in which we will be surrounded by an ever-richer set of networked devices and services. In such a world, we cannot expect to have available to us specific applications that allow us to accomplish every ...
Discovery Systems in Ubiquitous Computing
To meet the ubiquitous computing vision of the disappearing computer, our systems must be as free as possible from human administration. This means that devices must be able to work together without explicit configuration. Discovery lets services and ...
Making infrastructure visible for nomadic work
In this study we revisit Weiser's (1991) [5] vision of seamlessly integrated computing. We focus on nomadic workers who rely extensively on mobile technologies to conduct work. Using Star and Ruhleder's (1996) [10] properties of infrastructure, we ...
Comments