|
The Mobile Bristol Application Framework is intended to facilitate the rapid development and deployment of pervasive mobile applications within our emerging infrastructure. The framework reflects an emerging, mixed-reality metaphor for Mobile Bristol applications and consists of three main components:
As well as enabling a broad set of applications and technology research, the framework itself addresses a range of related research issues, for example:
The framework is being developed by researchers from
Hewlett-Packard Laboratories and the University of Bristol and will
be available to all Mobile Bristol participants. A white paper outlining
the framework is available
We hope to provide a rapid and convenient development path for researchers, creatives, schoolchildren and others who are interested in exploring new values for context-sensitive applications and services, but may not necessarily have programming skills. In this light, we can identify the following objectives for the framework:
Our belief is that these objectives can be best met by adopting
the separation of application behaviour from the implementation of the
client devices illustrated above and demonstrated in an earlier form in
This mixed reality metaphor is embedded in the specification
language, authoring tools and clients in Mobile Bristol, easing the
development of applications that broadly correspond to the metaphor
at the inevitable cost of some loss of generality. Fine tuning the
metaphor and implementing its consequences is a significant research
activity of this part of the programme.
The specification language provided in the Mobile Bristol framework is used by the developer to define the key concepts implied in the metaphor outlined above, such as digital regions, devices, event handlers, scripts, and messages. It is derived from XML and is currently being refined and documented. The simplified fragment below illustrates an event handler in a device script that causes an audio file to start playing when the user enters a digital region corresponding to some physical area.
A rich, graphical authoring tool is essential
if we are to achieve our objective of enabling non-programmers to develop
and deploy applications in Mobile Bristol. Our approach is to develop
a integrated suite of editing tools that facilitate the definition of
particular parts of the application specification. For example, 2D and
3D views of a layout editor for the virtual world are shown below:
Perhaps the main research issue in the development of the authoring tools is to find ways to reflect the uncertainties of the mixed-reality Mobile Bristol world. For example, could we illustrate the intermittent nature of both wireless connectivity and GPS coverage in the real world to a developer by incorporating some representation of likely reception strength in the layout editor?
The purpose of the client hardware strand is to provide
a large number of client devices that can be used to support particular
application pilots or experiments. A typical client device will consist
of a processing unit, such as an iPaq handheld computer, an I2C sensor
bus, and one or more attached sensors:
At present we are attempting to provide 50 device kits including an iPaq, bus controller, GPS adapter, GPS unit, cables, and battery unit. From September 2003, we aim to introduce one or more sensors into this set of parts on a quarterly basis.
The client software that we are developing for Mobile Bristol is capable of finding, downloading and interpreting the application specifications developed on our authoring tools. It provides a set of built-in capabilities to detect and respond to changes in the sensed environment, to download, cache, render and capture a variety of media types, and to exchange messages with other clients and with services. |