Human-human Collaboration Formalism for Groupware
Tailorability in Collaborative Augmented Environments
Samir Benbelkacem
1
, Nadia Zenati-Henda
1
, Hayet Belghit
1
, Samir Otmane
2
and Abdelkader Bellarbi
1,2
1
Centre de Development Des Technolgies Avancées, Cité du 20 août 1956, Algiers, Algeria
2
University of Evry, Rue du Pelvoux, 91020 Evry, France
Keywords: Augmented Reality, Collaborative Environment, Multi-Agent System, Groupware, Tailorability.
Abstract: In this paper, human-human collaboration formalism has been proposed to support groupware tailorability for
Collaborative Augmented Environments (CAE). Our work is based on the 3C functional model proposed by
Ellis. This model decomposes the collaboration into communication, coordination and production. This
decomposition has been adapted to design tailorable groupware for CAE. A new concept called “distribution”
has been introduced to consider the properties of collaborative and distributed 3D environment. A new
formalism integrating this concept is proposed in order to adapt a groupware system to the real need of users
evolving in 3D shared scene. Multi-agent technology is, therefore, used to determine the collaboration
protocol between humans, through machines, over the network for implementing the desired tailorability.
1 INTRODUCTION
Computer-based collaborative tools support the
transition from simple human-computer interfacing
to more human-to-human interfacing mediated by
computers. This emphasis on the mediation role of
computers adds new technical challenges to the
development of IT tools. Augmented Reality (AR)
technologies are suited for mediating human-to-
human interactions over the engineered facility life
cycle because the combination of images and
information from the real (field conditions) and
virtual (plans and other engineering information)
sources and the attendant interaction metaphors can
be tailored to enhance group decision-making
processes. AR technology benefits can be maximized
for various situations if the concepts of Computer-
Supported Collaborative Work (CSCW) and
groupware tailorability are incorporated into the
design of AR systems envisaged to mediate human-
human collaborations for shared production tasks.
This paper presents an investigation into how
groupware principles and concepts should be applied
in designing collaborative AR systems in order to
support human-human collaboration.
Recently, researchers have explored how
Collaborative Augmented Environments (CAE) can
provide spatial cues to support group interactions.
Works on this field often adopt approaches based on
desktop computers, HMDs, backpack laptops and
handhled devices. In this sense, several projects have
been realized to develop AR for CSCW applications
such as Shared Space (Billinghurst, 1998),
TransVision (Rekimoto, 1996) and AR pad (Mogilev,
2002). The drawback of the developed applications is
that often use AR libraries in their development and
not based on a software architecture design. Other
applications are based on components-based
architecture design but could not support adding or
modifying functionalities and services within the
application. Computer Supported Collaborative
Work in CAE requires the construction of tailorable
groupware that supports interaction by multiple users.
Tailorable groupware concepts could, then, be
applied in a study for AR mediated human-to-human
collaboration. The research results presented in this
paper could be useful to assist in designing tailorable
groupware for CAE. In this paper, principles and
formalism have been proposed to design tailorable
groupware for AR collaborative applications. Agents-
based approach is proposed to support the human-
human collaboration formalism over Internet.
498
Benbelkacem S., Zenati-Henda N., Belghit H., Otmane S. and Bellarbi A..
Human-human Collaboration Formalism for Groupware Tailorability in Collaborative Augmented Environments.
DOI: 10.5220/0005358604980503
In Proceedings of the 10th International Conference on Computer Graphics Theory and Applications (GRAPP-2015), pages 498-503
ISBN: 978-989-758-087-1
Copyright
c
2015 SCITEPRESS (Science and Technology Publications, Lda.)
2 GROUPWARE
TAILORABILITY
Several researches in CSCW domain show that
tailorability is a fundamental property that should be
taken into consideration when developing
collaborative systems. The authors in (Stiemerling,
1999) define a tailorable application as a system that
can be properly adapted to the changes and diversity
of needs. The authors in (Biemans, 1999) argue that
tailorability is the capacity of an information system
to enable a user to adjust the application to his/her
personal needs, or the task that is being done. The
authors in (Bourguin, 2004) emphasizes that a
tailorable application is both usable and modifiable
by its users. One of the reasons that software should
be tailorable is the complexity of establishing users'
needs before using the application or having a task at
hand. The authors in (Kahler, 2001) provide three
essential reasons for software to be tailorable (1)
Multidimensional diversities that tailorability must
take into consideration in order to implement a
software able to support different uses, (2) the
dynamism of individual and organizational work that
matches the changing nature of work, forces the
software itself to change over time, (3) the uncertainty
and ambiguity due to work practices require the use
of alternative methods to achieve tasks.
For Collaborative Augmented Environment
(CAE) other reasons make that the tailorability is
necessary such as (4) the evolution of AR interfaces
(changing states of 3D visualization data and 3D
interactions, distribution of 3D data and tasks, etc.)
and (5) the constraints due to the AR environment
(tracking, scene recognition, occlusion, brightness,
etc.).
In our work, multi-agent systems will be used to
build tailorable groupware for CAE. In fact, software
agents have been successfully used for implementing
collaborative architectures. They increase the
capacity of systems to become autonomous and
intelligent while exchanging and distributing 3D data
and tasks within Internet. An important benefit of
software agents is their ability to provide flexibility in
human-human collaboration.
2.1 The 3C Model
Our approach is based on the 3C model proposed by
Ellis, shown in Figure 1 (Ellis, 1994). According to
this functional model, a groupware is described by
three specific functions: communication,
coordination and production.
Figure 1: 3C's Ellis model.
The communication space allows actors
exchanging a set of information. The coordination
space defines the tasks to be achieved in order to
produce objects in the production space. The latter
represents the objects resulting from the activity of
the group.
There exists several works that adopt the 3C
model for constructing collaborative applications
(Laurillau, 2002), (Fuks, 2007), (Oliveira, 2007). One
of the advantages of this decomposition is to help
evaluators focus their attention on the
communication, coordination and productions
aspects of the application for identifying usability
problems (Fuks, 2007). In this paper, the
decomposition of Ellis (Ellis, 1994) is adopted in
order to design tailorable groupware for CAE, this,
based on the advantages of software agents concepts.
With this model the three main aspects of the
collaborative work will be preserved.
2.2 Multi-Agent Systems
The authors in (Khezami, 2005) have identified an
agent as a computing object (in the sense of object-
oriented languages) whose behaviour can be
described by a script with its own means of
calculation, and can move from a place to another in
order to communicate with other agents. According
to (Maamar, 2003), an agent is a piece of software that
acts on an autonomous basis. The agent shows a
number of features that differentiate it from other
traditional components, including self-direction,
collaboration, continuity, character, communication,
adaptation, mobility and temporal continuity.
3 HUMAN-MACHINE-HUMAN
COLLABORATION
Software engineering methods give way to new
development paradigms, including component based
and agent-based approaches. These approaches gain a
Human-humanCollaborationFormalismforGroupwareTailorabilityinCollaborativeAugmentedEnvironments
499
lot of attention, where passive software components
are remedied by the dynamics and social character of
software agents. Indeed, agents-based technologies
provide new mechanisms for components in order to
engage in tasks as well as cooperate and process the
requirements of dynamic and heterogeneous
environments.
One of the multi-agent systems developed for
groupware we can cite the C4 model (Khezami, 2005)
dedicated to the collaborative teleoperation through
Internet. This model is based on the PAC* model
(Khezami, 2005) that proposes three agents dedicated
to the three spaces of the 3C model, this, to ensure the
modularity of the system. In addition, the C4 model
proposes a fourth agent: Collaboration agent. The
combination of these four agents constitutes the
"Collaborator Agent". Despite the advantages of this
approach, this model does not consider the
distribution of information, data and tasks, especially,
in AR collaborative environment. It focuses only on
collaboration aspects between communication and
coordination agents. Thus, we propose to enrich this
model by adding “Distributor agent” responsible for
integrating distributed aspects of AR collaborative
environment. We obtain in our configuration the C5
model (Figure 2).
In the other hand, the collaboration using C4
model is limited to communication and coordination
of tasks; the result produced by a collaborator agent
is not communicated to its counterpart, whereas it’s
necessary in VR & AR applications. Indeed,
collaboration in VR/AR concerns usually the
visualization and manipulation of virtual objects
(translation, rotation, zoom, etc). In most of VR/AR
applications, it is necessary for each collaborator to
see the result performed by its counterpart. For some
applications, it is necessary for each collaborator to
have the viewpoint of its counterpart.
Even if (Cheaib, 2011) have proposed a
collaboration protocol based on web services between
machines over the network in order to exchange
common services, this protocol does not allow the
agents, not concerned by the collaboration, to have a
copy of the exchanged services and data. Also, the
exchanged services concern only communication and
coordination results (the production result are not
exchanged). On the contrary, in our case, the
distributor agent play the role of distributing
production results issued form collaboration in AR
distributed system. For example, a user, in
collaborative AR space, may view the tasks
performed by other users and the state of virtual
objects manipulated.
In our case, the C5 model integrates the
relationship between production agents of different
collaborator agents. Therefore, the collaboration is
not restricted to communication and coordination as
presented in the C4 model, but it can be extended to
the production and distribution sides.
Figure 2: Internal interaction in a collaborator agent i.
3.1 Collaboration Formalism
We propose to enrich the C4 model by integrating
“Distributor agent” in the collaboration agent
proposed in (Khezami, 2005) and enriched by
(Cheaib, 2011). Also, we integrate a relationship
between production agents. We, therefore, obtain,
new formal model of collaboration (C5 model) which
is based on multi-agent systems. This model
integrates the properties of software agents and the
characteristics of the production and distribution in
addition to communication and coordination
considered in the C4 model. Moreover, we make the
C5 model more dynamic and proactive.
In the C5 model, a software agent can be
described by a pair of dynamic system < i, w > where
the agent has only one global state in relation to the
collaboration task. A world w of an agent i is dynamic
and changing at every action or reaction of the
collaborator agent. This world w is modelled by:
- E represents the environment in which a
collaborator agent evolves. It’s represented by other
collaborator agents of the environment that
collaborates with this agent.
- Γ is the set of actions produced by an agent that
modifies the world’s evolution. In our configuration,
Γ is composed of four subsets {Inf
ij
}, {Action
i
},
{Result
i
}, {Dist
i
} (equation 1).
Γ = {{Inf
i
j
}, {Action
i
}, {Result
i
}, {Dist
i
}} (1)
Inf
ij
: a set of information sent by the agent i to
other agents j of the environment that collaborates.
Action
i
: a set of actions executed by the agent i.
Result
i
: a set of results issued from the execution
of actions of the agent i.
GRAPP2015-InternationalConferenceonComputerGraphicsTheoryandApplications
500
Dist
i
: a set of information, actions and results of
the agent i distributed to other collaborator agents of
the environment.
The distributor agent is designed such that its
response time and latency should be reduced to a
minimum when it distributes results of production
space.
- Σ is a set of agent states. For us, a collaborator
agent has four states: communicate, coordinate,
produce and distribute (comm, coor, prod, dist).
Equation 2 describes the content of Σ.
Σ = {comm, coor, prod, dist} (2)
- Percept
i
is a set of stimuli and sensations that
composed of four subsets {Inf
ij
}, {Action
j
}, {Result
j
}
and {Dist
j
} (equation 3). It represents a behaviour
function depending on agent data Fi.
j, Percept
i
= {{Inf
ji
}, {Action
j
}, {Result
j
},
{Dist
j
}}
(3)
Inf
ji
: a set of information received by the
collaborator agent i.
Action
j
: a set of actions executed by the
collaborator agent j of the environment, other than the
collaborator agent i.
Result
j
: a set of results produced by the
collaborator agent j, other than the collaborator agent
i.
Dist
j
: a set of information, actions and results of
the collaborator agent j distributed to other
collaborator agents k of the environment which aren’t
in collaboration with the agent j.
- Pi is an agent perception function (equation 4):
set of perceptions that the agent receives.
Pi: Σ Percept
i
j, {comm
i
, coor
i
, prod
i
, dist
i
} {{Inf
ji
},
{Action
j
}, {Result
j
}, {Dist
j
}}
(4)
- Fi is an agent behaviour function that determines
the agent's state from its perceptions and its previous
state (equation 5).
Fi: Σ × Percept
i
Σ
{comm
i
, coor
i
, prod
i
, dist
i
} × {{Inf
ji
},
{Action
j
}, {Result
j
}, {Dist
j
}} {comm
i
,
coor
i
, prod
i
, dist
i
}
(5)
- Infl
i
is the agent action function, which modifies
the evolution of the world by producing influences
(equation 6). A collaborator agent, being in a given
state, and following this state, could produce
information that changes its evolution and the
evolution of other collaborator agents in the system.
In the other hand, this parameter represents a
production function of the influences depending on
the agent's behavior.
Infl
i
: Σ Γ
{comm
i
, coor
i
, prod
i
, dist
i
} {{Inf
ij
},
{Action
i
}, {Result
i
}, {Dist
i
}}
(6)
- R represents a law of evolution of the
collaboration (equation 7).
R: Σ × Γ
Σ
{comm
i
, coor
i
, prod
i
, dist
i
} × {{Inf
ij
},
{Action
i
}, {Result
i
}, {Dist
i
}} {comm
i
,
coor
i
, prod
i
, dist
i
}
(7)
3.2 Collaboration Process
Figure 3 shows the collaboration process of three
collaborator agents (collaborator agent i, collaborator
agent j and collaborator agent k.) The collaborator
agent i is the agent that starts collaboration process
with the collaborator agent j. All information between
two agents are represented by “Mission
i
(M
i
)” that
represents the mission chosen by the communication
agent i and the communication agent j. “Actions
i
(A
i
)
and “Actions
j
(A
j
)” are actions defined by
coordination agent i and coordination agent j.
Resluts
i
(R
i
)” and “Results
j
(R
j
)” are the results of
execution of tasks of production agents i and j.
A collaborator agent i has four states:
communicate, coordinate, produce and distribute
(comm
i
, coor
i
, prod
i
, dist
i
). The transition from a state
to another depends on the perceptions that the agent
receives. When receiving a request for collaboration
{Inf
ji
} from an agent j, or the perception of a need to
collaborate that the collaboration agent triggers, the
collaborator agent switches to the communicate state,
where he communicate with its counterpart executing
the communication function (f
icom
Fi) through the
communication agent, this function returns the new
state of the collaborator agent which is either comm
i
(communicate state) if the communication process is
not completed or coor
i
if it is. On the coordinate state,
the collaborator agent execute the f
icoor
function Fi
that allows the collaborator i to coordinate the
operations with its counterpart by the coordinate
agent. Once the coordination ended, the collaborator
agent switches to the produce state (prod
i
) where the
production agent executes the actions
i
arising from
the previous state and produces a set of results that are
communicated to the collaboration agent that
instructs the distribution agent, to share the relevant
data and tasks with the “team work”; during this
procedure the collaborator agent passes to the
distribute state (dist
i
).
Human-humanCollaborationFormalismforGroupwareTailorabilityinCollaborativeAugmentedEnvironments
501
Figure 3: External interaction between multiple agents in
C5 model. The agent k is not involved in the collaboration
process between agents i and j but it belong to the same
working group of these two agents.
To facilitate the collaboration process and avoid
that the distributor agent produce an explosion of
messages in the system, our collaboration network
was decomposed into collaborators groups. Each
collaborators group share the same augmented
working environment. The corresponding
collaborator agents in the same group communicate
information and coordinate their actions together, and
produce a set of results. Once the collaboration
completed, relevant data and tasks are shared through
the distribution agents of the concerned collaborators
group without affecting the other groups. Thus, each
agent in the group could have access to the results of
the agents that collaborate.
4 GROUPWARE
ARCHITECTURE
In this section we adopt the same approach as
presented in (Cheaib, 2011) to design our software
architecture (Figure 4) for building a tailorable
groupware. The latter is based on the integration of
software agents where the formalism is presented in
the previous section.
Figure 4: Groupware architecture.
We based on the Arch model (Bass, 1992) to
distinct the functional core and the physical interfaces
of the system. Thus, our functional core is connected
to Internet to engage the collaboration protocol with
other users using machines over the Network.
Furthermore, we use Dewan’s model (Dewan, 1999)
in order to construct our groupware system in the
form of shared and replicated layers. The shared
layers are represented by two highest layers (Layers
N and N-1) corresponding to the FC of the system.
The replicated layers are the lowest layer of the
system. They represent the material (physical) level
that implements the interactions with users. Figure 4
shows our groupware architecture based on Dewan’s
model.
Our groupware architecture is composed of a root
representing shared layers, meaning that it is shared
among all the users in the system, and several
replicated layers for every user. The layers
communicate vertically using interaction events, and
use collaboration events (formalism presented) for
the interaction human-machines-human over the
network. The FC in our model is represented by two
layers that are both shared and constitute the root of
the system, in contrast to the clover model (Laurillau,
2002) where the FC is split into two layers: one
GRAPP2015-InternationalConferenceonComputerGraphicsTheoryandApplications
502
private and shared, while the other is replicated and
public.
5 CONCLUSIONS
In this paper, we have proposed a human-machines-
human collaboration formalism to implement
groupware tailorability in collaborative context of
augmented reality. Also, we have suggested software
architecture for groupware based on the proposed
formalism. The originality of our model is the use of
multi-agent approach in order to generate tailorable
and interoperable groupware architecture for
collaborative augmented reality environments. In
fact, the functional breakdown in the software
architecture proposed will result in a greater
modularity which reduces the complexity of
groupware’s implementation.
We believe that the work presented in this paper
is a first step towards shifting the agent technologies’
into tailoring CSCW systems. For our future work,
we aim to extend the collaboration formalism
discussed in this paper to the machine-machine
collaboration over Internet this by using Web services
technology.
REFERENCES
Bass, L., 1992. A metamodel for the runtime architecture of
an interactive system. User Interface Developers’
Workshop, SIGCHI Bulletin, 24(1), 1992.
Biemans, M., Ter Hofte, GH. 1999. Tailorability: state-of-
the- art, Gigaport project deliverable, Telematica
Institut, Netherlands.
Billinghurst, M., Bowskill, J., Jessop, M., Morphett, J.
1998. A wearable spatial conferencing space. In Second
IEEE International Symposium on Wearable
Computers, 76-83, Pittsburgh, PA, USA.
Bourguin, G. 2004. Proposition pour une gestion
dynamique de l'inter-activités dans le TCAO. In
Proceedings of the 16th conference on Association
Francophone d' Interaction Homme-Machine, 191-
194, ACM New York, USA.
Cheaib, N., Otmane, S., Mallem, M. 2011. Tailorable
Groupware Design Based on the 3C Model.
International Journal of Cooperative Information
Systems. 20(4), 405-439.
Dewan, P. 1999. Architectures for collaborative
applications. CSCW Journal, Trends in Software, John
Wiley & Sons, 169–194.
Ellis, C., A Conceptual model of groupware. 1994.
Proceedings of the ACM conference on Computer
supported cooperative work, CSCW’94, New York,
NY, USA, 79-88.
Fuks, H., Raposo, A. B., Gerosa, M. A., Pimentel, M., De
Lucena, C. J. P. 2007. The 3C collaboration model.
Journal of the Encyclopedia of E-Collaboration, Ned
Kock (org), 637 – 644.
Kahler, H. 2001. Supporting collaborative tailoring. PhD
thesis. Department of Communication, Journalism and
Computer Science. Roskilde University, Denmark.
Khezami, N., Otmane, S., Mallem, M. 2005. A new formal
model of collaboration by multi-agent systems.
Proceedings of the IEEE International Conference on
Integration of Knowledge Intensive Multi-Agent
Systems, Massachusetts, USA, 32-37.
Laurillau, Y., Nigay, L. 2002. Clover architecture for
groupware. Proceedings of the ACM conference on
Computer supported cooperative work, NY, USA, 236-
245.
Maamar, Z., Sheng QZ., Benatallah, B. 2003. Interleaving
Web Services Composition and Execution Using
Software Agents and Delegation. Workshop on Web
Services and Agent-Based Engineering.
Mogilev, D., Kiyokawa, K., Billinghurst, M., Pair. J. 2002.
AR Pad: An interface for face-to-face AR
collaboration. In CHI'02, extended abstracts on Human
factors in computing systems, 654-655.
Oliveira, F. F., Antunes, J.C.P, Guizzardi, R.S.S. 2007.
Towards a collaboration ontology. Proceedings of the
2nd Workshop on Ontologies and Metamodels in
Software and Data Engineering.
Rekimoto, J. 1996. Transvision: A hand-held augmented
reality system for collaborative design. In Proceedings
of the International Conference on Virtual Systems and
Multimedia, 85-90.
Stiemerling, O., Hinken, R., Cremers. AB. 1999. The
EVOLVE tailoring platform: supporting the evolution
of component-based groupware. Proceedings of the
IEEE Third International Enterprise Distributed Object
Computing Conference, EDOC'99, Mannheim,
Germany, 106-115.
Human-humanCollaborationFormalismforGroupwareTailorabilityinCollaborativeAugmentedEnvironments
503