Página principal

Analysis and Design of Mobile Collaborative Applications Using Contextual Elements

Descargar 128.82 Kb.
Fecha de conversión18.07.2016
Tamaño128.82 Kb.
  1   2   3
Analysis and Design of Mobile Collaborative Applications Using Contextual Elements
Rosa A. Alarcon1, Luis A. Guerrero2, Sergio F. Ochoa2, José A. Pino2
1 Department of Computer Science, Pontificia Universidad Catolica de Chile
Vicuña Mackenna 4860, Santiago 6904411, Chile.


2 Department of Computer Science, Universidad de Chile
Blanco Encalada 2120, Santiago 6511224, Chile.

{luguerre, sochoa, jpino}@dcc.uchile.cl

Abstract. Mobile collaborative applications support mobile users performing a collaborative task. Designing such applications involve several challenges considering the limitations imposed by the collaboration context. This paper presents a framework of contextual elements to be considered when a collaborative application for mobile scenarios is being conceived and designed. These contextual elements have been identified based on the authors experience and from a literature review. The use of this framework should help developers identifying non-functional requirements and part of the architectural design in order to get contextualized applications. The use of this proposed framework is complementary to any software process. An example of the framework use is presented as an example of applicability.
1. Introduction
Groupware technology allows group members to work asynchronously and geographically distributed; e.g., they may be part of a building construction project where engineers, architects, stakeholders and staff are located in many places in the same city or country. Moreover, the distance can be variable if work group members move from place to place or even if they change location within several offices in the same building. In the latter case, workers are called nomadic. Attending these users’ needs, groupware technology has also evolved, moving from complex and heavy software tying users to fixed computers (Luff and Heath 1998) to lightweight software encompassing wireless communication and mobile computing devices such as laptops, PDAs, RFID tags and cellular telephones (Antunes and Costa 2002; Kirda et al. 2002; Myers 2001). This effect can be seen in diverse areas such as engineering education, customers support, disaster relief, military operations and business.
On the other hand, it is long recognized that successful group work is not simply the union of individual tasks, but an organized set of coherent activities with good strategies of communication, cooperation and coordination among group members. Typically, groupware systems has had unexpected successes and failures. Several authors have attempted to identify the possible causes. For instance, Grudin (1994) identifies the importance of designing groupware taking into account not only technological issues but also the complex social dynamics within which group activity occurs, e.g., social, motivational, political and economic factors. He recommends a sophisticated understanding of the prospective users’ workplace. Ljungberg and Holm (1996) analyze conversational systems and found them drastically decontextualized, i.e., they do not consider the wide social context where interaction actually occurs, assuming a stable and immutable role structure. Bardram concludes the same while analyzing a groupware system to support health-care workers (Bardram 1997).
As stressed by these authors, the problem is typical design of groupware systems does not consider the context where these systems will be used. In contrast, most groupware developers usually focus almost exclusively on the analysis and specification of functional requirements that serves as the basis of the design and system implementation. Some non- functional requirements are considered generally during this stage (e.g. the user capability for collaboration), but there is not a formal process that helps developers to focus on this kind of requisites and to understand the requirements within a broader, contextualized perspective. For the case of mobile groupware applications, the design problem may be even more complex because these applications change the interaction paradigm, considering the physical environment as a protagonist (Brown and O’Hara 2002), and also deal with limited hardware resources (Tauber and Kaashoek 1997; Guerrero et al. 2005).
This paper presents a framework, based on contextual elements, that helps designers to understand the application context. The framework classifies some context elements that we consider as relevant for collaborative mobile applications analysis and design. In addition, we propose a process that following the classic software life cycle guides the usage of the framework. As a result, functional, non-functional requirements and software restrictions are identified and aligned considering the different context elements. Next section presents our understanding of the context concept. Section 3 presents the context-based framework for designing collaborative mobile applications. Section 4 analyzes the application of the framework for three cases, and section 5 presents some conclusions.
2. Understanding Context
There is no consensual definition about what is context or what it comprises. Context has been described, e.g., as a set of preferences/beliefs, a set of objects in a graphical interface that belongs to a certain region or window where the user’s action takes place, a set of attributes, a set of characteristics of the situation at hand and the knowledge use goals, a set of knowledge pieces related to a particular activity or situation (Brezillon 1999a). In a broader sense, context can be understood as “the interrelated conditions in which an event, action or situation takes place”1. Other definitions follow that direction: context can be seen as “a complex description of shared knowledge within which an action or event occurs” (Rittenbruch 2002), or as “whatever does not intervene explicitly in a problem solving but constrains it” (Brezillon et al. 2004).
Although dissimilar, research in the “context” topic seems to agree in two aspects: First, context is regarded as whatever surrounds something, e.g., situation, an activity, an idea, but is not the thing itself. Second, context comprises a set of interrelated elements that keep a coherence relationship, where such relationship brings a particular meaning to the thing, e.g., situation, an activity, an idea.
Several attempts have been made to identify different kinds of context. Brezillon (1999b) and Brezillon et al. (2004) distinguish three main parts of context which can be understood as three major scopes: external knowledge – knowledge not relevant to the situation at hand but shared by group members –, contextual knowledge – knowledge relevant to the situation at hand – and proceduralized context – knowledge concerned with the what is actually happening. Chen and Kotz (2000), distinguish four types of context: physical – lightning, noise level, traffic conditions, temperature –, computing – network connectivity, communication cost, bandwidth and nearby resources –, time – time or day, season – and user context – users’ profile, location, people nearby and social situation. Brezillon et al. (2004) distinguish group, project and individual contexts, and McCarthy (1993) affirms that the contextual dimensions are infinite. However, these classifications of context are general and since we are concerned with groupware design, our interest focuses on the types of context which must be considered at least for this kind of design.
Several experiences in the use of groupware applications have shown the lack of flexibility of these tools to support collaboration in various scenarios (Bardram 1997; Grudin 1994; Ljungberg and Holm 1996). Typically, the physical context that describes the physical characteristics of the collaboration scenario and the social context that describe the particularities of the users and the interactions among users, are not considered during the design of a groupware application. The influence of the context elements over the groupware application design is so important that it is really difficult to develop a successful tool without considering these contextual elements. Next section presents the proposed framework that help designers to consider relevant context elements when designing mobile collaborative applications.
3. A Framework of Contextual Elements
Collaborative mobile applications differ from those designed for fixed scenarios mainly because of the computing restrictions and the interaction modes imposed by mobile devices, (Tauber and Kaashoek 1997; Brown and O’Hara 2002; Guerrero et al. 2005). The physical environment becomes an important player when designing interaction, because it changes while users move around. As a result, the current situation where users interact with the portable device changes as well (Brown and O’Hara 2002). These particularities add challenging requirements to groupware applications.
Based on the authors experience and in the literature a conceptual framework for designing collaborative mobile applications is proposed. The framework identifies and categorizes a subset of key contextual elements that may be relevant for design. The context elements are organized into eight types of context realms arranged in three layers. The layers follow the software development cycle: conception, analysis and architectural design (Fig. 1).

Fig.1. Design context for collaborative mobile applications
During the conception phase, the context elements in the lower level help the application developer to understand the application requirements from a broader perspective: we must understand the social context where the application will work, the collaborative strategies that the group members will develop and the activities that compose the collaborative main task. The elements in this layer are quite stable in a software development project. In addition, the context elements of this layer restrict the context elements of the upper layers.
A further analysis is carried on in the second layer: for the activities identified, it is necessary to determine the intra group organization, the group organizational context and the physical scenarios where it will take place. Finally, in the third layer, the understanding of all these context elements will influence and restrict the technological choices that implements the collaborative task as well as the interaction style carried on by group members (design phase). These context categories are discussed below.
3.1. Collaborative Task Context

Within the context of collaborative task, application designers must identify some features related with the groupware technology, such as:

  • Communication. Communication is a key issue in groupware applications; it may be synchronous or asynchronous, directed or mediated; public, private or a mixture. For the case of collaborative tasks done with mobile groupware applications, the impact of these communication strategies will depend on the degree of tasks parallelism [Sark03].

  • Coordination. It is necessary to determine coordination policies. For instance, for activities with a high degree of parallelism, a strong coordination mechanism may be required, whereas in joint activities, coordination could be more subtle.

  • Collaboration. It is also necessary to determine the collaborative strategies that the group will follow; hence it is necessary to define the group member roles, floor control politics, negotiation protocols, etc.

  • Criticality: When designing a collaborative mobile application it is important to determine its urgency degree and its importance for the user. These criteria may influence the election of communication and coordination strategies.

  • Complexity: The number of activities comprised in the collaborative application will help to determine its complexity.

3.2. Social context

Social context has acquired more relevance in the recent years. However, it is hard if not impossible to say what it comprises and what does not, because all human actions are ultimately rooted in the social context. For the sake of practicality, we consider some aspects that had been proved to be important in groupware design and provide developers with more information regarding the prospective user: familiarity with IT, work practice tools (e.g. agendas, schedules, etc.), politics for system implementation, readiness to use ITs, previous formal context – law and rules. Regarding social rules and norms, we consider them part of the intra-grupal and organizational realm.

3.3. Activity Context

Typically, a collaborative task can be divided in a set of activities that must be carried out coordinately to accomplish the task [Guer05]. Each activity has its own context, and the issues relevant to consider during the application analysis and design are the following:

  • Mobile/located: When collaborators require moving around in order to accomplish a function or a specific activity, it is necessary to provide mobile support; otherwise the activities are called fixed or located. Mobile activities typically involve wandering, traveling or visiting [Kris00].

  • Synchronicity/Asynchronicity: Group members can execute activities in a synchronous (coupled or joint) or asynchronous (uncoupled, independent or parallel) modes. Hence, activities may be characterized as mobile/coupled, mobile/uncoupled, located/coupled and located/uncoupled or mixed (changes along time). This characterization helps designers to identify the most appropriate type of device and software product for supporting them.

  • Coordination, communication and negotiation strategies: The need for complex strategies for coordination and negotiation as well as the need for high levels of communication will help to determine some restrictions on the portable devices (e.g. require high resolution for the screen or a stable network support).

  • Criticality: Again it is important to determine the urgency of achieving the activity goals and the activity importance for the user.

  • Duration: Except for the case of mobile phones, activity duration in mobile collaboration based on PDAs, notebooks or Tablet PCs can be critical as it could be limited by battery life [Kort01, Guer05]. Although it is possible to carry extra batteries, by identifying activity duration and designing according to it, we may optimize the use of power supply [Chen00, Hakk05].

3.4 Organizational Context

Rosa et al. considers a group and individual context [Rosa03]. In this paper, the individual context is not explicitly considered as we are more concerned with the understanding of group context for applications design. Furthermore, we make a difference between Organizational and Group context. The former comprehends the concerns related with the organization which the application users belongs to (e.g. the university). Among the relevant elements of the organizational context are the following:

  • Organizational Structure (Rigid/Flexible): The organization structure will influence the group needs for coordination, and control policies. A rigid organization requires formal coordination with points of synchronization, but flexible organizations may require a reliable network communication in order to allow group members to react to changes in their environment, and engage in negotiation processes.

  • Demographics: It is also important to understand the users of the application in a broad scope, for instance, their age, gender, race, and language may influence the application design. It may require special support for disabled people, special interface design and interaction for children or the use of a specific language and icons for technical communities (e.g. firefighters).

  • Politics for system implementation: The users’ willingness to use the system is crucial for its success, but it may impose some restrictions regarding schedules, authority, control and power. It is important to define or negotiate a set of policies that facilitates the system implementation in the users’ organization.

  • Collaboration policies/rules/norms: Every organization develops a series of social protocols, policies, rules and norms that regulates their workflow. It is important to identify which are the social rules that may be relevant for the application and consider carefully the consequences of modifying or exploiting such rules.

3.5 Group context

It is hard to define what the group context is. From a broad perspective we may argue that all the contextual elements discussed in this section describe the group context. However, our intention is to focus in aspects that describe the intra-group arrangement in order to guide the application design. Some of these aspects are:

  • Group Size: Small groups are different than larger ones. Research in groupware has pointed out the importance of group size for the success of the strategies of coordination, communication and collaboration. Hence, group size is a characteristic that must be considered when designing collaborative mobile applications.

  • Group structure: Although an organization may have a very defined and rigid structure, the organization within the group boundaries may differ. They may need an specific control hierarchy according to the task developed by the group.

  • Roles: In a similar way, although the group is immersed in an organization and satisfy its roles, conventions and norms, the group may decide to create its own social roles, conventions and norms.

3.6. Physical Context

  • Physical Space (comfort). This element represents the availability of a physical space required to deploy a computing device and operate the collaborative application. The smaller/more uncomfortable/more unstable the physical space available, the less likely is to use large or heavy computing devices.

  • Physical Conditions. Physical conditions such as noise, light, number of people around and distracting factors also impose restrictions over the type of user interface to be used for interacting with the collaborative application [Tara03].

  • Communication support. As users are able to move and change locations, they may arrive to places with unreliable communication support or no communication at all. It depends on the geographic areas where users perform their activities.

  • Safety. The safety level of the scenario provides a guideline to find the best computing device to be used during the collaboration process [Tara03].

  • Privacy. This is a context element to consider during the application design because mobile applications are probably going to be used in public spaces [Chen00, Kort01].

  • User Location (positioning). Traditionally in groupware, it comprehends users’ location within the virtual environment and is referred as location awareness. Current technology allows to recognize the users’ actual location in the physical world (e.g. “the user is in coordinates X,Y” or “the user is in the main hall”). Again, whether the provision of user’s location information is important or not will depend on the nature of the activity. For the case of mobile/coupled applications, it could be important for group members to know the location of each other in order to make a decision. In applications where parallelism and users’ mobility prevails, users may want to know each other location for planning encounters.

3.7. Human-Computer Interaction Context

As technology evolves with time, its impact and demands on user cognition increase. Thus, portable devices restrictions must be taken into account for designing an effective user/device interaction. Specific restrictions are briefly described below.

  • Visualization. Since a portable device screen size is typically small, its graphical capabilities, resolution and colors gain importance. In some situations, user interfaces convey complex information while people are engaged in several activities at the same time, while in other ones, a small text message will be enough.

  • Data Input. This element represents type and rate of data input required by the collaborative application. Some of the typical data input devices are: keyboard, handwriting devices, pointing devices, microphone, video-camera. The data input rate and the type of data input involved in the collaborative process help designers to identify the best computing devices to support each collaboration activity.

  • Multimedia Capabilities. This element represents the data format to be considered. It includes input, output and management and may be more relevant depending on users’ needs (e.g. demographics: the users are children).

  • Usability: Again depending on the nature of organization demographics (e.g. firemen) as well as application criticality (e.g. attend fires is urgent and very important) and users physical conditions (e.g. in the middle of a fire), usability may become a relevant issue to attend.

  • Multitasking. People’s need to perform more than one task simultaneously. For example, an application designed for mobile vendors may require users to walk, talk and use the collaborative system at the same time.

3.8. Technological Context

The computational context is defined by the features of the computing devices used to support an activity.

  • Power Supply. Electric power availability allowing the application to function in a continuous way. The activity duration is in direct relation with this context element.

  • Compatibility. Capability of a device to communicate with other devices using a specific communication protocol – IEEE 802.11x or Bluetooth –. This is a specific issue for mobile scenarios.

  • Network Availability. This context element represents the availability of networking services in the collaboration scenario. Networks do not need to be always available and yet, it is possible to have mobile devices for collaboration, since people interact asynchronously until an active network service point is reached. It depends on the communication support provided by the users’ physical environment.

  • Off-line Support. Capability of the collaborative application for off-line work. It involves specific mechanisms to synchronize events and actions from the collaborators. It depends on the degree of joint or parallel work, as well as the communications support of their physical environment.

  • Communication Bandwidth. Relevance of communication bandwidth for the continuous operation of the collaborative application.

  • Security. Transactions security can be an important issue to consider because any unauthorized device may be able to access a MANET. Encryption and message delivery based on roles can be used to improve security.

  • Information Privacy. If users’ information is stored in a central repository, it could be accessed by unauthorized people [Guer01]; otherwise it may be distributed in several machines or migrating across them. Furthermore, in MANETs or public networks users’ actions, location and identities may become visible to others [Kort01, Chen00]. On the other hand, the distance between a user and a handheld device during the interactions is shorter than the distance between a user and his/her notebook or tablet PC. Along with small screens, these features provide better privacy than notebooks and tablet PCs (the data displayed on bigger screen needs to be protected from lurkers in public spaces.

  • Deployment capability. The mobile devices supporting the collaborative activity need to be deployed in the working scenario. Mobile devices are usually easier to deploy than desktop PCs or other devices designed for stable settings.

  • Screen Size: Screen size requirements are related to the amount of information the user needs to comprehensively see to support the corresponding activity. Applications with large visual representations require large screens such as notebooks’ screens. Although handheld devices have been criticized in the literature by their small screens [Guer05, Kort01], recent visualization techniques have improved the capabilities of these devices to display graphical/detailed information [Baud04].

  • Data Input Mechanisms: A possible requirement for a mobile collaborative application is the need for massive data entry. PDAs and mobile phones use pen-based data input, which is slow, but also useful to support short annotations [Buyu00, Sark03]. On the other hand, notebooks and tablet PCs are the most appropriate devices to support data intensive processes using the keyboard. The input process of other data types, such as image, video or audio, is operatively similar for any kind of mobile computing device. However, the features of each device limit the quality and quantity of data that is able to capture and store.

  • Transportability: For the case of users with a high degree of mobility (e.g. mobile vendors, nurses in a hospital, children in a naturalistic environment, etc.), issues such as device weight and size may acquire higher relevance.

  1   2   3

La base de datos está protegida por derechos de autor ©espanito.com 2016
enviar mensaje