Next: Solutions
Up: Smart Office Spaces
Previous: What is a Smart
We see four broad challenges to creating effective smart spaces in an
office environment. All four challenges involve eliminating dependencies
that hinder flexibility. In a smart space, with a potentially large number
of components, even a modest failure rate can lead to a system where
the inability to do work is chronic. One way to avoid this problem is to
reduce failure rates (which is often hard). Another approach, which we
are pursuing, is to vigorously avoid creating dependencies.
The four challenges (all forms of dependencies) that concern us are:
- Power dependencies:
- Power is obviously a pressing concern in smart spaces. With dozens of
devices cooperating, the likelihood (with today's technology) that one of
them will have a battery running low or will need to be plugged in, is high.
Another way to think of this problem is that fully untethered dynamic
computing requires us to get rid of two wires: the communications wire
and the power wire. Embedded wireless gets rid of the communications wire.
We still need to worry about power.
- Network dependencies:
- A lot of problems in smart spaces get easier if you assume that a smart
device is constantly attached to the wider Internet. In particular,
it is easy to assume that smart devices are configured by means of a
network device configuration
protocol such as the Dynamic Host Configuration Protocol
(DHCP). Furthermore, if
a device lacks some piece of information (an applet, some data,
or a name-to-address binding) it
is often convenient to assume that this information can be retrieved
from some repository. Authentication of a user or a device may require
an authentication certificate to be downloaded from a certificate
authority.
But there are a number of environments where devices may not be connected
to the Internet, or may have only intermittent connectivity. In our
view, it is unacceptable to design a system that requires Internet
connectivity to function correctly.
- Peripheral dependencies:
- It is very easy to build in dependencies on certain types of peripherals.
The most obvious example is the keyboard. Many applications unnecessarily
assume the user has a keyboard. Any input device (mouse, voice input,
or keyboard) should suffice, especially if the user wants to do something
simple like deleting a slide from a presentation.
- Application dependencies:
- The major reason many people haul PCs around is that the PC contains
the code for all the applications they use. If we are really going to
make smart spaces work, we need to solve the problem of the tight coupling
between applications and the files they produce or maintain.
An example may help to illustrate this point. Suppose you are going to
give a presentation. In the ultimate smart space, all that should be required
is a self-reading diskette cartridge that contains a copy of the presentation,
a projection device such as a flat screen or projector and some mechanism,
such as a button, to advance the slides. But in today's world, this
configuration isn't sufficient. You'll also need the software that generated
the presentation and knows how to read and display the presentation file.
We think that's undesirable: it creates a situation in which it appears to
the user (who can see the diskette, projector and button) that she has
everything necessary to give the presentation, but in fact it is not possible.
Next: Solutions
Up: Smart Office Spaces
Previous: What is a Smart
Alden W. Jackson
1999-03-19