Abstract: A large number of experimental (and a few commercial) distributed synchronous collaboration support systems have been developed to date for the UNIX/X environment. These systems typically fall into one of two categories: toolkits for collaborative application development, and shared window systems. Collaboration toolkits usually focus on supporting the development of collaboration-aware applications, and shared window systems are typically intended to make existing single-user (collaboration-unaware) applications available to multiple users concurrently. The two types of systems are usually developed and used independently; that is, integrated systems with the capabilities of both types of systems are rare.
This field of research is now mature enough that we can identify the major components of such systems and the functions they typically provide. In this paper we analyze a typical partitioning of function among the usual set of components, and suggest changes that can be made to this partitioning to improve the characteristics of future collaborative support systems. In the process, we find that our re-distribution of function makes it easier to develop integrated systems supporting both collaboration-aware and collaboration-unaware applications.