Communications Project

Document Type:Master's Thesis
Name:Philip L. Isenhour
Title:Sieve: A Java-Based Framework for Collaborative Component Composition
Degree:Master of Science
Department:Computer Science
Committee Chair: Clifford A. Shaffer
Committee Members:Marc Abrams
Dennis Kafura
Keywords:Computer-Supported Cooperative Work, Java
Date of defense:February 11, 1998
Availability:Release the entire work immediately worldwide.


This thesis investigates the design objectives for a collaborative workspace based on Sun Microsystems' Java programming language and JavaBeans component architecture. The feasibility of a collaborative component workspace based on these objectives is demonstrated by Sieve, a Java-based framework for collaborative applications. Sieve allows multiple users to collaboratively add, edit, and connect components on a shared two-dimensional workspace.

Sieve introduces a technique that leverages standard JavaBeans mechanisms to support use of ``collaboration-unaware'' software components. With this technique, components need only conform to basic JavaBeans conventions in order to be shared across collaborating sessions -- they need not be programmed specifically for collaboration. Sieve also allows component developers to provide custom mechanisms for sharing components. Sieve is extensible in other ways, allowing developers to introduce new mechanisms for creating, displaying, editing, and connecting components.

Three collaborative applications built on this framework are presented: a visualization environment, a circuit simulation, and a set of tools for composing arbitrary software components. The visualization environment allows construction of dataflow networks from an extensible set of modules. Modules may read data from a variety of sources, filter and transform the data in various ways, and generate visualizations. The circuit simulation allows users to collaboratively construct and analyze simple direct-current circuits. Finally, the ``BeanBox Emulation'' application reproduces the basic component-linking functionality of Sun's BeanBox builder tool. With this application, users may collaboratively edit and link objects that conform to standard JavaBeans conventions.

List of Attached Files


The author grants to Virginia Tech or its agents the right to archive and display their thesis or dissertation in whole or in part in the University Libraries in all forms of media, now or hereafter known. The author retains all proprietary rights, such as patent rights. The author also retains the right to use in future works (such as articles or books) all or part of this thesis or dissertation.