BSCW-Flow: Workflow in Web-based Shared Workspaces

Thomas Kreifelts, Elke Hinrichs, Gerd Woetzel

German National Research Center for Computer Science
Sankt Augustin, Germany
{kreifelts, hinrichs, woetzel}


Abstract: We present a workflow extension to BSCW, a Web-based shared workspace system. The workflow component is based on a Petri net process model, the completion of individual work items is negotiated in a conversation for action. At the user interface the process instances appear as shared folders that allow for different types of action depending on the role of the actor and the state of the process instance. Integration into BSCW yields several distinctive advantages: accessibility from anywhere via a standard Web browser, upload of arbitrary documents into the workflow folder, easy transition between work coordination via informal sharing and via more formal workflow. BSCW-Flow is particularly suited for low effort, ad-hoc workflows across departmental or organizational boundaries.

Introduction and Motivation

There are different approaches to support cross-organizational business processes. One approach integrates existing intra-organizational workflows through implementation of interoperability standards (processes, data types, management functions; cf. WfMC's standardization work). This approach is characterized by a high effort and is justified in case of processes with a high turn-over and frequency, processes that are well understood and agreed upon. Another approach, which we follow in this paper, creates cross-organizational workflow through provision of a cross-platform, self-organized workflow tool. This approach is characterized by a low effort and is justified in case of processes with a relatively low frequency and possibly of an explorative nature. The workflow system which we propose for the support of such processes is a workflow extension of the Web-based shared workspace system BSCW.

The BSCW Shared Workspace System

The BSCW system is a Web-based groupware system around the shared workspace metaphor. Shared workspaces are established by groups of people to organize and coordinate their work. A BSCW server (a standard Web server extended by the BSCW functionality through the Common Gateway Interface) manages a number of shared workspaces - repositories for shared information, accessible to the members of a group via any normal Web browser. In general, a BSCW server manages workspaces for different groups, and users may be members of several workspaces (e.g., one workspace corresponding to each project a user is involved in).

A workspace may contain different kinds of information, represented as information objects arranged in a hierarchical order. The objects may be of various types such as folders, URL links to Web pages, documents, graphics, spreadsheets, discussion forums or user specific waste baskets, address books and calendars. The system allows numerous operations - usually depending on the object type - that can be applied to objects, e.g., objects may be renamed, deleted and undeleted, documents may be put under version control, or users may add a comment to a discussion forum, and many more. The BSCW server keeps the members of a group informed about each other's relevant activities in a shared workspace and provides detailed history information.

BSCW supports authentication using a (name, password) scheme and provides fine-grained access rights settings for end-users. Registration with a BSCW server and administration of a workspace user group is performed in a self-organized manner: by default no system administrator's action is required for user administration and workspace set-up. The only pre-requisites to become a BSCW user are an email address and a Web browser.

The BSCW system shall not be described here in more detail; an in-depth description of the system can be found in [Bentley, R., Appelt, W., Busbach, U., Hinrichs, E., Kerr, D., Sikkel, K., Trevor, J., Woetzel, G. "Basic support for cooperative work on the World Wide Web," Int. J. Human-Computer Studies 46 (1997), 827-846].

BSCW users

The BSCW system is publicly available at since October 1995. People are invited to register and create their workspaces on the BSCW server free of charge. As of November 1998, about 13000 users have registered on GMD's public BSCW server and the server software for local installation has been downloaded over 3000 times. We estimate that the active BSCW user community comprises some ten thousand people world-wide.

While doubtlessly some of them just playfully explore the system, a considerable number of users with most diverse backgrounds - including computer scientists, researchers and managers with various degrees of computer literacy, many teachers and students - use BSCW for real work. We have been receiving massive feed-back via e-mail (more than 5,000 messages until now) and via direct user observation in field tests carried out in the CoopWWW project which was funded by the European Commission.

BSCW-Flow and cross-organizational workflow

In the following we present BSCW-Flow, a workflow extension of BSCW. Process instances in BSCW-Flow appear as a particular type of shared folder. These process folders contain the process definition, the work items that have been completed or are about to be completed, and relevant documents that have been attached to the process instance. Users participating in the process are members of the process folder. Worklists are also represented by BSCW folders: they can be individually configured to receive work items pertaining to particular process types. Via a forms-based interface to the work items, process data may be viewed and entered by the workflow participant responsible. The completion of individual work items is negotiated in a conversation for action with the workflow engine.

BSCW-Flow as a Web-based tool provides the well-known advantages of Web-based workflow: accessibility from anywhere (home, travel) via a standard Web browser, zero deployment costs for client software, and cross-platform interoperability. These properties make it a good candidate for the support of cross-organizational processes. In addition, we argue that BSCW-Flow is particularly suited for a more "light-weight" cross-organizational workflow for the following reasons:

We would like to point out that BSCW-Flow as a simple workflow tool also has some restrictions: it relies on a centralized server (as does BSCW itself), it supports essentially document-centered workflow, and it does not integrate external applications into the workflow (at least in its first implementation).

BSCW-Flow Functionality and User Interface

Process instances as shared folders

BSCW is based on the notion of shared folders that contain arbitrary documents and to which a certain group of people have access. Membership to a folder may change over time (new people get invited, old members leave or are thrown out), access rights of members may be different and may also be changed. Changes are effected by actions of people who share a folder.

BSCW workflows are also based on the notion of shared folders: a process folder is a special shared folder where membership is defined by the workflow process instance and access depends on the role of the member and the state of the process. A process folder is acted upon by its members within the process activities and in addition is managed by a workflow engine.

At the user interface, a process folder represents a process instance along with the process definition, attached documents and notes, and links to active or completed work items. Work items are only accessible for the workflow participants that are responsible. Attached documents and notes are accessible for every participant. Process folders are grouped in worklists which again are BSCW folders.

Using shared folders for representing processes and worklists provides the following advantages:

Defining, executing, and monitoring workflow in BSCW-Flow

Process definition
A process definition in BSCW-Flow is specified as a text document using the process definition language of the DOMINO system [Kreifelts, Th., Hinrichs, E., Klein, K.-H., Seuffert, P., Woetzel, G. "Experiences with the DOMINO office procedure system," in L. Bannon, M. Robertson, K. Schmidt (eds.) ECSCW '91, Proc. Second European Conf. on Computer-Supported Cooperative Work, Kluwer, Dordrecht, 1991, pp. 117-130] whose workflow engine will be used for BSCW-Flow. Process definition and management in DOMINO is based on Petri net models. They may be collaboratively edited using standard BSCW information sharing functionality. Future versions of BSCW-Flow will include a graphical editor for process definition.

Process initiation
Processes are initiated by assigning BSCW users (or e-mail addresses for participants that are not yet BSCW users) to the roles of the process, and by providing the initial process data. This is done using the process definition document. The workflow engine creates a process folder and takes over the management of the process instance.

Worklist handling and work item processing
In BSCW-Flow, worklists are ordinary folders into which the workflow engine may insert process folders. A user may have several worklists, and may configure personally into which worklist process folders concerning a specific process are to be inserted.
Process folders contain work items as specific objects that are accessible only to the workflow participants which are responsible. Work items are presented as forms where relevant process data may be viewed and filled in. Work items may be declared completed, but also rejected or cancelled in case of exceptions.
Workflow participants are alerted of the arrival of new process folders or events within existing process folders via the standard BSCW awareness mechanisms: event icons attached to worklist folders within BSCW, and BSCW activity reports sent by e-mail upon request.

Process monitoring
Process folders remain in the worklist after completion of work items (unless destroyed by the user). Process state per work item is visible and a process history report is generated on request.

BSCW-Flow user interface

The BSCW-Flow user interface is embedded in the BSCW user interface, and is like the latter entirely HTML-based. The following example shows how BSCW-Flow can be used to support the reviewing process for a scientific conference. The process is instantiated by the author of a paper who fills in a form with his name, affiliation, and other personal data, attaches the paper (a word processor document) and uploads both to the BSCW-Flow server. The author identifies to the system with his email address and a password only, he needs not be a BSCW user, but appears as anonymous user. The next step is the program chair (Wanda Woe, together with her co-chair John Doe) whose user interface to the process instance is shown in figure 1: she has a new work item "Assign reviewers" in her process folder. She also sees the previous work item of the process, the initial submission by the author, and the process definition which to a certain degree may be changed during run-time.

While access to the work items and their forms is restricted to the respective roles of the process instance, all process participants have equal access to the other objects of the process folder by dafault. In our example there are two text documents and a link to the conference home page. At any time objects may be added, removed or changed, restricted only by access rights which the creators may set. Wanda checks the form filled out by the author and has a look at the submitted paper. She then opens the work item form "Assign reviewers", selects three reviewers from a list provided and sends the process on its way by pressing the submit button. The work item switches its state to "Done" and it is removed from the "To Do" list at the bottom of figure 1.



Figure 1. A BSCW-Flow process folder

Implementation and Outlook

BSCW-Flow is currently being designed and implemented. The first BSCW-Flow prototype will make use of the existent implementation of the DOMINO workflow engine via a BSCW software agent interface that has been successfully used to incorporate other agent functionality into BSCW. Further versions will integrate the workflow engine into BSCW to ease operation and maintenance of a workflow-enabled BSCW server.

Extensions of the BSCW-Flow functionality as outlined above could include graphical editing facilities for process definition, integration of external applications for process execution, or implementation of workflow interoperability standards. User interface and functionality modification will be subject to user feedback to be gathered in experimental use within selected BSCW user communities.