<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Ontology Based Patterns for Collaborative Process Management</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Nikos Papageorgiou</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>15780 Zografos, Greece</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Yiannis Verginadis</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>15780 Zografos, Greece</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dimitris Apostolou</string-name>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gregoris Mentzas</string-name>
          <email>gmentzas@mail.ntua.gr</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>+302107721227</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>National Technical University</institution>
          ,
          <addr-line>of Athens, Iroon Polytechniou 9</addr-line>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>National Technical, University of Athens</institution>
          ,
          <addr-line>Iroon Polytechniou 9</addr-line>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>University of Piraeus</institution>
        </aff>
      </contrib-group>
      <fpage>5</fpage>
      <lpage>12</lpage>
      <abstract>
        <p>Collaboration within and between organisations requires knowledge and skills that collaborating partners do not always possess. In an effort to capture best practice collaboration knowledge, we propose patterns as models of repeatable collaboration processes for recurring high-value collaborative tasks. We present a pattern-based approach, associated ontology and tool which act as a platform that can intelligently match collaboration contexts and requirements to collaboration patterns, make intelligent inferences about applying patterns to solve problems at successive levels of abstraction and recommend either workflows or less structured actions as solutions to collaboration contexts.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Ontology</kwd>
        <kwd>Collaboration Patterns</kwd>
        <kwd>Process Management</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>+302104142314</p>
    </sec>
    <sec id="sec-2">
      <title>Categories and Subject Descriptors</title>
      <p>D.2.10 [Software]: Design – Representation.</p>
    </sec>
    <sec id="sec-3">
      <title>1. INTRODUCTION</title>
      <p>
        Nowadays collaboration is essential for value creation in the
modern business environment [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Collaboration refers to people
or organizations working jointly with others or together especially
in an intellectual endeavour that is creative in nature.
Collaborative processes may span across organisational and
geographical boundaries and may facilitate day-to-day business
operations and strategic planning. We have introduced in our
previous work the concept of collaboration patterns (CPats) [2;3],
as a means for capturing and re-using recurring segments of work
or parts of collaboration.
      </p>
      <p>
        The concept of CPats is inspired by the way experts tackle work
on a particular problem: It is unusual to tackle it by inventing a
new solution that is completely different from existing ones.
Instead, they often recall a similar problem they have already
solved, and reuse the essence of its solution to solve the new
problem. This kind of ‘expert behaviour’ is a natural way of
coping with many kinds of problems [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. The concept of design
pattern was first introduced in the field of engineering by
Christopher Alexander, a professor of Architecture in University
of California, Berkley. His book, where he describes a language
for architectural patterns [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], is seen as the prototype for patterns
in many other domains, including Software Engineering [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and
Human Computer Interaction (HCI) [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>
        In order to process computationally, manage and use CPats we
propose their formal representation using the Companion
ontology. An ontology is defined as a “formal, explicit
specification of a shared conceptualization” [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. It consists of a set
of definitions from a formal vocabulary defining a “schema” and
instances, referred to as individuals, of the schema concepts. In a
computational context an ontology is a formal, machine readable,
shared vocabulary consisting of concepts, relationships, and
axiomatic definitions that can be used by standard reasoners to
classify and infer new facts.
      </p>
      <p>In this paper we present the Companion ontology in order to
formally describe recurring activities that take place in the context
of dynamic collaborative environments. Moreover, we aim to take
advantage of Companion and develop a dedicated software
component that can recommend manage and execute CPats. We
base our work on existing research in patterns and on our analysis
of requirements of specific case studies. In section 2, we present
this pattern ontology along with the CPat model as structured
tabular expression of a pattern. In section 3, we argue on how
ontology-based patterns can be implemented using an event-based
process management framework. In section 4, we discuss related
work while section 5 presents our conclusions.</p>
    </sec>
    <sec id="sec-4">
      <title>2. ONTOLOGY BASED PATTERNS OF</title>
    </sec>
    <sec id="sec-5">
      <title>COLLABORATION</title>
    </sec>
    <sec id="sec-6">
      <title>2.1 Patterns in Collaborative Work</title>
      <p>
        A CPat is a prescription which addresses a collaborative problem
that may occur repeatedly in a business environment [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. It
describes the forms of collaboration and the proven solutions to a
collaboration problem and appears as a recurring group of actions
that enable efficiency in both the communication and the
implementation of a successful solution. A CPat be used as is in
the same application domain or it can be abstracted and used as a
primitive building block beyond its original domain.
      </p>
      <p>
        In previous work we defined a CPat structure that comprises all
attributes needed for specifying what a specific CPat does, where
it is applicable and under which circumstances it may be initiated
in a dynamic collaborative environment formulated inside virtual
organizations (VOs) [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. The CPat model encapsulates some of
the key findings of the related research in patterns, such as: (a)
CPats can serve different objectives or functions and can be of
different levels of abstraction; (b) CPats should trigger human and
machine processes when certain events occur and condition hold
[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]; (c) patterns may include a structure (in the form of a series
of steps and the applicable user roles), content (describing the
activities to be done), and methods for accessing IT resources to
get things done [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]; (d) CPats should contain a diagrammatic
description of the proposed solution. In Table 1 we outline the
structure of the CPat model in a tabular format.
      </p>
    </sec>
    <sec id="sec-7">
      <title>2.2 Companion: An Ontology for</title>
    </sec>
    <sec id="sec-8">
      <title>Collaboration Patterns</title>
      <p>
        The aim of Companion, the proposed CPat ontology, is to: (i)
provide a formal representation of the CPat model concepts and
interrelations, (ii) capture the requirements of prominent
collaborative processes, (iii) allow for mapping to collaboration
services provided by different suppliers and (iv) provide a flexible
structure that can be easily refined, updated, extended and
instantiated. As stated by Henninger [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], a major weakness of
most pattern representations is the lack of semantics, i.e. typed
relationships between patterns. While other formal media such as
UML can be used to model and represent patterns none has the
combination of both formal representation and distributed
accessibility that ontologies provide. By adopting the arguments
of Henninger about the benefits of ontologies for the formal
representation of usability design patterns [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], mapped certainly
to the requirements of collaboration patterns, we can state that
ontologies provide a computational medium that can: (a)
intelligently match collaboration contexts and collaborative
process requirements to collaboration patterns, (b) make
intelligent inferences about applying patterns to solve problems at
successive levels of abstraction, thus providing the basis for a
pattern language, (c) automatically and dynamically classify
patterns into pattern languages that can generate complete design
solutions and (d) check the consistency of patterns and pattern
language attributes.
      </p>
      <p>
        Companion is developed in OWL Description Logic (OWL-DL).
OWL-DL is a highly expressive yet computable language. We
need an expressive ontology language in order to describe CPat
terms and preconditions triggers etc. For the development of the
CPat ontology we have used the Protégé 3 [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] ontology editor
with OntoViz [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] plug-in for visualization and the Pellet
reasoner [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] for validation. Figure 1 and Figure 2 depict the
pattern concept along with its object properties. Starting from the
statement that a Collaboration Pattern is subclass of a Pattern, as
described in CPat model, we state that a CPat has Pre-Conditions,
Post-Conditions, category (CPatCategory), Application Area,
Triggers which are Complex Events and related CPat(s). These
relationships are depicted in Figure 1.
Beyond object properties, the class CollaborationPattern has some
data properties (CPatDuration, CPatName, CPatNo). All
properties are declared as functional, i.e they can have only one,
unique value y for each instance x. CPats may be related with
other CPats. The object property hasRelatedCPat describes those
relationships. Special cases of pattern relationships such as
canBeExecutedInSequence, hasAlternativeCPat, hasConflictCPat
and canBeExecutedInParallel are modeled with sub-properties.
has two or more Participants that undertake specific
roles in terms of CPat’s solution implementation,
has at least one CPatProblem,
ComplexEvent and VOPhase.
      </p>
      <p>
        CPatSolution,
Companion continues with the description of other related CPat
concepts. Pre-Conditions and Post-Conditions are of type
Condition. A Condition is composed of one or more expressions
which evaluate one or more facts. Facts are the elements of a
knowledge-base that contain information about the state of
collaboration. CPat categories are represented as instances of the
CPatCategory class. CPats are also associated with application
areas for which we use the North American Industry
Classification System (NAICS) [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. Every CPat and CPat
exception can be triggered by a ComplexEvent. A CPat exception
involves at least one of the following: the proposed usage of a
Collaboration Tool, the execution of an Action List, the execution
of another CPat, the execution of a Workflow or a combination of
them.
      </p>
      <p>In our approach, every different CPat is represented as a subclass
of the CollaborationPattern class and accordingly every
collaboration instance of a specific CPat is represented as an
instance of the corresponding OWL class. For example in a
situation where the collaboration aims to plan, execute and
evaluate a kick-off meeting of “Project1” is an instance of the
“KickoffMeetingCPat” (owl class) with name
“Project1_KickOff_Meeting” (individual). CPat classes can be
created with any generic onotology editor or by using a custom
editor created for this purpose. CPats, in order to express specific
concepts found in CPat attributes, have the possibility to import
the corresponding domain ontologies, e.g. Medical, Geographical,
or Virtual Organizations ontologies (Figure 4). In such a way
CPats and the tools that process them are not limited to the
terminology of Companion but they are free to use any domain
ontology in an open and transparent manner.</p>
    </sec>
    <sec id="sec-9">
      <title>2.3 Reasoning with Companion</title>
      <p>The most common inferences that are expected to be performed
with Companion are the class/subclass and class/individual
inferences1, class inferences may occur when: (i) Axioms are used
to assert additional necessary information about a class. (ii) A
subclass is inferred due to subclasses being used in existential
quantification. (iii) A subclass is inferred due to a subproperty
assertion. (iv) There is interaction between an existential
quantification (asserting the existence of a class) and a universal
quantification (constraining the types of individuals allowed).
Instance inferences may occur when: (i) There is an interaction
between complete and partial definitions. (ii) There is an
interaction between an inverse relationship and domain and range
constraints on a property. (iii) The domain restriction gives
additional information which allows inference of a more specific
type. (iv) There is interaction between an inverse relationship and
domain and range constraints on a property. Moreover instance
inferences may occur when: (i) There is an interaction between
complete and partial definitions. (ii) There is an interaction
between an inverse relationship and domain and range constraints
on a property. (iii) The domain restriction gives additional
information which allows inference of a more specific type. (iv)
There is interaction between an inverse relationship and domain
and range constraints on a property.
We give an indicative reasoning example using the extension of
Companion shown in Figure 5. With this ontology we define that:
1 The discussion on class and instance inferencing with ontologies
is taken from: http://owl.man.ac.uk/2003/why/latest
(i) The class NotRepliedEMail is subclass of class CEvent
(represents complex events), (ii) it has two object properties (“to”
and “from”) denoting accordingly the sender and the recipient of
an email and a datatype property named “timeout” that denotes
the duration elapsed before the NotRepliedEmail complex event
is generated, and (iii) the ontology contains a class
ProjectManager that is subclass of VOMember. Using these
concepts we can declare a CPat trigger named
ProjectManagementProblem with OWL axioms (Figure 6).
This definition enables an OWL reasoner to infer that the
NotRepliedEmail events that have sender (pointed by the property
“from”) a ProjectManager belong to the class
ProjectManagementProblem.
By inserting the triples shown in Figure 7 we define two
NoteRepliedEmail instances (NotRepliedEmail_16,17) that come
from different senders. NotRepliedEmail_17 comes from an
individual that belongs to the class ProjectManager (because
ProjectManager_15 has rdf:type ProjectManager) but
NotRepliedEmail_16 comes from a sender that is not a
ProjectManager. As a consequence we expect that only
NotRepliedEmail_17 will be inferred as a
ProjectManagementProblem. A test with Protege and Pellet gives
indeed the expected results (Figure 8). Similarly, reasoning with
Companion can enable CPat classification, e.g., the
CPat_KickOffMeeting is subclass of CPat_ProjectMeeting
because the preconditions,triggers, etc. of the first are subclasses
of corresponding properties of the second.</p>
    </sec>
    <sec id="sec-10">
      <title>3. Collaboration Patterns in Event-Based</title>
    </sec>
    <sec id="sec-11">
      <title>Process Management</title>
    </sec>
    <sec id="sec-12">
      <title>3.1 Balancing process flexibility and reusability with CPats</title>
      <p>
        The requirements for the representation formalism of CPats were
set during the analysis and modeling phase [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] of our work. This
analysis concluded that CPats should be reusable, context-based,
flexible, providing solutions adaptable according to the different
needs of every specific collaboration instance. To have reusable
CPats we need their representation to be abstract enough. On the
other hand the need to provide a system able to support automatic,
context-based triggering and execution of CPats requires a pattern
representation to be transformable to a concrete collaboration
instance upon instantiation.
      </p>
      <p>
        Our approach aims to support the fusion of process-centric with
ad-hoc collaboration in an effort to balance reusability and
flexibility. Process-centric collaboration is based on pre-defined
models that must be fully understood at design-time and enacted
at run-time. Models allow for reusability because they can be
applied several times as well as for automation because with
technologies such as workflow management systems they can be
enacted automatically. On the other hand ad hoc, knowledge
based collaboration (e.g. situations in which people or businesses
must act spontaneously and creatively [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]) requires a means for
humans involved in the collaboration to easily define and
customize their collaborative actions, at run-time. Balancing
flexibility and reusability is necessary in real-life, large scale
collaborations in which software services and human actors are
involved. In our approach, the catalyst for the envisaged fusion of
ad-hoc and process-centric collaboration is Collaboration Patterns
(CPats) (Figure 9). CPats facilitate a particular collaboration by
providing an encapsulated component that can be reused
whenever a collaborative situation/problem occurs [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. To
support ad-hoc as well as process-centric collaboration, the
solution needs to involve both user-defined actions and workflows
or even collaborative tools for supporting the collaboration.
      </p>
      <sec id="sec-12-1">
        <title>Flexibility (Ad‐hoc, knowledge‐ based collaboration)</title>
      </sec>
      <sec id="sec-12-2">
        <title>Reusability  (Automation)</title>
      </sec>
      <sec id="sec-12-3">
        <title>CPATs Recommended </title>
      </sec>
      <sec id="sec-12-4">
        <title>Solution</title>
      </sec>
      <sec id="sec-12-5">
        <title>Human tasks / actions</title>
      </sec>
      <sec id="sec-12-6">
        <title>Workflows</title>
        <p>Low</p>
      </sec>
    </sec>
    <sec id="sec-13">
      <title>3.2 CPat Triggering &amp; Execution</title>
      <p>CPat triggering is based on conditions and event triggers. CPats
are automatically recommended upon the arrival of complex
events, if the context is suitable. CPat conditions and triggers are
represented again using OWL classes. Classes in OWL can have
instances, either set explicitly (asserted) or inferred by their
OWL-DL property descriptions. The main idea behind the
evaluation of CPat conditions and triggers is that, when the
corresponding classes that define the conditions or the triggers
have instances, the condition is true or the trigger exists. The
evaluation of class instances is based on the execution of an OWL
reasoner. The reasoner reads the CPat OWL classes and their
property restrictions, evaluates new statements (triples) upon their
insertion into the knowledge base and produces inferred triples by
translating OWL semantics to rules. By implementing a
mechanism that inserts new collaboration knowledge into a CPat
knowledge base in the form of OWL statements and combining it
with OWL CPats we enable the automatic execution of CPat
recommendations and solutions. The following pseudo-code
(Table 2) illustrates a CPat triggering logic.
Everything starts upon the arrival of a complex event. Then the
event is written to the knowledge base in order to be processed by
the reasoner and all CPat triggers are examined one by one. For
each CPat whose trigger (i.e. the class that is related to the CPat
with the hasTrigger property) has some instance, the
corresponding CPat PreCondition class is examined. If the
precondion is true (has at least one instance) then a CPat
recommendation is generated (Table 2 – step 1). The CPat
Recommendation is presented by a dedicated tool (CPA – see
section 3.3) to all candidate CPat initiators (figure 10).
The system automatically discovers CPat initiators by retrieving
the instances of the class that is related to the specific CPat with
the property hasInititator (Table 2 – step 2).</p>
      <p>CPat initiators have the option to accept or reject a CPat. If a CPat
initiator decides to accept a recommended CPat, the CPat
Assistant presents a GUI that enables the user to configure the
CPat in terms of candidate Participants, Input Information, and
Solution (action list or workflow). All invitation and
recommendation concepts are expressed with Companion (Figure
11).</p>
      <p>Similarly to the CPat initiators, the system proposes CPat
participants and input information by retrieving from the
knowledge base the instances of the classes that are related to the
CPat class with corresponding instances. CPats may have one or
more roles. Participants are related to the CPat with properties
named role&lt;?role_name&gt; according to their desired role. The
property hasInputInformation points to the class that describes a
CPat candidate input information. Input information, documents
or other data in the knowledge base, are referenced by using a
unique URI (e.g. the url of an html document). This URI is an
OWL/RDF individual, too. This means that it can be associated
with other individuals or literals with OWL properties according
to its content. CPat participants may be assigned to a CPat with a
specific role either upon accepting an invitation or upon direct
assignment by the CPat initiator.
In step 3 (Table 2 – step 3) we define that, when the CPat initiator
that accepted the recommendation chooses to initiate the
execution of the CPat solution, the system validates the CPat
instance (in terms of participants, input information and solution).
As a CPat instance is being created all information is stored in the
CPat knowledge base in the form of statements using the
corresponding properties (hasInputInformation,
role&lt;?role_name&gt;, etc) (Figure 12).
companion:hasInvitation
io
companion:hasParticipant</p>
      <p>KickOffMeetingProject_1</p>
      <p>companion:hasInputInformation
companion:hasParticipant
CPatParticipant_1</p>
      <p>BestPractices_Document_3
In step 4, during the execution of the solution and upon the
completion of each step the post condition class of the CPat is
examined (Table 2 – step 4). If it has instances, the CPat
participants are informed that the CPat goals have been reached
and the CPat is terminated.</p>
      <p>Finally (Table 2 – step 5), for each CPat instance that is currently
active (because it has not been terminated for some reason) and
whenever a new event is written to the knowledge base, the
corresponding CPat Exception Trigger class is being examined for
instances. If it is true (because there are some individuals
belonging to the relevant class) then the system recommends the
termination of the CPat and, in case that an exception CPat has
been defined, proposes to start a new CPat in order to handle the
exception.</p>
    </sec>
    <sec id="sec-14">
      <title>3.3 Collaboration Patterns Assistant (CPA)</title>
      <p>The Collaboration Pattern Assistant (CPA) aims to help users
execute collaborative processes based on CPats by taking
advantage of Companion. CPA tries to enable proactive
collaboration support with respect to changing circumstances, by
evaluating complex events and facts regarding the collaboration
state and deriving recommendations. The users of the CPA, from
the point of view of the system, are distinguished in two general
roles: (i) CPat initiators and (ii) CPat participants. CPat initiators
are responsible for the initiation and the termination of a new
collaboration according to the selected CPat. CPat participants use
the CPA in order to get information about the current activities
inside their group, to participate in collaborations performed
within a planned CPat and to get informed about their assigned
tasks. CPat initiators may also be CPat participants. The candidate
CPat initiators are determined by the system according to the
specification of each CPat. CPats are stored in OWL in a
dedicated CPat knowledge base. The initiator of a CPat decides
the form of collaboration by choosing a loose schema (i.e.
adopting an action list) or triggering the execution of a strict
workflow.</p>
      <p>
        The CPA prototype is implemented using the Adobe Flex/AIR
framework [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] for the client and the open source Flash server
Red5[
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] (Figure 13). This combination gives us the ability to
build on an open source platform which provides facilities very
useful in the development of collaborative applications. The
communication between the server and the client is done using
the RTMP/AMF3 protocols. The use of these protocols allows
real-time bidirectional communication between the clients and the
server in order to transfer data, commands, events or even
streaming audio/video.
The Red5 server is written in Java and runs inside the Tomcat
servlet container. The fact that it is written in Java allows easy
integration with the existing huge collection of open-source tools
and services. All the business logic of CPats is written in Java in
the form of a servlet that plugs in the Red5 RTMP servlet. In
order to store knowledge we use the Sesame triple-store with the
Swift OWLIM plugin for OWL. This combination is very
efficient and allows both automatic OWL reasoning (or else
ontology materialization) and querying through SPARQL. The
incoming events are going to be processed by the Esper [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]
complex event processing (CEP) engine. Workflow execution is
managed, in the case of the CPA prototype, by Intalio [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. Intalio
is an open source workflow management system which executes
workflows written in BPEL, provides human task management
and BPEL4People services and a BPMN Editor.
      </p>
    </sec>
    <sec id="sec-15">
      <title>4. RELATED WORK</title>
      <p>
        Our work focuses on supporting ontology and pattern-based
collaborations within service-oriented architectures comprising
software-enabled, user-enriched services. In such an environment,
collaborations typically involve both humans providing their
skills and experiences as services, as well as software services
thus creating highly dynamic and complex interactions.
Supporting human processes in SOA has been leveraged with
technologies such as BPEL4People [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] that target the support of
human interactions as part of business processes (i.e., workflows)
by designing and executing a set of human tasks, see e.g.,
WSHumanTask [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ].
      </p>
      <p>
        Research in patterns has focused on various areas related to
collaboration. We identified the most relevant (more than 25
pattern approaches) research and commercial efforts (e.g.
Thinklets[
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], Usability Patterns[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], Workflow Patterns[
        <xref ref-type="bibr" rid="ref25">25</xref>
        ],
Service Interaction Patterns[
        <xref ref-type="bibr" rid="ref26">26</xref>
        ], e-Business Patterns[
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]) to
collaboration that take under consideration patterns. We have
detected two major high level directions of work. The first
direction resembles the detection/mining of patterns in order to
observe differentiations from established best practices in
collaboration and propose some manual or automatic corrective
actions[
        <xref ref-type="bibr" rid="ref26">26</xref>
        ], while the second direction involves all these efforts
that focus on describing patterns that are to be executed in order
to assist a given collaboration[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Due to the rising complexity of
the collaborative working environments (e.g. Virtual Breading
Environments, Virtual Organisations etc.) and taking into account
the several efforts that we have reviewed, we argue on shifting the
attention towards assisting the end-users of collaboration in
(semi)-automatic ways and developing new tools that can promote
flexible recommendations for real-time corrective actions in
ongoing collaborations.
      </p>
      <p>
        Among these we also found efforts on patterns that use in some
degree ontologies. S. Henninger proposed an ontology based
(OWL) model for Usability Patterns [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Although this pattern
meta-model is not designed for collaboration patterns it is
significant work that proves the benefits of ontology based
modelling of patterns and gives concrete usage scenarios for a
pattern ontology. Biuk-Aghai et al. [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] proposes the use of an
ontology in order to describe and map between different levels of
information, expressed in the Information Pyramid of Virtual
Collaboration. Moreover ontologies for virtual collaboration
patterns are mainly used to communicate meaning, and to reuse
and organize knowledge. The e-Ace project [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] proposed an
ontology structure that implements a “collaboration stack”. This
ontology maps the various levels of pattern abstraction, ranging
from abstract collaboration patterns to collaborative services and
communication technologies. In that way it serves as a pattern
hierarchy, allowing the automatic selection of lower-level patterns
upon the selection of specific abstract patterns. Unified Activity
Methodology has introduced an activity meta-model in the form
of ontology [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ]. According to this, an activity is represented as
an association of properties and as relationships to other entities.
      </p>
    </sec>
    <sec id="sec-16">
      <title>5. CONCLUSIONS</title>
      <p>In this paper, we presented a pattern-based approach for
supporting collaborative processes using ontologies. With this
approach we aim to fuse process-centric with ad-hoc,
knowledgebased collaboration in an effort to balance reusability and
flexibility. Balancing flexibility and reusability is needed in
reallife, large scale collaborations (e.g. collaboration inside VOs) in
which software services and human actors are involved. The
benefits of the proposed coupling of a pattern-based approach
with ontologies include intelligently matching collaboration
contexts and requirements to collaboration patterns, making
intelligent inferences about applying patterns to solve problems at
successive levels of abstraction and recommending either
workflows or less structured actions as solutions to collaboration
contexts.</p>
      <p>Our future work includes the integration of the CPA tool in an
Event Driven Architecture (EDA) environment where specific
collaboration services (e.g., services supporting communication,
collaboration and coordination) are available; these services
generate events which provide triggers for the recommendation of
CPats. We also plan to evaluate CPA by using it to support
collaboration in real VOs from the pharmaceutical and
manufacturing domains.</p>
    </sec>
    <sec id="sec-17">
      <title>6. ACKNOWLEDGMENTS</title>
      <p>This work has been partially funded by the European
Commission, project SYNERGY (Supporting highlY-adaptive</p>
      <p>Network Enterprise collaboration thRouGh semanticallY-enabled
knowledge services), ICT No 63631. The authors would like to
thank the project team for comments and suggestions.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Hlupic</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Qureshi</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <year>2003</year>
          .
          <article-title>A research model for collaborative value creation from intellectual capital</article-title>
          ,
          <source>In: Twentififth International Conference of Information Technology Interfaces</source>
          . Cavtat, Croatia.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Verginadis</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Apostolou</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Papageorgiou</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mentzas</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <year>2009</year>
          .
          <article-title>Collaboration Patterns in Event-Driven Environment for Virtual Organisations</article-title>
          .
          <source>Intelligent Event Processing - Association for the Advancement of Artificial Intelligence (AAAI)</source>
          , Spring Symposium, Stanford, USA.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Papageorgiou</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Verginadis</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Apostolou</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mentzas</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <year>2009</year>
          .
          <article-title>A Collaboration Patterns Model for Virtual Organisations</article-title>
          .
          <source>In PROVE'09, 10th IFIP Working Conference on Virtual Enterprises</source>
          , Thessaloniki,
          <string-name>
            <surname>GREECE</surname>
          </string-name>
          , Springer, pp.
          <fpage>61</fpage>
          -
          <lpage>68</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Buschmann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Meunier</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rohnert</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sommerland</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stal</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <year>1996</year>
          .
          <article-title>Pattern-oriented software architecture: a system of patterns</article-title>
          , John Wiley &amp; Sons, Inc. New York, NY, USA.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Alexander</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ishikawa</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Silverstein</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <year>1977</year>
          .
          <article-title>A Pattern Language</article-title>
          . New York, Oxford University Press.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Gamma</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Helm</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , Johnson, R.,
          <string-name>
            <surname>Vlissides</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <year>1995</year>
          .
          <article-title>Design patterns: elements of reusable object-oriented software</article-title>
          ,
          <string-name>
            <surname>Addison-Wesley</surname>
            <given-names>Reading</given-names>
          </string-name>
          , MA.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>Borchers</surname>
            ,
            <given-names>J. O.</given-names>
          </string-name>
          <year>2001</year>
          .
          <article-title>A pattern approach to interaction design."</article-title>
          <source>AI &amp; Society</source>
          <volume>15</volume>
          (
          <issue>4</issue>
          ):
          <fpage>359</fpage>
          -
          <lpage>376</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Gruber</surname>
            ,
            <given-names>T. R.</given-names>
          </string-name>
          <year>1993</year>
          .
          <article-title>A translation approach to portable ontology specifications</article-title>
          .
          <source>KNOWLEDGE ACQUISITION</source>
          ,
          <volume>5</volume>
          ,
          <fpage>199</fpage>
          -
          <lpage>199</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <surname>Verginadis</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Apostolou</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Papageorgiou</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mentzas</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <year>2009</year>
          .
          <article-title>An Architecture for Collaboration Patterns in Agile Event-Driven Environments</article-title>
          .
          <source>Fourth IEEE Workshop on Agile Cooperative Process-Aware Information Systems (ProGility</source>
          <year>2009</year>
          ),
          <article-title>Groningen (The Netherlands)</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>de Moor</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <year>2006</year>
          .
          <article-title>Community Memory Activation with Collaboration Patterns</article-title>
          .
          <source>Proceedings of the 3rd International Community Informatics Conference (CIRN</source>
          <year>2006</year>
          )
          <article-title>Prato Italy</article-title>
          , pp.
          <fpage>1</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Henninger</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ashokkumar</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <year>2006</year>
          .
          <article-title>Disseminating Usability Design Knowledge through Ontology-Based Pattern Languages</article-title>
          .
          <source>In Proceedings Semantic Web User Interaction Workshop</source>
          , ISWC2006, Springer's LNCS
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Stanford</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          <year>2008</year>
          . Protege 3 Stanford Center for Biomedical Informatics Research at the Stanford University School of Medicine, http://protege.stanford.edu.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>Sintek</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>Ontoviz tab</article-title>
          .
          <year>2003</year>
          . Visualizing Protege ontologies,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <surname>Parsia</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sirin</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          <year>2004</year>
          .
          <article-title>Pellet: An OWL DL Reasoner</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>NAICS</surname>
          </string-name>
          <year>2007</year>
          .
          <article-title>North American Industry Classification System</article-title>
          , http://www.census.gov/eos/www/naics/.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>Schall</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Truong</surname>
            ,
            <given-names>H.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dustdar</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <year>2008</year>
          .
          <article-title>Unifying Human and Software Services in Web-Scale Collaborations</article-title>
          ,
          <source>IEEE Internet Computing</source>
          , pp.
          <fpage>62</fpage>
          -
          <lpage>68</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Schümmer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <year>2002</year>
          .
          <article-title>Constructing a Groupware Pattern Language</article-title>
          .
          <source>Workshop on Socio-Technical Pattern Languages, part of CSCW</source>
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>[18] Adobe/Flex/AIR, available online at: http://www.adobe.com/products/air/</mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>Flash</given-names>
            <surname>Server</surname>
          </string-name>
          <string-name>
            <surname>Red5</surname>
          </string-name>
          , available online at: http://www.red5.org/
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>[20] ESPER engine, available online at: http://esper.codehaus.org</mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <article-title>INTALIO workflow engine</article-title>
          , available online at: http://www.intalio.com/
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <surname>Agrawal</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Amend</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Das</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ford</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , Keller, C.,
          <string-name>
            <surname>Kloppmann</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Konig</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leymann</surname>
            ,
            <given-names>F.,</given-names>
          </string-name>
          <article-title>M¨uller</article-title>
          , R.,
          <string-name>
            <surname>Pfau</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          , Pl¨osser,
          <string-name>
            <given-names>K.</given-names>
            ,
            <surname>Rangaswamy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Rickayzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Rowley</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Schmidt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Trickovic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Yiu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Zeller</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <year>2007</year>
          .
          <article-title>WSBPEL Extension for People (BPEL4People), Version 1</article-title>
          .
          <fpage>0</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <surname>Amend</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Das</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ford</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , Keller, C.,
          <string-name>
            <surname>Kloppmann</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>K</surname>
          </string-name>
          ¨onig,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <surname>F.,</surname>
          </string-name>
          <article-title>M¨uller</article-title>
          , R.,
          <string-name>
            <surname>Pfau</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          , Pl¨osser,
          <string-name>
            <given-names>K.</given-names>
            ,
            <surname>Rangaswamy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Rickayzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Rowley</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Schmidt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Trickovic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Yiu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Zeller</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <year>2007</year>
          .
          <article-title>Web Services Human Task (WSHumanTask), Version 1</article-title>
          .
          <fpage>0</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <surname>Briggs</surname>
            ,
            <given-names>R. O.</given-names>
          </string-name>
          <year>2003</year>
          .
          <article-title>Collaboration Engineering with ThinkLets to Pursue Sustained Success with Group Support Systems</article-title>
          .
          <source>Journal of Management Information Systems</source>
          <volume>19</volume>
          (
          <issue>4</issue>
          ):
          <fpage>31</fpage>
          -
          <lpage>64</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W. M. P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>ter Hofstede</surname>
            ,
            <given-names>A. H. M.</given-names>
          </string-name>
          <year>2005</year>
          .
          <article-title>YAWL: yet another workflow language</article-title>
          .
          <source>Information Systems</source>
          <volume>30</volume>
          (
          <issue>4</issue>
          ):
          <fpage>245</fpage>
          -
          <lpage>275</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <surname>Barros</surname>
            ,
            <given-names>A. P.</given-names>
          </string-name>
          , M. Dumas, ter
          <string-name>
            <surname>Hofstede</surname>
            ,
            <given-names>A. H. M..</given-names>
          </string-name>
          <year>2005</year>
          .
          <article-title>Service Interaction Patterns: Towards a Reference Framework for Service-based Business Process Interconnection</article-title>
          . LNCS, pp.
          <fpage>302</fpage>
          -
          <lpage>318</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <surname>Zhao</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Macaulay</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Adams</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Verschueren</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <year>2007</year>
          .
          <article-title>A pattern language for designing e-business architecture</article-title>
          .
          <source>The Journal of Systems &amp; Software</source>
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <surname>Biuk-Aghai</surname>
            ,
            <given-names>R. P.</given-names>
          </string-name>
          <year>2003</year>
          .
          <article-title>Patterns of Virtual Collaboration</article-title>
          . University of Technology,
          <source>Sydney Faculty of Information Technology</source>
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          <source>[29] eAce Project</source>
          <year>2005</year>
          . Available online at:
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <surname>Moran</surname>
            ,
            <given-names>T. P.</given-names>
          </string-name>
          <year>2005</year>
          .
          <article-title>Unified Activity Management: Explicitly Representing Activity in Work-Support Systems</article-title>
          . Workshop on Activity:
          <article-title>From a Theoretical to a Computational Construct</article-title>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>