by Ian Pratt and Steve Hand (University of Cambridge, UK)
We aim to design a a programming model that supports the development of applications constructed from mobile sentient objects. This includes the development of an appropriate object model and communication paradigm, the design of a way to express QoS properties in the model, and the development of a global model for QoS assurance. Secondly we intend to design an open, scalable system architecture that reflects the heterogeneous structure and performance of the networks used to support the programming model.
Events are a natural concept of daily life and are well suited for the interaction with computer systems, especially in mobile environments, where the focus of the user may be on different tasks. We are mainly interested in spatial events, i.e. events which depend on the location or the spatial context, e.g. people entering/leaving rooms or passing by some specific location. The observation of such spatial events and the notification of mobile users is a basic mechanism for many location-aware applications. Within this project concepts and architectures for event observation and user notification are developed. A special focus is on the observation of events based on information that is distributed on different nodes, e.g. in a location-aware system the information about mobile and stationary objects may be kept on different servers, but in order to observe an event the information from both servers is necessary. An important step in this direction is the development of an event specification language with which the events and their semantics can be described.
We have pioneered event-based middleware since the early 1990's. The Cambridge event architecture (CEA) proposed that events should be programmed as typed, programming language objects, automatically converted as required for transport by middleware services and we investigated a number of ways of achieving this using standard middleware. Our EPSRC grant "Global computing using events" ended in December 2001. The main result was an architecture for federating event systems. We are also working on a large-scale, event-based middleware, Hermes. The approach is to use XML for event transport among a network of brokers. Hermes is built on a peer-to-peer overlay network. Programmers in end systems may use a standard programming language, such as Java, and XPath is used to support automatic conversion. We are working on distributed filtering for notifications and advertisments, using P2P to define rendezvous, and an event composition service.
The SCRIBE system developed at Microsoft Research Cambridge is a generic, scalable and efficient event notification system. It provides application level multicast based on the publish-subscribe paradigm. SCRIBE is self-organizing, flexible, highly scalable and efficient. It is built on top of Pastry, a generic, scalable, self-organizing substrate for peer-to-peer applications. Applications of SCRIBE include instant messaging/presence notification, news broadcast and stock quote dissemination.
[Bacon 2000] J. Bacon, K. Moody, J. Bates, R. Hayton, C. Ma, A. McNeil, O. Seidel, and M.Spiteri. Generic Support for Distributed Applications. IEEE Computer. March 2000. pp. 68-76.
[Bacon 2001] J. Bacon, A. Hombrecher , C. Ma, K. Moodyand, and W. Yao. Event Storage and Federation using ODMG. Proc. of the 9th International Workshop on Persistent Object Systems, Design, Implementation and Use. Lillehammer, Norway. Sept 2000. Lecture Notes in Computer Science vol. 2135. pp. 265-281.
[Carzaniga 2001] A. Carzaniga, D. S. Rosenblum, and A. L. Wolf. Design and Evaluation of a Wide-area Event Notification Service. ACM Transactions on Computer Systems 19(3). 2001. pp. 283-331.
[Cugola 2001] G. Cugola, E. D. Nitto, and A. Fuggetta. The JEDI Event-based Infrastructure and its Application to the Development of the OPSS WFMS. IEEE Transactions on Software Engineering 27(9). 2001. pp. 827-850.
[Haahr 2000] M. Haahr, R. Meier, P. Nixon, V. Cahill, and E. Jul. Filtering and Scalability in the ECO Distributed Event Model. Proc. of the Int. Symp. on Software Eng. for Parallel and Dist. Systems (PDSE/ICSE2000). Limerick, Ireland. 2000. pp. 8395.
Maintained by Rogério de Lemos (r.delemos@ukc.ac.uk)
Last
updated 4 November, 2002