This project will focus on the kernel of the collaboration-bus. It will define a set of media-independent bus mechanisms, which will then be used by higher-level media-dependent layers developed by some of the projects listed below. In particular, it will provide mechanisms for defining a hierarchy of sharing types, and, when possible, provide translations among objects of different types. For instance, it will define a hierarchy of concurrency control types such as (coarse-grained) floor control and fine-grained concurrency control, and translate a single coarse-grained floor control event to, possibly multiple, fine-grained control events. It will also develop mechanisms for dynamically replicating and migrating the bus components and interfacing existing applications to the bus. We currently plan to implement the kernel on top of the Java programming environment (which provides portability) and the Polylith software bus (which provides general, collaboration-independent, interoperability.)
This project will give you experience with research in collaboration, interoperability, and Java. It will build on an initial Java distributed object layer built by Sid Chatterjee. For more information contact Prasun Dewan. Dave Stotts, Kevin Jeffay, or Sid Chatterjee.