The science of group collaboration is less than perfect. While the knowledge base from the behavioral and social sciences is growing, there is as much art in collaboration as there is science. To complicate the matter, how people work in groups when computer technology supports collaborative activities is yet less well understood. What we do know is that increasingly organizations are turning to groupware applications to improve collaboration. CSCW or groupware technology has been emerging to support person-to-person collaboration in various kinds of application domains. The literature provides a number of pointers that suggest the broad outline of successful groupware systems.
Grudin  points out several factors to be considered in groupware development including who benefits, extent of use, impact on group dynamics, etc. Complex social, motivational, economic, and political dynamics in the working environment greatly impact the acceptance and use of groupware. To complicate matters, multiuser applications may only be effective when they change long established organizational processes. These factors constitute major challenges for software developers. They suggest a shift from a technology perspective to a workplace perspective. Grudin suggests that successful groupware products, such as e-mail can provide information of use in constructing new systems. Several researchers have contributed to the base of data about how CSCW can be integrated into the work environment[41,36].
There are a variety of different approaches that have been taken to the development of groupware. In terms of design processes, Scandinavian participatory design approaches have drawn attention because of the early user participation in the design process. At a more evolutionary level, successful single-user applications are adding features that make them group-aware. For example, Microsoft Word now supports color coding of editorial comments and attribution of comments to named users. Another approach has been to extend the capabilities of successful collaboration software. For example, numerous mail packages have become multifaceted filing, commenting, calendaring packages. Finally, there is increasing recognition of the importance of training and education to the success of groupware.
In many ways, the question that must be asked here parallels the question Lewis asked about the theoretical foundation for human computer interaction. Lewis suggested that we can develop a theoretical basis for human computer interaction by conducting research in traditional psychological issues, the new areas of ecological psychology, system design methodology, or an analysis of the features of successful systems. His answer, as one might guess is embracing what might be learned in all of these areas. Our focus then is similar to his, with a bias, if we have one, to what works.
There some interesting contradictions that occur in the development of sophisticated software systems designed to intimately support human activity. First, we would like to make software software systems as easy to use as possible. For many, this has come to mean that the user model of the process should be closely followed in developing the system. This may be a mistake for two reasons. First, the user model of the process may be flawed. Does this suggest that the computer based system should incorporate the flaws? Of course not. Second, it may be that the user model of the process, while a good model for non-computer assisted processing, is not a good model for computer assisted processing. Consider as a very simple example the process of hitting a carraige return at the end of each line, or tabbing on the first line of each line of an indented paragraph. While this example is incredibly simple, it is instructive to look at the number of files produced by sophisticated word processors that still contain the traits of typewriter produced text! In this case, few would suggest that word processors should be redesigned to eliminate this feature. Some will argue that a good word processor is one that will accept this form of input while offering more advanced features to those who know how to use them. A few might argue that true productivity cannot be acheived until organizations commit to reengineering processes and retraining people to make use of the advanced features.
Another, second, issue in software design has to do with how intuitive a given software function is. This is to suggest that new functions should have affordances that make them easy to use with minimal training. As with the issue of incorporating the user model of the process, this goal makes sense in many cases. In others, it presents a dilemma. Consider for example a visualization of a large set of files that maps some attribute of the files to a color and that positions files in a particular way. We faced this kind of problem in the development of several visualization tools, and this specific problem in a visualization tool known as docuverse. The positioning issue was one that had no direct spatial counterpart we could derive. In addition, there was significant pressure to optimize the screen territory to maximize the number of files we could display. The current display requires some user orientation before it can be used effectively. While we would rather this were not the case, it is our contention that the time savings afforded by the display, once users understand it, far outways the learning time required. One file in a thousand can be identified a hundred times faster than would have been possible without the visualization. From our point of view, this strongly commends the tool and the learning time when this process occurs frequently.
Thus, where the goal of a system is not to simply computerize the existing process, but to modify and enhance that process to do a job more efficiently and effectively it may be necessary to design a system that requires that the user develop a new model of the process and develop new skills. This mandates that reengineering be a critical part of the design process and that training and orientation is critical to the successful implementation of software. In computer based collaborative authoring, we identify the following as areas which may require new processes and/or new attitudes and skills on the part of the user:
While these are only a few of the targets for reengineering and reeducation, they provide an indication of the new ways of thinking about the issues of collaborative authoring that we think of as critical to the success of any kind of collaborative authoring system.