next up previous
Next: B. Deliverables Up: No Title Previous: Section II. Summary

A. Innovative Claims

In this project, we will address the problem of composing new collaborative systems from existing single-user and collaborative systems. We propose to develop a new software abstraction, called the collaboration bus, that makes it easy to compose collaborative systems.

The collaboration bus will be an extensible infrastructure that provides general definitions of collaboration services, default implementations of these services, rules for interconnecting these services, and mechanisms for extending the set of supported services.

The set of generic services supported by the bus will include (a) a data model for defining shared workspaces consisting of structured objects; (b) a user interface model that allows shared objects to be manipulated using user interfaces that support text, graphics, audio, video, and virtual reality; (c) a coupling model that enables users in a joint session to share data and user-interface objects and controls their interactions to ensure security and consistency contraints are not violated; (d) migration and replication mechanisms that ensure that the bus does not become a bottleneck; and (e) real-time services, consisting of scheduling algorithms and network protocols, for ensuring real-time coupling among the collaborators.

Previous work has addressed the heterogeneity problem in other domains such as software engineering, operating systems, and database systems. Our project will extend this research by providing an interconnection technology for the collaboration domain. It will offer two forms of interoperability: (1) inter-service interoperability, which will allow existing implementations of different collaboration services, such as user-interface and real-time services, to be combined in new collaborative systems; and (2) intra-service interoperability, which will resolve inconsistencies among different, competing instances of the same service, such as explicit and implicit schemes for creating joint sessions, provided by different existing systems that need to interoperate with each other.

We will not only define and implement the collaboration bus, but also evaluate its efficiency, programmability, and flexibility by performing interconnection experiments among a group of existing single-user and collaborative software systems. These experiments will demonstrate inter-service interoperability among at least three different services and intra-service interoperability among at least three different instances of the same service. In particular, we will demonstrate inter-service interoperability among object-oriented Java data model, 3-D VE user interfaces build at UNC, real-time support developed at UNC, and coupling services; and intra-service interoperability among different forms of coupling implemented in state-of-the-art desktop conferencing systems offered by HP, UNC, and ODU.

We have previously investigated direct interoperation between some of these systems; and used general-purpose interconnection technology to compose collaborative virtual environments. Our previous integration experiments will give us baseline data for determining the improvements obtained with the bus.



next up previous
Next: B. Deliverables Up: No Title Previous: Section II. Summary



Prasun Dewan
Thu Sep 12 19:30:03 EDT 1996