Shared workspace applications for collaboration in the large - CiteSeerX

4 downloads 610 Views 43KB Size Report
services for dividing a large task into several activities, and creating a mapping ... and notification, structured discussions, hooks for email and other types of.
Shared workspace applications for collaboration in the large: A product–centered approach Babak A. Farshchian Norwegian University of Science and Technology, NTNU, Trondheim, Norway email: [email protected]

Abstract Shared workspaces are often based on the presumption that the state of the work is cognitively accessible to all the workers. This assumption makes it difficult to use them for collaboration in the large. On the other hand, other support systems for collaboration in the large generally focus on the organizational aspects of the work and neglect the group–level requirements. In this paper we first introduce a classification of services provided by the existing shared workspace applications along three dimensions: group, activity, and product. We then motivate a product–centered approach to building SWAs. Using such an approach, the product dimension is in focus and the product is used to guide and support the collaborative work. We also introduce a list of services for product–centered SWAs that can improve the support provided for collaboration in the large.

1 Introduction One of the greatest successes in the field of CSCW has been the introduction of shared workspaces. A shared workspace provides a virtual place to work, tools for performing the work, and channels for communication among its inhabitants. At the same time, a shared workspace does not compromise the flexibility in the support it provides; a shared workspace can be used for a variety of tasks. Because of this flexibility, many groupware systems use shared workspaces as one main basic compontent for supporting cooperation. We will call such a groupware a Shared Workspace Application (SWA). Examples of SWAs are TeamRooms, Orbit, and BSCW. Despite their potential and importance for supporting cooperative work, SWAs are normally unsuitable for collaboration in the large. Collaboration in the large is characterized by large number of workers, complex tasks with many dependencies, and/or large composite products. We believe an important challenge for a SWA before it can be used for supporting collaboration in the large is to find a way to integrate its single shared workspaces in the context of large tasks. Many approaches have been deployed for coping with this issue. In this paper we will provide a classification of SWA services, and we will see how these services support collaboration in the large. We will then motivate what we call a product–centered approach to building SWAs. In a product–centered approach, the large and composite product that is being developed by a group can also be used to support the cooperative work of that group.

2 A classification of SWA services We have identified three dimensions along which to classify the services provided by the existing SWAs. We should emphasize that the dimensions are not meant as a classification of the existing SWAs, but serve merely to classify the services provided by each. Also, the need for the services provided along each dimension will vary depending on the intended application area for the SWA. A typical SWA will provide a combination of these services depending on its focus area.

Dimension Group dimension

Research focus Identify and support different aspects of human–human interaction mediated through a shared workspace.

Activity dimension

Provide flexible mechanisms for structuring a large task into smaller, interconnected activities. Provide flexible mechanisms for consistent co–editing of a large shared product.

Product dimension

Typical services provided Navigation and orientation tools, workspace awareness, communication channels (video, audio, text), floor control. Formalisms for decomposing and modeling large activities. To–do lists inside shared workspaces. Concurrency control, consistency preservation mechanisms, access control, change propagation, change management.

Table 1: Shared workspace applications are normally extended along three dimensions in order to support collaboration in the large.

The first dimension is the group dimension. Services provided along this dimension try to make available advanced group–level collaboration support inside a shared workspace. Special tools are constructed to augment the cognitive coordination abilities of the workers, and to enable them to remotely cooperate within shared workspaces. Common services along this dimension include communication tools, gesturing tools, navigation and orientation widgets, and awareness widgets (Gutwin et al. 1996). By extending the SWA services only along the group dimension we more or less presume that all the work can be done inside one or few workspaces. However, due to organizational demands, a large task is normally decomposed into many small, manageable activities. Therefore, many SWAs are augmented with services for dividing a large task into several activities, and creating a mapping between these activities and shared workspaces. In this way, an underlying activity model is created for the collaborative work, and the SWA can connect the shared workspaces based on this model (See Figure 1.b). We call this dimension the activity dimension. The services provided along this dimension are, among others, mechanisms for creating and connecting shared workspaces (Trevor et al. 1995), formalisms for modeling the flow of work from one workspace to another (Carlsen 1998, Swenson 1993), and making available relevant tools and artifacts in each shared workspace. There exist also many situations where a large and composite product, and the editing actions performed on it, is the focus of the work. A third important dimension is therefore the product dimension. Services provided along this dimension are concerned with using a model of the product to support the cooperative work of the group. The cooperative work is perceived of as an aggregation of the changes done to the product in the single workspaces (Figure 1.c). The focus of the research along this dimension has traditionally been to provide services for keeping the product consistent during the concurrent accesses, and to make the latest changes accessible to all the workers. We will discuss three applications with respect to the three dimensions. TeamRooms (Roseman and Greenberg 1996)1 is an SWA which uses a room metaphor, e.g. each shared workspace is realized as a simulation of a physical room. Along the group dimension advanced widgets are provided for maintaining workspace awareness. TeamRooms also provides a chat window and various single– and multi–user tools for informal collaboration within a shared workspace. The users can create different rooms and connect the various rooms with doors. A TeamRooms shared workspace supports insertion of files through a File Holder, and insertion of URLs through a URL Reference. According to our classification, TeamRooms only provides services along the group dimension. Although creating rooms and connecting them in the context of a larger task is possible (Herlea and Greenberg 1998) these connections are completely passive, e.g. TeamRooms does not have any knowledge of the connections and does not provide any active support based on these connections. In the same way, inserting product objects in a shared workspace is done at the group level and does not constitute any underlying product model.

1 TeamRooms is now commercially available as TeamWave c from TeamWave Software Ltd. The discussion in this paper is based on this commercial version. See http://www.teamwave.com.

Shared workspace 1

Shared workspace 2

No underlying structure

(a) Shared workspaces are connected using workspace mechanisms, such as doors.

Shared workspace 1

Shared workspace 2

Shared workspace 1

Shared workspace 2

Task 1

Task 2

Part 1

Part 2

(b) Shared workspaces are connected using an activity model as underlying structure

(c) Shared workspaces are connected using a product model as the underlying structure

Figure 1: The three dimensions of services provided in SWAs. The group dimension (a) does not normally support an underlying structure. The activity dimension (b) uses an activity model to connect the shared workspaces. This activity model is also used to provide active support inside each shared workspace, such as to–do lists. The product dimension (c) uses a product model to connect the shared workspaces. Normally little active support is provided along the product dimension. Note that the mapping from the underlying structure into the shared workspaces does not have to be 1–1.

BSCW–Flow (Kreifelts et al. 1999) is a workflow system based on the BSCW SWA (Bentley, Horstmann and Trevor 1997). BSCW–Flow provides services at the group dimension similar to those of BSCW, such as asynchronous awareness and notification, structured discussions, hooks for email and other types of communication, and synchronous monitoring of a shared workspace. Along the activity dimension, BSCW– Flow provides services for specifying an activity model based on the Petri net formalism. The workers can directly access the activity model inside a special–purpose shared workspace called the process folder. The process folder also provides attached documents and links, and links to folders containing active or completed work items. Work items are automatically presented to the responsible workers. Along the product dimension BSCW–Flow seems to provide the same services as BSCW. In BSCW, the workers can insert arbitrary object types inside shared workspaces, put the objects under version control, and receive notifications of changes done to the objects. As a third example we will look at a configuration management (CM) tool called Versions2 . As many CM tools, Versions supports only private workspaces, but it is possible to share a “working directory” among many workers (as long as the workers agree on how to use the files). Along the group dimension Versions supports a rather low degree of awareness in form of identified lock. This means that a user can see who is holding a lock for a file. For each file, Versions also holds a history of all the changes done to it. It is also possible to send an email message to any registered user, but this is handled by external email clients. Versions does not provide any support along the activity level, but is rather strong along the product dimension. All the users have access to the shared product, which consists of files structured in projects and sub–projects. In addition, all the changes done to the product and the product model are visible to all the workers. Versions is not a typical SWA, and in fact it is not easy to find a SWA that is strong along the product dimension. Most of the existing SWAs provide an ad hoc notion of a product, and do not support any product model at all. The product is normally seen in form of a disconnected set of work objects created locally inside each shared workspace for assisting the work in that workspace. Notable exceptions with some emphasis on product models are Kansas (Smith et al. 1997) and Mushroom (Kindberg 1996). In Kansas, a system for collaborative debugging, workers interact with a large set of objects residing in a landscape. In Mushroom, each shared workspace (Mroom) has a formal definition of the work objects inside it, and users can share objects by moving them across the boundaries of an Mroom. Other multi–user systems with focus on the product are computer–aided software engineering tools (Vessey and Sravanapudi 1995) and computer–aided design tools (Peng 1994). But similar to Versions, most of these tools provide limited support along the group and activity dimensions, and they don’t explicitly use the product as a means for supporting cooperation (Sande 1998). 2 Versions

c 2.0 is a product of StarBase Corporation. See http://www.starbasecorp.com.

3 Using products to support collaboration in the large The role of artifacts in collaborative work has been debated frequently in the CSCW literature. Robinson (1993), in particular, argues for the design of groupware applications based on artifacts. Artifacts being used by a group often contain implicit coordination properties. Information about state changes in these objects constitutes some of the most important awareness information in many SWAs. For instance, services along the group dimension provide high degree of workspace awareness, where one important part of this awareness is information about changes done to the artifacts inside a shared workspace (Gutwin et al. 1996, Dourish and Bellotti 1992). This kind of awareness information is often reduced in SWAs with a focus on the activity and product dimensions. This is partly because of a shift in focus from group–level interaction to organizational level coordination, and partly because of the complexity of combining the services along the different dimensions. On the other hand, only focusing on the group dimension can result in SWAs with isolated shared workspaces, as stated by Kaplan et al.: “...room–based systems provide rigid rooms with strong boundaries. This makes it very difficult to work on ’several things at the same time’ or keep one’s eye on activities in one situation while concentrating on another”(1997, pp. 546). In TeamRooms, for instance, even though two rooms can be connected using doors, the workers do not have any idea of what is happening in a neighboring room unless explicitly entering the room (Herlea 1998). This show that there is a need for an underlying shared structure for connecting the isolated shared workspaces, propagating awareness among them, and supporting collaboration and coordination in the context of collaboration in the large. This underlying structure is realized in form of an activity model in BSCW–Flow. In product–oriented systems, we believe, the shared product can play the role of the underlying structure. Awareness of the overall work can be supported if the workers share the same product, and are thereby able to gain access to the up–to–date product state. The majority of the product–oriented multi–user tools do not make explicit use of advanced product awareness. Despite this, product monitoring is seen by Vessey and Sravanapudi (1995) to be an important implicit collaboration support mechanism in many CASE tools. Also in configuration management tools awareness of changes to other parts of a configuration is shown to be an efficient source of awareness information to the surroundings of the private workspace of a developer (Grinter 1996). We believe an SWA could make more extensive use of the product as an awareness mechanism across the shared workspaces. When working with large and composite products, also another property becomes important. Observed early by Conway (1968), and lately revised by Grinter (1998), the structure of a composite product to a large degree reflexes the organization of the work necessary for creating it. Grinter shows this effect in a case study of three software development groups of varying size, where each group is working with a distinct part of the software and uses automatic tools and manual articulation work to integrate the results of the individual work. What we learn from these studies is that the structure of a composite product may be useful for supporting the collaboration among the various groups working with different parts of the product. A product–centered approach can have a potential for supporting collaboration in the large, specially in situations where a large group is working in concert to create a large and composite product. Few of these advantages have been utilized by existing groupware systems. In our view, a product–centered approach should encourage the following: 1) To use the structure of the composite product for structuring the many workspaces constituting the collaboration in the large, 2) To use the mediating effect of the composite product for coordinating the collaboration in the large, and 3) To facilitate combining the services along the product dimension with the services along the two other dimensions. In the next section we will provide a list of the services we believe such an SWA should provide along the product and other dimensions.

4 Towards a product-centered approach to shared workspace applications We list here a preliminary set of services that we believe an SWA can provide along the product dimension. We divide the services into two main groups. The first four services are directly concerned with the

product dimension. The last two services are concerned with combining the product dimension with the group dimension. For each service, we also point out some technical challenges that will be imposed on developers.

Sharing objects among shared workspaces– A basic desirable service for an SWA would be to support sharing of objects among its shared workspaces. This sharing service should also apply for sharing the awareness information, meaning that changes done to the objects in one shared workspace should be visible in all the shared workspaces containing those objects. This may seem a natural property of any SWA, but our experience is that it is not supported well in many existing SWAs. Our view is that the research on shared object systems (e.g. Mariani and Rodden 1996) should be used more intensively in SWAs.

Awareness through a composite product– Any real–world application of a product–centered SWA will have to deal with composite products. A group of workers will typically work with only a few parts of a large product, but may at the same time be interested in being aware of the changes done to other related parts. Unfortunately, most shared object systems support what Mariani and Prinz (1993) call single–object awareness. In addition to single–object awareness, mechanisms are needed for mediating awareness of changes done to one part of the product to other relevant parts. From a technical point of view the product should be active; changes to a product object should trigger changes to other related objects (ACT-NET Consortium 1996). There is also the problems of finding related objects, and calculating proper degree and type of awareness needed between objects according to their context of use (Mariani and Prinz 1993).

Easy product manipulation mechanisms– In order not to let the product model become a restricting factor on how groups perform their tasks, easy mechanisms for manipulating the product are necessary. This includes both manipulating the single objects constituting the product, but also changing the structure of the product. The structure can be an important factor for how awareness information is mediated. In this case it becomes important who can decide the structure, and whether others can override or overlay the structure for their local needs.

Navigating and querying the product model– Working with large and composite products, the workers will need navigation and querying mechanisms for selecting objects to insert into their workspaces. For instance, a shared workspace may need to have an updated set of all the objects of a certain type created as part of the product.

Presentation of mediated awareness information inside shared workspaces– A SWA needs to present the mediated product awareness inside each shared workspace. This awareness information should be easily distinguishable from workspace awareness information. It could, for instance, be directly related to the parts of the product residing in the workspace. It should also be possible to adjust the level of mediated awareness that a shared workspace wishes to receive.

Support for informal group–level activities– Robinson (1991) argues for the “double level language” property of collaborative work. In a product–centered SWA, the product can to some degree mediate the indirect communication in form of awareness information. However, there is also a need for supporting the informal, direct communication, and the interplay between the formal and the informal levels. The property for interplay is an important one that imposes some technical challenges. What is needed is a transfer mechanism for transferring informal objects created inside a shared workspace, to the product after the informal objects are finalized as product objects. Most product–oriented tools neglect this transition (Jarzabek and Huang 1998).

5 Conclusions We have introduced a classification of shared workspace services and investigated how they support collaboration in the large. This classification has provided us with some ideas about how a product–centered approach can be achieved. Our work is in a preliminary phase. The classification we have provided is also a preliminary one. We have, for instance, not taken any position regaring SWAs that use other types of underlying structures. One good example of this is Orbit (Mansfield, Kaplan, Fitzpatrick, Phelps, Fitzpatrick and Taylor 1997), where a social world is used to connect the single shared workspaces. The hope is that during the workshop we will have the time to discuss these and other classifications. Some of the issues we have not discussed in this paper are the social problems related to sharing information in large groups (For an overview of these problems, see Bannon and Bødker 1997, Schmidt and Bannon 1992), and the general technical issues related to editing objects in a group context, such as persistence, concurrency control, access control, and undo/redo (Dewan et al. 1994). We are aware of the high relevance of these issues to the design of product–centered SWAs, and hope to extend our work in these directions. Our future work includes, besides gaining a deeper understanding of the issues above, further investigation of a product–centered approach, and the design and implementation of a prototype SWA to be integrated into a systems development tool. We are also interested in investigating the possibility of integrating product– related services with the activity–related ones. We hope to be able to report on our experiments in the near future.

6 Acknowledgement I thank Monica Divitini, Arne Sølvberg, Xiaomeng Su, and Tieyan Li for the long discussions we had around the ideas of this paper. I also thank the anonymous reviewers for their constructive comments. Part of this research is supported by a grant from Andersen Consulting Research Fund.

References ACT-NET Consortium: 1996, The Active Database Management System Manifesto: A Rulebase of ADBMS Features, SIGMOD Record 25(3). Bannon, L. J. and Bødker, S.: 1997, Constructing Common Information Spaces, in J. A. Hughes, W. Prinz, T. Rodden and K. Schmidt (eds), Proceedings of the Fifth European Conference on Computer Supported Cooperative Work, ECSCW’97, Lancaster, U.K., Kluwer Academic Publishers, pp. 81–96. Bentley, R., Busbach, U., Kerr, D. and Sikkel, K. (eds): 1997, Groupware and the World Wide Web, Kluwer Academic Publisher, Dordrecht. Reprint from the Computer Supported Cooperative Work: The Journal of Collaborative Computing, Volum 6, Nos. 2–3, 1997. Bentley, R., Horstmann, T. and Trevor, J.: 1997, The World Wide Web as enabling technology for CSCW: The case of BSCW, Computer Supported Cooperative Work: The Journal of Collaborative Computing 6(2–3), 111–134. Reprinted in (Bentley, Busbach, Kerr and Sikkel 1997). Carlsen, S.: 1998, Action Port Model: A Mixed Paradigm Conceptual Workflow Modeling Language, in M. Halper (ed.), Proceedings of the 3rd IFCIS International Conference on Cooperative Information Systems, New York City, USA, IEEE Computer Society, Los Alamitos, California, pp. 300–309. Conway, M. E.: 1968, How do committees invent?, Datamation 14(4), 28–31. Dewan, P., Choudhary, R. and Shen, H.: 1994, An Editing–Based Characterization of the Design Space of Collaborative Applications, Journal of Organizational Computing 4(3), 219–240. Dourish, P. and Bellotti, V.: 1992, Awareness and Coordination in Shared Workspaces, in J. Turner and R. Kraut (eds), Proceedings of the Conference on Computer–Supported Cooperative Work, CSCW’92, Toronto, Canada, ACM Press, pp. 107–114. Grinter, R. E.: 1996, Supporting Articulation Work Using Software Configuration Management Systems, Computer Supported Cooperative Work: The Journal of Collaborative Computing 5(4), 447–465. Grinter, R. E.: 1998, Recomposition: Putting It All Back Together Again, in CSCW’98 (ed.), Proceedings of the Conference on Computer Supported Cooperative Work, Seattle, Washington, USA, ACM Press, New York, pp. 393–402.

Gutwin, C., Greenberg, S. and Roseman, M.: 1996, Workspace Awareness in Real–Time Distributed Groupware: Framework, Widgets, and Evaluation, in R. Sasse, A. Cunningham and R. Winder (eds), Proceedings of the HCI’96: People and Computers XI, London, U.K., Springer–Verlag, pp. 281–298. Herlea, D. E.: 1998, User Participation in Requirements Negotiation, in M. Divitini, B. A. Farshchian and T. Tuikka (eds), Proceedings of the Workshop on Internet–Based Groupware for User Participation in Product Development, number B 56 in Working Paper Series, University of Oulu, INFOTECH Research Center, pp. 25–29. Herlea, D. and Greenberg, S.: 1998, Using a Groupware Space for Distributed Requirements Engineering, Proceedings of WET ICE ’98: IEEE Seventh International Workshops on Enabling Technologies: Coordinating Distributed Software Development Projects, Stanford University, California, USA, pp. 57–62. Jarzabek, S. and Huang, R.: 1998, The Case for User–Centered CASE Tools, Communications of the ACM 41(8), 93–99. Kaplan, S. M., Fitzpatrick, G., Mansfield, T. and Tolone, W. J.: 1997, MUDdling Through, in HICSS’97 (ed.), Proceedings of the 30th Hawaii Int’l Conf. on System Sciences, Volume 2 – Collaboration Systems and Technology, IEEE Computer Society Press, pp. 539–548. Kindberg, T.: 1996, Mushroom: A framework for collaboration and interaction across the Internet, in U. Busbach, D. Kerr and K. Sikkel (eds), CSCW and the Web – Proceedings of the 5th ERCIM/W4G Workshop, Sankt Augustin, GMD. Arbeitspapiere der GMD 984. Last visited 21.10.97. URL: http://orgwis.gmd.de/projects/W4G/proc.html Kreifelts, T., Hinrichs, E. and Woetzel, G.: 1999, BSCW-Flow: Workflow in Web-based Shared Workspaces, Workshop on CrossOrganisational Workflow Management and Co-ordination, San Francisco, California. URL: http://www.zurich.ibm.com/%7Ehlu/WACCworkshop/ Mansfield, T., Kaplan, S., Fitzpatrick, G., Phelps, T., Fitzpatrick, M. and Taylor, R.: 1997, Evolving Orbit: a progress report on building locales, in S. C. Hayne and W. Prinz (eds), Proceedings of the International ACM SIGGROUP Conference on Supporting Group Work, Group’97, Pheonix, USA, ACM Press, pp. 241–250. Mariani, J. A. and Prinz, W.: 1993, From Multi–User to Shared Object Systems: Awareness about Co–Workers in Cooperation Support Object Databases, in H. Reichel (ed.), Proceedings of the 23. GI–Jahrestagung: Informatik – Wirtschaft – Gesellschaft, Springer, Berlin Heidelberg, pp. 476–481. Mariani, J. A. and Rodden, T.: 1996, Cooperative Information Sharing: Developing a Shared Object Service, The Computer Journal 39(6), 455–470. Peng, C.: 1994, Exploring communication in collaborative design: co–operative architectural modelling, Design Studies 15(1), 19–44. Robinson, M.: 1991, Double–Level Languages and Co–operative Working, AI & Society: The Journal of Human and Machine Intelligence 5(1), 34–60. Robinson, M.: 1993, Design for unanticipated use....., in G. De Michelis, C. Simone and K. Schmidt (eds), Proceedings of the Third European Conference on Computer–Supported Cooperative Work, ECSCW’93, Milano, Italy, Kluwer Academic Publishers, pp. 187–202. Roseman, M. and Greenberg, S.: 1996, TeamRooms: Network Places for Collaboration, in M. S. Ackerman (ed.), Proceedings of the ACM 1996 Conference on Computer Supported Cooperative Work, CSCW’96, Cambridge, Mass., U.S.A., ACM Press, pp. 325– 333. Sande, A. M. T.: 1998, Support for collaborative design in contemporary CASE tools – framework and evaluation, Master’s thesis, Norwegian University of Science and Technology, IDI, NTNU, Trondheim, Norway. Schmidt, K. and Bannon, L. J.: 1992, Taking CSCW Seriously – Supporting Articulation Work, Computer Supported Cooperative Work – An International Journal 1(1–2), 7–40. Smith, R. B., Wolczko, M. and Ungar, D.: 1997, From Kansas to Oz: Collaborative Debugging When a Shared World Breaks, Communications of the ACM 40(4), 72–78. Swenson, K. D.: 1993, A Visual Language to Describe Collaborative work, Proceedings of the International Workshop for Visual Languages, Bergen, Norway. Trevor, J., Rodden, T. and Blair, G.: 1995, COLA: A Lightweight Platform for CSCW, Computer Supported Cooperative Work: An International Journal 3(2), 197–224. Vessey, I. and Sravanapudi, A. P.: 1995, CASE Tools as Collaborative Support Technologies, Communications of the ACM 38(1), 83– 95.

Suggest Documents