Adaptive Data Distribution for Collaboration
Luis Guillermo Torres-Ribero and Alexandra Pomares Quimbaya
Systems Engineering Department, Pontificia Universidad Javeriana, Bogot
´
a, Colombia
Keywords:
Mobile Collaboration, Dissemination Adaptation, Data Distribution.
Abstract:
This paper presents an adaptive data distribution model for mobile collaborative applications called ADDOCO.
Its goal is to adapt the way data is disseminated in environments where Internet is not always available to create
a collaboration network. In this kind of environments, ADDOCO allows to send and retrieve information that
otherwise would be unavailable. The dynamic information dissemination model of ADDOCO was tested in
a collaboration application using smartphones proving its utility to enhance the distribution of the required
information.
1 INTRODUCTION
The increasing number of Internet-capable devices
makes remote collaboration and data storage possible
by enhancing the interaction with constant commu-
nication and the possibility of sharing resources and
information. Storage services like iCloud, Dropbox,
Box, Ubuntu One, etc. are internet based storage ser-
vices that rely on the network to handle the informa-
tion and the resources they manage. This kind of ser-
vices allows the user the possibility of accessing his
information and resources in any place at any time.
With the increase of mobile devices, these on-line
services are an adequate solution for data storage and
processing, overcoming some of the limitations mo-
bile devices have. However, all of these services re-
quire an Internet connection to work properly. In a
scenario where no Internet connection is available, a
lot of the above mentioned services would be immedi-
ately affected by not being able to work correctly and
most of them will need to wait for a new Internet con-
nection available in order to work at all. Lack of In-
ternet can be found in developing countries where In-
ternet coverage is not as widespread as in other coun-
tries; even in developed countries in some conditions
(e.g. high mountain roads, isolated places, etc.) might
have no Internet connection whatsoever, diminishing
the possibility of remote collaboration, even when the
devices have technologies that make them capable of
making a network of their own and collaborate. For
example if there is a landslide in a mountain road
where no mobile Internet is available, a network can
be created with nearby smarthphone users in order to
send information on the landslide, e.g. photos, loca-
tion, number of injured people if any, etc. and get
adequate help from nearby entities. There are tools
that allow people to interact while being on a mobile
environment and allow users to share information be-
tween them. However, these services rely on having
an active Internet connection in order to be able to
spread notifications among the users.
The requirement of having Internet independent
collaborative networks motivates the creation of this
work. This paper presents ADDOCO: an adaptive
data distribution framework that supports collabora-
tive mobile environments making a dynamic transi-
tion on the data dissemination method they use to
communicate and allowing to change dynamically the
entity that plays a role in a collaborative task. These
dynamic properties are based on the context of the
entities, taking into account their abilities, location,
collaboration phases and other relevant contextual in-
formation. The structure of this paper is as follows:
Section 2 describes some of the basic concepts around
data dissemination; then Section 3 shows ADDOCO,
a framework that considers user context and collabo-
ration phase in order to dynamically disseminate data.
Section 4 shows related works and their contribution
to this work, afterwards Section 5 shows a prototype
of ADDOCO and its functional evaluation. Finally,
Section 6 shows the conclusions and future works.
2 PRELIMINARY CONCEPTS
In order to have an appropriate understanding of the
problem context, the key elements involved in this
157
Torres-Ribero L. and Pomares Quimbaya A..
Adaptive Data Distribution for Collaboration.
DOI: 10.5220/0004004901570162
In Proceedings of the 14th International Conference on Enterprise Information Systems (ICEIS-2012), pages 157-162
ISBN: 978-989-8565-10-5
Copyright
c
2012 SCITEPRESS (Science and Technology Publications, Lda.)
work are introduced in this section.
Contextual information is the information that
considers environmental elements, location descrip-
tion and interaction of people, among other character-
istics, that help defining a complete scenario (Bellav-
ista et al., 2013). Contextual information can be very
wide and may take into account a lot of elements in
order to correctly describe the particular scenario in
which some action is taken. In this particular case,
we restrain contextual information as a series of el-
ements that are relevant to the scenarios in which
the presented framework will be used, such as med-
ical contexts, emergency management contexts, etc.
There are mainly two contexts that are considered in
this work: the Collaborative Context and the Mobile
context.
The Collaborative context determines in a log-
ical way the elements involved in a scenario. It in-
cludes the elements that will determine whether a per-
son is available to collaborate and the different roles,
which that particular person could assume during a
collaborative scenario. For example, if a person is a
medical doctor and its willing to collaborate during
an accident, the collaboration context for that person
will include that he is willing to assume the role of a
doctor if it is required.
The Mobile context determines the involved ele-
ments in a physical way, this is, considering elements
that can be interpreted as physical signals or data; for
example, if there is any Internet connection available,
the speed at which the user is moving, etc. Location is
an important contextual element that is present in both
Collaboration Context and Mobile Context. How-
ever, location is expressed differently in each context.
In the Collaboration Context location will be repre-
sented as a Hierarchical Location, which describes lo-
cation as a topology or symbolic place, e.g. a room X
inside building Y (Prayogi et al., 2007)(Zhang et al.,
2006). In the Mobile Context location is represented
as a Cartesian Location which describes locations as
a set of coordinates or GPS assisted geometric calcu-
lations e.g. 04 degrees 00’ N and 63 degrees 00’ W.
Other important elements are Participants, which col-
laborate sending and receiving information and exe-
cuting actions according to their knowledge and role.
It is important to notice that Participants are the
main elements in the model because they are mobile
entities that share and store information. Additionally,
a Participant is able to act as a bridge between two
participants. Each participant will have a set of roles
that he is willing to assume.
For example, in the landslide scenario, if there
were injured people and a doctor is quickly required,
Participant A could look for the Doctor role in par-
ticipants nearby. If a nearby Participant B has in his
set of roles the Doctor role, then he will be asked to
assume that role in healing the injured.
Each participant has relevant data that must be dis-
tributed; to achieve this different variables must be
taken into account, such as, the availability of Internet
connection and the location, both physical and log-
ical. For example, in our landslide scenario, infor-
mation about the time when the landslide occurred,
the location where it happened and the number of
injured people must be distributed to Participants to
whom that information is relevant (e.g Firemen, Doc-
tors, Road Safety Department, etc.)
Since these two variables are dynamic, this is, are
prone to change rapidly, the data distribution method
must also by dynamic. In order to address this is-
sue, different data dissemination methods have been
selected and are the basis of the dynamic transition of
data distribution according to the context of the par-
ticipants. For example, if in the landslide scenario,
the accident occurred in a road and the people who
are driving through that road do not know each other,
the first step in the dissemination of data would be to
ask if a required role is nearby. If, on the contrary,
people already know each other along with role in-
formation, a communication protocol can be estab-
lished and a dynamic communication protocol with
a basic structure will be generated according to the
scenario needs. There are different data dissemina-
tion models (Bellavista et al., 2013) that are used dif-
ferently according to the requirements of the environ-
ment that uses them. Since a highly-dynamic environ-
ment is being evaluated, then dissemination methods
must also be highly-dynamic.
Some of the data dissemination models are: i)
Sensor Direct Access dissemination: Distributing the
data directly to a specific place, ii) Flooding-Based
dissemination: Distributing the data to a specific
group, iii) Gossip-Based dissemination: Distributing
data randomly among available nodes and iv) Selec-
tion Based dissemination: Distributing data creating
a backbone of nodes.
The next section will present ADDOCO, a frame-
work that dynamically changes data dissemination
methods in mobile environments according to contex-
tual information and available participants.
3 ADDOCO
Due to the requirements of data sharing in highly- dy-
namic environments, this is, mobile and distributed
environments; ADDOCO is created as a framework
that aids in the distribution of data between partici-
ICEIS2012-14thInternationalConferenceonEnterpriseInformationSystems
158
Figure 1: Smartphones creating a smartphone-network.
pants among a collaborative process. To achieve this,
ADDOCO adapts, according to the context, the model
used for data distribution between the participants in-
volved in a collaboration.
3.1 Distribution Principle
When mobile devices are connected to the internet
they can access on-line services that allow them to
communicate, obtain and even process information.
Some mobile devices nowadays are smartphones, de-
fined as “a mobile phone that can be used as a small
computer” by the Cambridge dictionary and are ca-
pable of doing a lot of data processing. Smartphones
take more advantage of on-line services, by having
synchronized contacts, configuration files, etc. Most
of them have the ability to create networks between
them in order to share information and communi-
cate. It is possible to think in a smartphone network
that would act like a small scale Internet, with smart-
phones providing services to other smartphones while
communicating and sharing data. This capacity of
making a network between them can be very useful
when collaboration is required, but there is no Inter-
net connection that allows smartphones to do so. In
a scenario where no Internet is available the smart-
phones could create a network between them, with no
guarantee that all of the smartphones connected to the
internet will be inside the smartphone network due to
technical restrictions like location, i.e. too far to be in-
cluded in the network, or permissions, i.e. the device
has not allowed smartphone networking, as seen in
Figure 1. Within the smartphone network there may
be smartphones that act as a bridge connecting two
smartphones that are within its range, but not within
the range of each other. For example, if three de-
vices A,B and C are making a network and the de-
vice A needs to send some data to C, but C is out
of range, then B, who is in range of both A and C
will act as a bridge transmitting information between
both A and C. This scenario is illustrated in Figure
2. Taking advantage of this possibility, different dis-
semination methods can be dynamically selected ac-
cording to the context. For example, if a landslide
occurs in a road where no internet access or mobile
Figure 2: Smartphone Network Bridge.
network is available, someone affected by the land-
slide could start making a network with nearby drivers
in order to send information on the landslide like pic-
tures, location, if there were accidents, etc. In this
scenario the device of the user will look for other
devices and send information, either randomly to a
group of those nearby users using gossip-based dis-
semination, or selecting a range to send to all users
within that range using flooding-based dissemination.
When a pattern has been established, the dissemina-
tion method changes to a selection based method, cre-
ating a backbone based on the interactions of each
participant.
3.2 Dynamic Dissemination Process
In order to describe the dynamic dissemination pro-
cess some basic concepts must be formally defined.
A Participant has a physical Location. Note that the
location here is represented as a Cartesian coordi-
nate in order to be interpreted appropriately by the
device. The Participant also has a set of Permis-
sion that allows him to request, obtain and manipu-
late Data within the device. It is important to remem-
ber that Data will be stored as closely as possible to
the node that generated it. Therefore the Data mod-
elled in this context is not a replicated copy of Data
available someplace else, but represents the Data that
a mobile device is responsible for creating, updating
and disseminating. Note that the Mobile context also
has a Connection Status component. This component
has information regarding its environment, for exam-
ple if the Participant is connected to a network, it
must search within near devices in order to perform
a collaborative task, and will aid in selecting the best
dissemination method that a requested Data needs to
follow in order to arrive at its destination.This contex-
tual information is a key element used to dynamically
adapt the dissemination method. The “dissemination
service” algorithm is described in Algorithm 1. In this
algorithm a directory is first used in order to obtain the
dataHolder, this is, the entity responsible for hand-
AdaptiveDataDistributionforCollaboration
159
Algorithm 1: ADDOCO Dissemination Process.
Require: Data requirements, Access Permissions speci-
fied, Max number of jumps.
Ensure: Data obtained or stored
1: nJump Max number of jumps
2: if Directory is active then
3: dataHolder call retrieveDataHolder with
Task,Location,Role
4: else
5: for all Entity in nearEntities do
6: if Entity 6= dataHolder and nJump > 0 then
7: dataHolder call Dissemination Process
with Entity,Task,Location,Role, (nJumps-1)
8: end if
9: end for
10: end if
11: return dataHolder
ling the data requested. A number of jumps are spec-
ified (1) in order to know how many neighbours must
be queried to try to obtain the requested data. If there
is an active Directory with the information of the data
handler (2) the dataHolder is then acquired. If the
Directory is not available then the query is made to
near entities. If a near entity does not have the data, it
will recursively ask its neighbours for the dataHolder,
having one jump less than the original caller (7) un-
til it reaches zero (6). The element nearEntities are
dynamically located according to both contextual and
collaborative information according to the messaging
protocol if: a) the collaboration model relies on a
centralized role and someone who plays that role is
nearby, most likely a sensor direct access will be used.
b) the collaboration model relies mainly on message
or event interchange in a publisher-subscriber way,
the selected dissemination method would be selection
based. c) the collaborative model relies on roles, but
there are not many entities that play the role in range a
flooding based dissemination may be adequate, and d)
There are some of the required roles nearby a gossip
based dissemination could obtain the data.
3.3 ADDOCO Architecture
The main components of the architecture are de-
scribed in Figure 3. The BPMN parser component
is in charge of obtaining a BPMN model described in
XPDL (XML Process Definition Language) and in-
terpreting them so that both; the mobile context and
the collaboration context obtain the data in their own
terms in order to correctly execute the tasks described.
The Mobile Context Manager component handles
the data, location and connectivity capabilities and
status of the mobile device. The Collaboration Con-
text Manager manages all the elements related to the
collaborative process such as the sequence of the tasks
Figure 3: ADDOCO Architecture.
to be executed, the role that will perform each task,
the abilities of each user, etc. This manager handles
the dynamic role assignment in ADDOCO. The Dis-
semination Manager will take into account the in-
formation provided by both (the Mobile and Collab-
oration context managers) in order to determine the
right dissemination model. This manager handles the
dynamic dissemination in ADDOCO. A collaborative
process using ADDOCO will start by defining the col-
laborative services involved in collaboration. This in-
volves the definition of roles, their required abilities
and the contextual elements that are going to be con-
sidered. After these basic components have been de-
fined, a BPMN model is made in order to link those
services and determine which role will execute them.
The translation of a BPMN model into a collaborative
service is not detailed due to the scope of this paper.
4 RELATED WORKS
This section presents an analysis of the main lim-
itations of the architectures and frameworks related
to the intention of ADDOCOM. MoCA (Sacramento
et al., 2004) is an architecture oriented towards mo-
bile collaboration, by communicating each node with
another directly and obtaining information through a
proxy. This architecture models effective collabora-
tion architecture, but it does not define how data is
managed and highly depends on the availability of the
proxy for new interactions. Other solutions are dis-
tribution applications as Solar, (Chen et al., 2008) a
middleware that aids in the creation of data-centred
applications, by letting the program request data to
the middleware and handles the data distribution for
the application, storing and retrieving it using differ-
ent distribution models. However, once a distribution
model has been selected it distributes data in a spe-
cific way and it does not adapt according to the chang-
ing context of the application. There are also frame-
works and middlewares for building collaborative ap-
plications that take into account the above mentioned
concepts and act as a guideline for new or exist-
ing programs and determine how they distribute data.
SALES (Corradi et al., 2010) is a middleware that
ICEIS2012-14thInternationalConferenceonEnterpriseInformationSystems
160
aims to distribute information in a context-oriented
mobile based application. The SALES model takes
into account the individual context in each node and
notifies others of the contextual information it han-
dles. SALES aids in data distribution by reducing
the weight of data transferred and the amount of data
transmitted while at the same time increasing the rel-
evance of the disseminated information. However,
an algorithm for intelligently distributing data is yet
to be done. Another work establishes a publisher -
subscriber dissemination, which is a selection based
dissemination method (Wu et al., 2010), between Ve-
hicular Ad-Hoc Networks (VANETs). This project
proposes the transmission of real time information on
the traffic to surrounding vehicles while taking into
account their behaviour order to predict their future
location and whether the information is relevant or
not. This work aids in disseminating traffic data but
only as information to other vehicles and it cannot be
applied to a complex collaboration scenario. Zim-
bra (Zimbra, 2011) is another collaborative applica-
tion that provides real time information and aids in the
management of schedules, tasks and calendars. Mo-
bile collaboration in these applications is well man-
aged, however, it depends on a server-side to obtain
and manage the data required in order to function
properly, being highly dependent on an Internet con-
nection. The ADDOCOM framework considers dy-
namic roles of the users, their location and context
information, takes into account collaboration models
and has a Dynamic Data Dissemination method that
adapts to the environment, addressing the data man-
agement requirements of a distributed mobile collab-
oration environment.
5 PROTOTYPE
In order to make tests of the ADDOCO model, a mo-
bile prototype was made. This prototype aims to val-
idate the usefulness of the collaboration model and
how dynamic data dissemination may aid in obtain-
ing the information required to collaborate in different
environments and contexts. The selected devices for
the test were Android powered devices running 2.3.3
version of the OS (Gingerbread) with no cellular data
internet plan, with an initially active Wi-Fi connec-
tion to connect to an initial directory, and Bluetooth
in order to make a collaboration network that tests
the data dissemination model. The prototype first at-
tempts a connection with a pre-established server in
order to obtain the data and begins downloading it. If
that server is unreachable, whether at the beginning
of the process or the connection fails in the middle of
the process, an alternate dissemination method will be
selected using Bluetooth networks. If the connection
with the directory fails the user will be notified that
the connection has been lost and that nearby users are
being queried for the information. A list of nearby
users who have the requested information is displayed
and the user selects one of the available devices.
Once a user selects a data source who will provide
the information, the provider user’s device will dis-
play a message with the request of information and
additional data on the user who wants to obtain it.
The provider user may accept or reject the request.
If the request is accepted then the information will be
provided to the user that requested it, if the request
is rejected a message will show up in the requester’s
device informing that the connection could not be es-
tablished.
6 CONCLUSIONS AND FUTURE
WORK
The implementation of the ADDOCO model aims to
take full advantage of Ad-Hoc networks in collab-
orative environments. Functional tests proved that
collaboration is enhanced with ADDOCO by having
dynamic methods for obtaining the data while being
aware of the context, thus reducing the time of a po-
tentially non-executable task. Bluetooth technology
was used in order to make closed-range networks to
adequately test the dissemination model; however, we
found that this technology is not the best choice for
making effective data dissemination and collabora-
tive networks due to its restrictions and characteris-
tics. However, it shed light in how the functionality of
a smartphone network could work and the effective-
ness of the collaboration and data distribution model
of ADDOCO. As a future work the prototype is going
to be enhanced in order to work in more complex col-
laborative tasks, taking into account not only the con-
nection status but also the specific location of the user
and making possible the execution of parallel tasks.
Additionally, ADDOCO will make use of an emerging
technology called Wi-Fi Direct
TM
(WiFi, 2011) in or-
der to overcome technical drawbacks seen during the
use of Bluetooth technology in this context. The Wi-
Fi Direct technology will be supported by Android 4.0
(Ice Cream Sandwich) and due to the implementation
of the prototype using the Android SDK ADDOCOs
prototype will most likely adopt this technology in a
near future for further tests and improved functional-
ity.
AdaptiveDataDistributionforCollaboration
161
ACKNOWLEDGEMENTS
This work was supported by the project “Iden-
tificaci
´
on semiautom
´
atica de pacientes con enfer-
medades cr
´
onicas a partir de la exploraci
´
on retro-
spectiva de las historias cl
´
ınicas electr
´
onicas reg-
istradas en el sistema SAHI del Hospital San Igna-
cio” made by the Pontificia Universidad Javeriana in
conjunction with the Hospital Universitario San Igna-
cio.
REFERENCES
Bellavista, P., Corradi, A., Fanelli, M., and Foschini, L.
(2013). A survey of context data distribution for mo-
bile ubiquitous systems. Accepted in ACM Comput-
ing Surveys (CSUR), ACM Press, expected to appear
in Vol. 45:1–49.
Chen, G., Li, M., and Kotz, D. (2008). Data-centric mid-
dleware for context-aware pervasive computing. Per-
vasive Mob. Comput., 4:216–253.
Corradi, A., Fanelli, M., and Foschini, L. (2010). To-
wards adaptive and scalable context aware middle-
ware. IJARAS, 1(1):58–74.
Prayogi, A., Park, J., and Hwang, E. (2007). Selective role
assignment on dynamic location-based access control.
In International Conference on Convergence Informa-
tion Technology, 2007., pages 2136 –2135.
Sacramento, V., Endler, M., Rubinsztejn, H. K., Lima, L. S.,
Goncalves, K., Nascimento, F. N., and Bueno, G. A.
(2004). Moca: A middleware for developing collabo-
rative applications for mobile users. IEEE Distributed
Systems Online, 5:2–.
Waze (2011). Waze,2011. waze. http://world.waze.com.
WiFi (2011). Wifi direct, 2011. wifi alliance.
http://www.wi-fi.org.
Wu, L., Liu, M., Wang, X., and Gong, H. (2010). Dynamic
distribution-aware data dissemination for vehicular ad
hoc networks. In 2nd International Conference on Fu-
ture Computer and Communication (ICFCC), 2010.,
volume 2, pages V2–353 –V2–360.
Zhang, H., He, Y., and Shi, Z. (2006). Spatial context in
role-based access control. In Rhee, M. and Lee, B.,
editors, Information Security and Cryptology - ICISC
2006, volume 4296 of Lecture Notes in Computer Sci-
ence, pages 166–178. Springer Berlin / Heidelberg.
10.1007/11927587-15.
Zimbra (2011). Zimbra, 2011. vmware.
http://www.zimbra.com/products/mobility.html.
ICEIS2012-14thInternationalConferenceonEnterpriseInformationSystems
162