UbiCollab: Collaboration support for mobile users - CiteSeerX

13 downloads 74466 Views 573KB Size Report
Also, a growing number of applications support sharing of data, e.g. business cards, on-the- ... important requirements underlying the development of UbiCollab.
UbiCollab: Collaboration support for mobile users Monica Divitini

Babak A. Farshchian

Haldor Samset

IDI, NTNU Trondheim Norway

Telenor R&D Trondheim Norway

Telenor R&D Trondheim Norway

[email protected]

[email protected]

[email protected]

ABSTRACT Shared workspaces have emerged as one of the most successful applications of computer supported cooperative work (CSCW). Important aspects of shared workspaces are presence and awareness information, flexible sharing of work material, and support for communication among group members. One of the shortcomings of existing shared workspaces is their lack of support for mobility. In this paper we will discuss the need for mobile shared workspaces as well as an experimental platform for ubiquitous collaboration and a number of shared workspace implementations for both formal and informal collaboration.

Keywords Mobility, CSCW, flexibility, shared workspaces, experimental platform.

1. INTRODUCTION Mobility in cooperation has been the subject of various studies, e.g. [3, 11]. On one hand mobility facilitates access to needed resources. This is one of the main reasons behind mobility, both over considerable distances (e.g. someone visiting her headquarter for meeting a coworker) and within a short range (e.g. people moving from their offices to a local meeting room). Mobility also promotes chance encounters with people who are not in one’s usual working or social surroundings, promoting new possibilities for collaboration. On the other hand mobility is a curse because it makes difficult for the mobile worker to access the resources that are normally at her disposal on the regular workplace, such as libraries and applications. Increased mobility also makes it more complicated to access people who are not at their workplace. The emergence of mobile devices and new forms of connectivity allows one to portray new scenarios of cooperation. The last years have for instance witnessed a growing number of instant messaging and chat tools [9]. These tools greatly improve the communication capabilities of mobile workers by enriching communication support with presence and availability information about remote co-workers. Also, a growing number of applications support sharing of data, e.g. business cards, on-theflight. However, the existing applications mostly fail to provide Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. SAC’04 ,March14-17,2004, Nicosia, Cyprus Copyright2004ACM1-58113-812-1/03/04...$5.00.

mobile users with access to the resources and tools that can be relevant for an ongoing cooperation. In particular, mobile applications fail to provide users with an adequate collaboration context, i.e. a shared workspace. Shared workspace applications have been widely investigated in the CSCW field and have proved successful in supporting different forms of cooperation [1]. However, desktop shared workspaces are useless most of the time when people are in meetings, traveling, etc. We believe that if properly designed, shared workspace applications can be far more useful in supporting mobile users than they are for nonmobile users. This is not only because of “anywhere anytime” access to group information but because of a host of new possibilities offered by mobility. For instance, integrating shared workspaces with communication tools available in many mobile devices allows us to develop shared workspaces with support for contextualized communication. Moreover, a better integration of workspace applications with mobile communication and presence can support transitions from informal communication triggered by chance encounters to more formal form of cooperation. In this paper we address the challenges related to developing mobile collaboration environments, with focus on shared workspaces. These challenges can be grouped into two main categories. On one hand we need to realize the functional requirements of mobile workers. These requirements can deeply vary depending on the specific cooperative settings. The support must therefore be conceived not in form of a single application, but rather in form of an environment assuring the required functional flexibility. On the other hand, the domain of mobile devices is in constant development, with new devices, standards, etc. emerging very rapidly. The provided collaboration environment must therefore be able to easily accommodate new mobile technology, what we call technical flexibility. We have approached these challenges by developing a collaboration environment for mobile users that we describe in this paper. The paper is organized as follow. In Section 2 we present a scenario and we outline some functional requirements. Section 3 presents UbiCollab, an experimental collaboration environment. We discuss the collaboration model used in UbiCollab, UbiCollab’s functionality and architecture in sections 3.1-3.5. In Section 4 we compare UbiCollab to a number of existing systems. A discussion of our research is presented in Section 5.

2. AN ENVIRONMENT FOR MOBILE COLLABORATION In this section we describe a scenario of computer-supported mobile cooperation. The scenario makes use of a number of features found in UbiCollab (see Section 3 for details). In this

section we intend to use the scenario to discuss a number of important requirements underlying the development of UbiCollab.

2.1 A scenario of using UbiCollab The scenario describes a new project in the imaginary company Mobile Inc. The project is MyPresence and has three members: Anna (project leader) and Hermine in the Athens office, and Kari in the Helsinki office. The project is a task force, set up to produce a deliverable consisting of several research reports. Anna has heard colleagues talk about UbiCollab and decides to use it in MyPresence. She asks the system administrator to create new UbiCollab user accounts for her project staff and to install UbiCollab clients on their computers and mobile phones. The next day all project members have their clients installed and register themselves as users. Anna uses her desktop client to logon to UbiCollab. She chooses to create an activity ‘MyPresence’ for her new project and adds Hermine and Kari as members. Since Anna cooperates a lot with Hermine and Kari, she decides to add them to her colleagues list. In this way, she can communicate with each of them informally without going through an activity (similar to having them in her buddy list). While waiting for them to join MyPresence, Anna works on other tasks. She creates another activity, called ‘UbiqMe’, for a research report on ubiquitous computing she is writing with another colleague, Mark. The UbiCollab client, running in the background of Anna’s desktop, notifies her that Kari is online (She can see Kari online because he allows her to have him in her colleagues list). She sends an instant message to Kari asking him if he has time to work on MyPresence. Kari accepts and enters MyPresence. Anna starts a chat session with him using the chat tool. While they are chatting, Hermine goes online and is requested by Anna and Kari to joins them. In meanwhile Anna uploads the latest versions of the documents to MyPresence activity. The documents are now available for download by all project members. The day after, Anna and Hermine (both working in Mobile Inc. Athens office) have arranged a face-toface meeting to discuss some critical issues related to MyPresence. The meeting is held in the lunchroom since all the meeting rooms are busy. Before going to the lunchroom, Anna logs in to her mobile phone UbiCollab client and enters MyPresence activity (see Figure 1). She takes the phone with her to the meeting. In the lunchroom there is an UbiCollab-enabled public screen. The screen is normally used as an electronic bulletin board. It displays highly informal information about the Mobile Inc. community in Athens and their social activities. This information includes forthcoming birthdays of the employees, daily updated comic strips, news strips, Mobil Inc. employees’ physical location, etc. (see Figure 2). Anna and Hermine sit close to the public screen. Anna detects the screen using her mobile phone UbiCollab client and synchronizes her actions on her phone with the content of the shared screen, allowing Hermine see what she is seeing on her mobile phone. They review the current MyPresence material on the shared screen. After a discussion with Hermine, Anna notices, through a beep from her mobile phone lying on the table, that Kari has entered MyPresence. She sends an SMS message to him and asks him if he can join them in a telephone call since they would like to discuss an issue with him. Kari agrees to join. Anna clicks on Kari’s name on her mobile phone. A telephone call is automatically placed between Anna and Kari.

(a)

(c)

(b)

(d)

Figure 1: UbiCollab client for Sony-Ericsson 800 mobile phone [18]: (a) Colleagues list containing partners not related to any activity. (b) List of all activities the current user is a member of. (c) The user is currently inside one activity. (d) The user is in a chat session with the online members of an activity.

Figure 2: The shared display, showing public information about the local community [7]. While having a break, Anna notices by looking at her colleagues list that Mark is online and busy with UbiqMe activity. She notices this because Mark’s icon in the colleagues list shows the

name of Mark’s current activity. Anna enters UbiqMe activity to tell Mark about the changes she needs to make in the document.

2.2 An analysis of the scenario The described scenario demonstrates a number of functionality for supporting mobile collaboration. The core message of the scenario is that information regarding a specific collaboration context should be available not only on the office desktop but also, and more importantly, on users’ mobile devices. Moving away from the desktop should not hinder the user from accessing information necessary for cooperating with other group members. A second important issue demonstrated by the scenario is that a collaboration context does not only include work material (e.g. documents and files). In fact more important elements of this context are the cooperating partners. The scenario demonstrates this in two ways. First, presence and awareness of project members is actively used, e.g. allowing Anna be continuously notified when people are available for collaboration. Second, different channels of communication, offered by both desktop and mobile clients, are used in different situations (e.g. SMS and instant messages for a request, telephone for a discussion on a crucial issue, chat for more informal discussions). A third crucial issue demonstrated by the scenario is the continuous transitions between formal and intended vs. informal and ad hoc collaboration [10]. (For instance, Anna notices Kari is online and asks him if he can join a discussion.) Supporting such transitions strongly improves the usability of any groupware application, but normally groupware applications support a predefined level of formality. A last but not less important issue is ad hoc access to physical collaboration resources. It is shown in numerous empirical studies, especially those based on distributed cognition theory [8], that collaborating parties make extensive use of physical resources (e.g. whiteboards, pieces of paper). Mobile devices have often quite limited input/output resources. In addition, they are personal (e.g. a mobile phone or a PDA is normally not shared in a group). Combining mobile devices with other shared resources (e.g. shared displays) enhances collaboration support considerably.

3. UbiCollab ARCHITECTURE AND DESIGN In addition to basing our technical development of the UbiCollab environment on empirical data regarding how people collaborate, one of our additional goals has been to offer maximum flexibility to application developers. UbiCollab is mainly a development environment for collaboration services, and UbiCollab services are being continuously developed by others and us. Collaboration among people happens in a highly flexible manner. Different groups require different functionality based on their domain of collaboration, their culture of collaboration, the group processes they use, etc. It is therefore highly desirable that a groupware platform can be tailored to the specific groups using it. Flexibility in UbiCollab is achieved through a tailorable collaboration model (for ensuring functional flexibility) and an extensible platform architecture (for ensuring technical flexibility).

3.1 UbiCollab collaboration model UbiCollab uses a flexible and generic model tailorable to specific domains by application developers. The core concepts in the model are users, activities, resources (digital and physical) and

tools (see Figure 3). Activities relate users in the context of some common and possibly persistent collaboration. Activities might contain a dynamic set of resources added by users or detected automatically from the collaboration context. Tools represent services for supporting specific group processes, e.g. chat, telephone conference, brainstorm, voting. Tools can be connected to specific activities or used in an ad hoc manner among a group of users. In our scenario, activities are used to organize people and resources in MyPresence project. Resources in the scenario include digital items (MyPresence deliverables in form of electronic files) as well as physical resources (the shared display in the lunchroom). Tools in the scenario include communications tools such as chat and telephone conference. It is important to note that users, resources and tools do not need to be members of an activity. They can exist in the model and be dynamically connected to each other and activities. Similarly, same user, resource or tool can be connected to more than one activity.

Resource (digital) Tool Activity

User Resource (physical)

Figure 3: UbiCollab collaboration model UbiCollab’s collaboration model is similar to that of most existing shared workspace applications, e.g. Orbit [12] and TeamRooms [16]. However, the way the model is used is quite different. UbiCollab has a strong focus on mobility and on tailorability. First, entity types include a limited set of predefined meta-data. Additional meta-data can be defined by the application developer, assuring a tailorable data model. Tailorability is necessary for supporting collaboration in mobile environments, which include heterogeneous resources with various capabilities, properties, etc. (e.g. our scenario describes using a shared display that has metadata specifying its pixel resolution). The common set of predefined metadata guarantees interoperability among all UbiCollab applications, while specialized applications can use additional meta-data for their own use. Second, each entity can have static and dynamic meta-data. The set of all dynamic meta-data in an application constitutes a presence model for that specific application. This presence model can be changed in real time according to changes in the collaboration context, which might include changes to the physical surroundings of the users. UbiCollab includes physical artifacts as full-fledged members, in this way supporting the implementation of genuine ubiquitous collaboration services. Finally, the structure of the collaboration model, i.e. the connection between the entities, is not predefined. This allows for

combining formal structures (e.g. “users should belong to at least one activity”) and informality, and easy transitions between the two modes of cooperation. UbiCollab can in this way be used to implement applications that support different levels of formality.

and tailorable to different collaboration domains. The following plug-ins are implemented in UbiCollab for supporting our scenario: •

Parlay plug-in: This module implements an interface to a Parlay gateway. The plug-in provides easy access to telephony services (e.g. click2dial, conference, SMS, location). Parlay plug-in is used actively in the described scenario for implementing different forms of communication among users (e.g. telephone conferences)



File server plug-in: While meta-data about digital resources is stored and maintained in the service platform, the digital resource itself (i.e. the file) is stored in the file server plugin. The stored digital resources are available through URLs.



Email plug-in: This plug-in provides an email address for each activity, allowing a user-friendly communication mechanism available from any email client. The email plugin permits attachments, which are then registered as digital resources in UbiCollab.



Database plug-in: Static information about entities in the collaboration model is stored permanently in the database plug-in. This plug-in allows in addition the storage and retrieval of user profiles.

3.2 UbiCollab overall architecture UbiCollab is currently implemented using client server architecture (see Figure 4). The main module in the architecture is UbiCollab service platform. It implements the basic collaboration model described above, and provides services for interacting with this model. Specialized UbiCollab plug-ins are used to extend the basic functionality of the service platform. Towards the clients, the platform implements the XML-based UbiCollab service API.

XML Interface UbiCollab service platform

3.5 UbiCollab service API Plug-in

Plug-in

Plug-in

Figure 4: UbiCollab overall architecture

3.3 UbiCollab service platform UbiCollab service platform can be regarded as an operative system for mobile collaboration. The platform provides a set of services for creating and maintaining users, activities and resources, and services for dynamically configuring these entities (e.g. adding users and resources to activities, adding resources to users, relating users to each other). The platform is also responsible for maintaining the presence model and sending subscribed notifications about changes to this model. For instance, clients are notified when new clients are connected to the server or when an entity’s meta-data is changed. The service platform moreover provides access to services implemented by the plug-ins (see next section for UbiCollab plugins). An example is the telephone conference service. This service allows a client to request a telephone conference setup by providing a group of telephone numbers to the service platform. The platform then contacts a Parlay [14] plug-in and passes the numbers to this plug-in for the actual conference setup. Another useful service implemented in this way is the location service, providing the location of a GSM mobile phone.

3.4 Collaboration plug-ins Collaboration plug-ins are used to enhance the functionality of the service platform in a modular way. Plug-ins communicate with the service platform through a standardized web services interface. Plug-ins might implement parts of a tool, persistent storage, gateways to other systems, etc. Collaboration plug-ins play in this way an important role in making UbiCollab extensible

UbiCollab services are made available to UbiCollab clients through a well defined and easy-to-use API [6]. The protocol used for communication with the service platform is XML-RPC [19], which means that clients can be implemented using a number of different programming languages (XML-RPC libraries are available for a large number of programming environments). A high level Java library has also been developed, offering an easyto-use interface for Java-based application developers.

4. RELATED WORK UbiCollab focuses on mobile access to collaboration context, flexibility and tailorability for application developers, support for transitions between formal/informal collaboration, and increasing support for ubiquitous collaboration through the inclusion of both digital and physical resources. Existing shared workspace applications have a number of shortcomings in comparison. Practically all these applications are implemented as point systems, without any extensive support for tailorability or custom application development. Moreover, they don’t support well informal collaboration. These applications in addition provide a very limited support for mobile users and often no support for ubiquitous collaboration. BSCW [1, 2], a widely used WWWbased shared workspace application, offers access via WAP in addition to its Web interface. Mobility support in BSCW is a limited add-on to an existing system, omitting support for e.g. ubiquitous collaboration. BSCW is in fact representative of most existing shared workspace applications, where mobile clients are added for accessing a subset of the available functionality. Room-based shared workspace applications, e.g. TeamRooms [16], take a completely different approach to collaboration by creating a virtual 2D or 3D collaboration environment. Our approach treats the collaboration environment not as a virtual one but as one integrated in the physical world. Mobile buddy list applications, another comparable group of systems, provide

presence and availability information about people. These applications support purely informal collaboration, with no or poor support for collaborative activities and collaboration context. The platform approach of UbiCollab is compatible with a number of ongoing standardization work in the area of mobile presence (e.g. Wireless Village [13], PAM [14]). These standards are not only useful for implementing buddy list applications. They also offer presence and awareness support as generic network services to be used in any application.

5. DISCUSSION As discussed in [5], evaluation of collaboration platforms is problematic. An approach they suggest is to base the evaluation of such platforms on development and user testing of small prototypes that demonstrate the core objectives of the platform and satisfy “the usual criteria of usability and usefulness.” The ongoing development of UbiCollab collaboration environment is based on a similar approach. We are developing various collaborative prototypes in order to continuously evaluate UbiCollab’s utility. These developments are done by us and our partners in currently two European projects. Available UbiCollab clients include the mobile phone client and the shared display discussed in the scenario [4, 18]. In addition, a rich client for iPaq and desktop has been implemented in the context of EUROSCOM project on mobile presence [17] for supporting a similar scenario with increased focus on personalization. In a completely different collaboration scenario implemented in IST project ASTRA [15] , a UbiCollab client that acts as a home appliance is developed and tested empirically by a number of geographically distributed families. This client demonstrates how an esthetically designed UbiCollab client can be integrated in the calm environment of a home in order to offer continuous connectivity to distributed family members. These clients together demonstrate the functional and technical flexibility of UbiCollab. Each client provides a subset of the UbiCollab functionality adapted to its collaboration context (i.e. work or home environment). The clients also demonstrate how UbiCollab service API allows the application developer to take full advantage of the capabilities of the specific device (e.g. the communication facilities of mobile phones) thus reducing effect of intrinsic device limitations. Development of new clients, albeit not advanced and full of features, provides us with valuable feedback for the further development of UbiCollab.

6. SUMMARY AND CONCLUSIONS In this paper we have described UbiCollab, an environment for supporting mobile collaboration. The environment is designed to assure a high degree of flexibility both at the technical and at the functional level. The underlying collaboration model is presented along with the overall design and architecture. Various clients have been designed and implemented by using UbiCollab. These clients demonstrate the strengths of UbiCollab for developing applications supporting different forms of mobile collaboration. UbiCollab is being improved in two directions. First, we are extending the service platform in order to support extended interaction modalities, fully realizing the scenario of ubiquitous collaboration. Second, we need to address more thoroughly issues connected to security and privacy. Both these lines of research arise a number of issues at the social as well as the technical level.

7. ACKNOWLEDGEMENT We thank P. Eilertsen, S. Husby Rostad and E. Berg for the help with the implementation of the platform, M.K. Solbjoerg and B. Skogsholm for the mobile phone client, T. Hoem and C.P. Glaeserud for the shared display. We also thank Eurescom Mobile Presence project group for helpful discussions and feedback.

8. REFERENCES 1. Appelt, W., What Groupware Functionality do Users Really Use? in 9th Euromicro Workshop on PDP, (2001), IEEE. 2. Bentley, R., Horstman, T. and Trevor, J. The World Wide Web as enabling technology for CSCW: The case of BSCW. Computer Supported Cooperative Work, 6 (2-3). 111-134. 3. Brown, B., Green, N. and Harper, R. (eds.). Wireless World: Social and Interactional Aspects of the Mobile Age. SpringerVerlag, UK, 2001. 4. Divitini, M. and Farshchian, B.A., Shared visual displays to increase social presence. in HCI International 2003,, (Crete, Greece, 2003), Lawrence Erlbaum Associates. 5. Edwards, W.K., Bellotti, V., Dey, A.K. and Newman, M.W., Stuck in the Middle: The challenges of user-centered design and evaluation for infrastructure. in CHI, (2003), ACM, 297 - 304. 6. Eilertsen, P. and Rostad, S.H. Presence management in telecom, IDI, NTNU, Trondheim, Norway, 2003. 7. Glaserud, C.P. and Hoem, T. Community Wall - Prototype and Usage, IDI, NTNU, Trondheim, Norway, 2003. 8. Hollan, J., Hutchins, E. and Kirsh, D. Distributed Cognition: Toward a New Foundation for Human-Computer Interaction Research. ACM Transactions on Computer-Human Interaction, 7 (2). 174--196. 9. Isaacs, E., Walendowski, A. and Ranganathan, D. Mobile instant messaging through Hubbub. Communications of the ACM, 45 (9). 68--72. 10. Kraut, R.E.e.a. Informal communication in organizations: form, function, and technology. in Oskamp, S. and Spacapan, S. eds. People's reactions to technology in factories, offices, and aerospace, Sage Publications, 1990, 145--199. 11. Luff, P. and Heath, C., Mobility in collaboration. in Computer Supported Cooperative Work, (1998), ACM, 305--314. 12. Mansfield, T., Kaplan, S., Fitzpatrick, G., Phelps, T., Fitzpatrick, M. and Taylor, R., Evolving Orbit: a progress report on building locales. in GROUP'97, (1997), ACM, 241-250. 13. Open Mobile Alliance. Wireless Village homepage. 14. Parlay Group. Presence and Availability Forum homepage, 2003. 15. Romero, N., J.v.Baren, P.Markopoulos, Ruyter, B.d., W.IJsselstein and B.Farshchian. Project Assessment. ASTRA IST-2001-39270 Project Deliverable 3., 2003. 16. Roseman, M. and Greenberg, S., TeamRooms: Network Places for Collaboration. in CSCW, (1996), ACM, 325-333. 17. Skikos, G. (ed.), Mobile Presence Service Prototype. Eurescom 1204 Mobile Presence Project Deliverable 3, 2003. 18. Skogsholm, B. and Solbjørg, M.K. Minimal Shared Workspaces for Mobile Devices, IDI, NTNU, Trondheim, Norway, 2003. 19. XML-RPC.org. XML-RPC homepage, 2003.