Labscape, a ubiquitous computing environment for cell biologists, was implemented twice: once using only standard tools for distributed systems (TCP sockets and shared file systems) and once using one.world, a runtime system designed specifically to support ubiquitous applications. We analyze Labscape in terms of the system properties that are required to provide a fluid user experience. Though the two implementations are functionally and architecturally similar, we found a significant difference in the degree to which they each exhibited the required properties. The fact that one.world was not designed specifically with Labscape in mind yet was found to support the application's requirements well suggests that ubiquitous applications have many aspects in common, and can benefit from a system support layer for coping with dynamic environments. We present, in detail, the concepts embodied in one.world that we have found to be most important for Labscape, and how some of these concepts might be extended.
Labscape is a smart environment that we designed to improve the experience of people who work in a cell biology laboratory. Our goal in creating it was to simplify, laboratory work by making information available where it is needed and by collecting and organizing data where and when it is created into a formal representation that others can understand and process. By helping biologists produce a more complete record of their work with less effort, Labscape is designed to foster improved collaboration in conjunction with increased individual efficiency and satisfaction. A user-driven system, although technologically conservative, embraces a central goal of ubiquitous computing: to enhance the ability to perform domain tasks through fluid interaction with computational resources. Smart environments could soon replace the pen and paper commonly used in the laboratory setting.