Flexible Collaboration Transparency: Supporting Worker Independence in Replicated Application-Sharing Systems

TR Number

Date

1998-12-15

Journal Title

Journal ISSN

Volume Title

Publisher

Virginia Tech

Abstract

This dissertation analyzes the usefulness of existing "conventional" collaboration-transparency systems, which permit the shared use of legacy, single-user applications. I find that conventional collaboration-transparency systems do not use network resources efficiently, and they impose an inflexible, tightly coupled style of collaboration because they do not adequately support important groupware principles: concurrent work, relaxed WYSIWIS, group awareness, and inherently collaborative tasks. This dissertation proposes and explores solutions to those deficiencies.

The primary goal of this work is to maintain the benefits of collaboration transparency while relieving some of its disadvantages. To that end, I present an alternate implementation approach that provides many features previously seen only in applications specifically designed to support cooperative work, called collaboration-aware applications. The new approach uses a replicated architecture, in which a copy of the application resides on each user's machine, and the users' input events are broadcast to each copy. I discuss solutions to certain key problems in replicated architectures, such as maintaining consistency, unanticipated sharing, supporting late-joiners, and replicating system resources (e.g., files, sockets, and random number generators). To enhance the collaborative usability of a legacy application, the new approach transparently replaces selected single-user interface objects with multi-user versions at runtime. There are four requirements of an application platform needed to implement this approach: process migration, run-time object replacement, dynamic binding, and the ability to intercept and introduce low-level user input events. As an instance of this approach, I describe its incorporation into a new Java-based collaboration-transparency system, called Flexible JAMM (Java Applets Made Multi-user).

This dissertation reports the results of a controlled empirical study that evaluated the usefulness of Flexible JAMM versus a representative conventional collaboration-transparency system, Microsoft NetMeeting. The results validate that Flexible JAMM meets its goals, and uncover usability problems in both systems, particularly with respect to using floor control. Additionally, the dissertation reports the results of an informal study that evaluated using Flexible JAMM as a groupware toolkit.

This dissertation demonstrates that it is possible to bring collaboration transparency closer to the advantages afforded by collaboration awareness. Furthermore, the prototype system demonstrates that collaboration-aware toolkits can include multi-user versions of some standard single-user components that require no collaboration-specific programming by the toolkit user. Thus, the results of this research advance the state of the art in both collaboration-transparency systems and collaboration-aware toolkits.

Description

Keywords

usability, application sharing, groupware, collaboration transparency, Java, computer-supported cooperative work

Citation