New Collaborative Technology Options Using Java Objects
Corresponding Author: Jackson, Larry
Author(s): Jackson, L.
Organisation(s): NCSA, University of Illinois (USA)
The National Center for Supercomputing Applications (NCSA) has been compute host and research colleague for thousands of computational scientists in many disciplines. Now, as the National Computational Science Alliance, University and corporate researchers are coordinating work in teams, and are utilizing distributed heterogeneous resources. We built the Habanero system to facilitate construction of real-time collaborative tools across the variety of platforms these people use. Although any number of document collection facilities existed, there was no all-platform way to share real-time interactions with numerical visualizations and virtual environments. As these interactions can be difficult to accurately verbalize, real-time interactive tool-based collaboration extends the expressive power significantly. The parallels in interaction within virtual CAD-based spaces are extremely strong, suggesting an immediate applicability of our work in distributed engineering design contexts.

Habanero provides the services needed by collaborative tools, including floor control, awareness, synchronization, persistence, recording/indexing/replay, and routing options. Our framework is written in Java, so a large number of platforms are supported. State information is encapsulated in serialized Java objects, and is kept synchronized across multiple clients. The clients can range from fully-replicated programs through traditional client-server architectures where the clients themselves are quite thin. Synchronicity of view of the state information is not required.

As human-induced state changes are relatively tersely describable, bandwidth consumption is minimal, and most users are very pleased with the speed of interaction. Establishing initial state can consume great amounts of bandwidth in large numerically modeled spaces, but we have experimented with some workarounds. 

We have constructed two significant tools for collaboration within 3D environments using the Java3D API. These tools display representatively sized datasets. Deployment of these tools in the Alliance's Astronomy and Environmental Hydrology communities will begin in early 1999. We have been very pleased to discover usable results are obtainable with ordinary Intel hardware running Windows NT when a nominally priced OpenGL graphics card (e.g., $150 US) is used.

Larry Jackson heads the entire group, and is Principal Investigator for the DARPA "Integrated Synchronous And Asynchronous Collaboration" grant. Edward Grossman is the principal designer of the Habanero architecture, and heads the Habanero development group. Steven Pietrowicz heads the Java3D group. Terry McLaren heads the Developer and User Support group.

This work was financed primarily by the Intelligent Collaboration & Visualization program of the US Defense Advanced Research Projects Agency. Additional funding/staffing was provided by the State of Illinois, INRIA, the US National Aeronautics and Space Administration, the DARPA Information Management program, Sun Microsystems, and the US Nuclear Regulatory Commission. Approximately 30 full-time person-years experience with Java, plus about 60 semesters of student work is contained in the present version. We are now seeking significant scale trials as the majority of this software is in an advanced stage.