<!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>Approaching Collaborative Modeling as an Uncertainty Reduction Process</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Romina Eramo</string-name>
          <email>romina.eramo@univaq.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alfonso Pierantonio</string-name>
          <email>alfonso.pierantonio@univaq.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gianni Rosa</string-name>
          <email>gianni.rosa@univaq.it</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="editor">
          <string-name>Model-Driven Engineering, Collaborative Modeling, Uncertainty</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Università degli Studi</institution>
          ,
          <addr-line>dell'Aquila</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Università degli Studi</institution>
          ,
          <addr-line>dell'Aquila</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Università degli Studi</institution>
          ,
          <addr-line>dell'Aquila</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Model-Driven Engineering (MDE) technologies aim to support the growing complexity of software systems. Models are increasingly becoming large and unmanageable, and hence difficult to be understood by humans and processed by machines. As a consequence, multi-user environments are necessary to enable designers to create and refine large models in a collaborative manner enabling the engineering, modularization and reuse. In this paper, we propose a model-driven approach to represent, manage and manipulate models edited in a collaborative manner. In particular, we propose to represent the solutions space (i.e, model versions) in an intensional manner by adopting a model with uncertainty. We define a plan to manage the uncertainty by selecting the desired design, to manipulate their collaborative models in manually or automatic way, and to exploit a collaborative environment for real time multi-user editing. The approach is showed by means of a motivating example that involves business models demonstrating the advantages of the proposed approach.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>INTRODUCTION</title>
      <p>
        Complex software systems demand for both effective and specific
approaches to keep under control the increasing software
functionalities, heterogeneity, team sizes and geographical distribution of
the developers. The growing maturity of Model-Driven
Engineering (MDE) [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ] technologies is leading industry to take advantage
of their benefits in terms of productivity, quality and reuse [
        <xref ref-type="bibr" rid="ref22 ref7">22, 7</xref>
        ].
However, applying MDE in this setting requires research effort in
order to achieve industry-scale tools.
      </p>
      <p>
        As observed in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], scalability is a critical concern for the
industrial adoption of MDE. Large-scale tools have to cope with different
topics; among many, creating and refining large models in a
collaborative manner, working with model fragments obtained from
partitions of large models, enabling the engineering, modularization
and reuse of models and fragments, having transformation tools to
cope with versioned models, and having infrastructures to storage
and manage large models.
      </p>
      <p>
        When projects and teams are large, modeling activity requires
designers to divide their models in smaller partitions and work on
them in a collaborative manner. In a typical scenario, multiple
developers work on the same model in multiple branches, where
each developer (or sub team) may initialize a repository branch
and make modifications to this model; thus, versions grow rapidly.
Traditional text based version control systems (e.g., SVN, Git)
allow programmers to write code by locking a portion of work or
to edit code collaboratively; in this case, programmers tend to
frequently perform merge operations involving different versions of
the same textual artifacts. Conversely, in software design, that is
a complex and non-linear process, decisions are made at different
development stages and obtaining the merged version early could
not be desired. In fact, sometimes designers have not the complete,
consistent and accurate information required to make a decision
at design-time (or when the conflict occurs), that can be regarded
as a source of uncertainty [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]. For instance, they could perform
some analysis or wait for different view models before to be able to
choose the best strategy. In these cases, they could be interested in
postponing the version merging and continuing to operate on their
model versions separately.
      </p>
      <p>In this paper, we propose a model-driven approach to represent
and manage models edited in a collaborative manner by
leveraging uncertainty to a first-class status. To this end, we propose a
metamodel-independent approach to represent the solutions space
(i.e, multiple versions) in a compact and intensional manner by
adopting a model with uncertainty. We define a plan to manage
the uncertainty by selecting the desired design, to manipulate their
collaborative models in manually or automatic way, and to exploit a
collaborative environment for real time multi-user editing and
handling of models. The technique is applied to a running example
that involves business process models in the domain of Public
Administrations (PAs) demonstrating the advantages of the proposed
approach.</p>
      <p>Structure of the paper. The paper is organized as follows.
Section 2 sets the context of the paper through a motivating example
that is used throughout the paper to demonstrate the approach. In
Sect. 3 the model-driven approach to represent and manage
collaborative models with uncertainty is presented and related challenges
are discussed. In Sect. 4, related works are presented and finally
Sect. 5 draws some conclusions.</p>
    </sec>
    <sec id="sec-2">
      <title>MOTIVATING EXAMPLE</title>
      <p>As aforesaid, the management of large models raises not obvious
issues mainly related to the collaborative use of models. In order to
illustrate our proposal, we consider a motivating example that takes
place in the public administrations (PAs) sector.</p>
      <p>In modern society, the role of PAs is undergoing a transformation
from controller to proactive service provider. In most cases, the
provisioning of services is a collaborative activity shared among
different, possibly many, organizations that are in general quite
interrelated. In order to provide efficient services to citizens and
companies, public servants have to manage extremely complex
processes and a large amount of information due to changes in law and
regulations, societal globalization and fast technology evolution.</p>
      <p>
        In this context, the Learn PAd1 project [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] aims at developing a
social, collaborative and holistic e-learning platform that enables
1Model-Based Social Learning for Public Administrations is part
of the program FP7-ICT-2013.8.2 Technology-enhanced learning.
The project started on Feb 1, 2014 and terminate on Jul 31, 2016
with a cost of e3,535,000. For further detail please refer to http:
//www.learnpad.eu
process-driven learning and improvement of the process on a
userfriendly basis of wiki pages enriched with additional
documentation for a clearer understanding of the process together with
guidance based on formalized models. The specification of business
processes is usually done by means of standard notations like BPMN
2.0 [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ] and concerns a sequence of activities that the
administration executes in order to produce a service for the end user.
Typically, it starts with i) receiving of some input (i.e. request,
documentation), then ii) performing activities that add value (i.e.,
checks) using resources (i.e., humans, structures), and finally iii)
producing an output.
      </p>
      <p>For instance, Fig. 1 depicts a sub-process of a standard process,
called Titolo Unico, where a citizen makes a request to municipality
and third parties in order to obtain the permission to start a business
activity according to the Italian law. Specifically, in the sub-process
Check Application (CA) the employee in charge checks the received
documents and verifies their validity. After that, the valid requests
are sent to third party in PA in order to undergo the final verification
and eventually to be accepted.</p>
      <p>Models in PA are constantly updated and shared among different
organizations, thus public servants daily deal with a large amount
of data and a multitude of model versions, that is tedious and
errorprone. In order to better understand the context, let us to consider
the following scenario of collaborative modeling in PAs. Figure 2
depicts a scenario in which some modelers work collaboratively on
the model in Fig. 1, that is considered as initial model. Then, it
is extended, refactored and splitted in a set of versions, so that the
changes are parallel dependent causing conflict issues.</p>
      <p>Let us to suppose that, Modeler A and Modeler B are two
employees of the same organization and they are working together
in a collaborative manner. Both of them consider the sub-process
Check Application (CA) depicted in Fig. 1 from the Learn PAd
repository. The Modeler A is an expert of PAs procedures and
adds to the initial model a BPMN element of type Lane, named
Municipal Desk, in order to establish the unit responsible for the
activity and improve the process execution (see Fig. 2(a)). Then,
an expert of the BPMN language, called Modeler B, modifies the
model and adds a pair of Inclusive Gateway to logically
separate the existing message flows between Application valid and
Application not valid, as showed in Fig. 2(b).</p>
      <p>In meanwhile, an other organization decides to re-use models
stored in the Learn PAd repository. In particular, as depicted in
Fig. 2(c), the Modeler C acquires the model in Fig. 2(a) and
renames the lane Municipal desk into District Desk; in this
way, the responsibility of the activities is given to a different
organizational unit.</p>
      <p>Finally, as shown in Fig. 2(d), in a third organization, the Modeler
D performs same changes on the model in Fig. 2(b) in order to
improve the quality of the business process. In particular, the
element First Integration Check of type Task is modified in
Integration Check of type SubProcess in order to modeling a
more complex process that includes a set of activities.</p>
      <p>Let us to suppose that, modelers continue to work on the model
and at a later time each organization requires to merge the modelers
versions and obtain the proper organization version.</p>
      <p>In this scenario, the same model is modified by different
organizations and for each of them one or more modelers worked on it.
Furthermore, for the scope of the Learn PAd repository, models and
their versions has to be maintained and traced, so that further
organizations can access and re-use it. For these reasons, it is crucial
to have a comprehensive model representation that enable the
information tracing and the management of different model versions
in an automatic manner. The scope of this paper is to represent the
multitude of generated models into a model with uncertainty
capable of encoding all the alternatives in one instance and allowing the
management.
3.</p>
    </sec>
    <sec id="sec-3">
      <title>A MODEL-DRIVEN APPROACH TO</title>
    </sec>
    <sec id="sec-4">
      <title>COLLABORATIVE MODELING</title>
      <p>
        In collaborative modeling, decisions may be made at different
development stages requiring the designers to work with their model
versions as long as uncertainty can be solved and a merged version
can be obtained. In order to reduce the burden of managing a
multitude of model alternatives, we present a metamodel-independent
approach able to represent and manage uncertainty in collaborative
modeling based on a revised basis in [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ].
      </p>
      <p>During the modeling, the same model is edited by multiple users.
Changes introduced by modelers are maintained as alternative
elements in the model producing uncertainty. During the
management, modelers increasingly reduce (until resolve) such uncertainty
by choosing among the alternatives. In particular, at each step, the
modeler selects the desired alternative (i.e., making a model
element in the solution space as certain), so that the uncertainty is
gradually resolved by considering choices and dependencies. Note
that, the two phases are not necessarily consecutive, in fact, at any
time a modeler may decide to manipulate or manage the model or
a part of it.</p>
      <p>The overall architecture of the approach is depicted in Fig. 3.
The Metamodel generation is realized by means of a
model-tomodel transformation written in ATL2, called M M 2U M M . It
takes as input a metamodel M M conforms to Ecore3 and
generate the correspondent metamodel with uncertainty U M M . At this
point, modelers may specify their collaborative models with
uncertainty conform to U M M (see the U M model in the Modeling
box). An U M model is semantically equivalent to a set of
models fM1::Mng conform to M M (i.e., all the candidate solution
models represented in U M ). The component Management allows
modelers to select the desired solution models by means of two
operations: F ilter and Concr. The F ilter operation allows to
select elements in the solution space parametrically. It is based on
an ATL model-to-model transformation; it takes as input the U M</p>
      <sec id="sec-4-1">
        <title>2ATL Transformation Language: https://eclipse.org/atl/</title>
        <p>3EMF Ecore: http://www.eclipse.org/modeling/emf/
(a)
(b)
model and a parameter (represented by a model P M conforms to
the metamodel P M M ), and outcomes another model conforms to
U M M . In particular, the model U M is filtered by the
transformation, so that the generated model U M1 is semantically equivalent
to a subset of the models fM1::Mng according to the parameter
expressed in P M . The Concr operation allows to select the desired
final model conforms to M M ; it takes as input the U M model and
outcomes all the solution space, i.e. a set of models conforms to
M M . The overall architecture has been implemented within the
Eclipse Modelling Framework (EMF)4 5.
3.1</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Uncertainty metamodel</title>
      <p>
        The uncertainty metamodel U M M is obtained by extending a base
metamodel M M with specific connectives able to represent
multiple alternatives asisen from collaborative modeling. These
connectives denote the points of uncertainty where model elements
belonging to a certain version are attached. Moreover, such points of
uncertainty are traceable in order to permit the identification of
specific merge strategies. The approach is metamodel independent, in
fact its construction is realized by means of a model transformation
and applies to any Ecore metamodel [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
      </p>
      <p>The uncertainty metamodel U M M structure is depicted in Fig. 4.
As in the left-hand side of the figure, the metamodel is composed
of two packages, the Base package that contains the elements of
the base metamodel and the Uncertainty package that contains the
elements that extend the base metamodel in order to allow the
specification of points of uncertainty.</p>
      <p>In particular, the uncertainty metamodel U M M is generated
extending the base metamodel as following:
1) the metaclass User with attribute username that specifies
the author making the editing is added;
2) the metaclass OperatorType that enumerates the logical
operator literals AND, OR and XOR is added;
3) for each parent class C in base metamodel, such that it does
not specialize other metaclasses:
4.1) a corresponding abstract metaclass IC is created such
that C specializes IC. Such interface allows to choose
among a certain element or an uncertain one.
4.2) a metaclass UC that extends IC is added. It specifies an
association alternatives of type C and multiplicity
1..* that relates the alternative elements to the
uncertainty point of type C; an association upoints of type
4EMF Modelling Framework: http://www.eclipse.org/modeling/emf/
5The implementation is available at http://jtl.di.univaq.it/</p>
      <sec id="sec-5-1">
        <title>UC and multiplicity 0..* enabling to nest uncertainty</title>
        <p>points; the attribute uType of type OperatorType for
specifying the logical operator connecting the
alternatives; the association user of type UUser with
multiplicity 1..* for specifying the authors;</p>
        <p>The aforementioned procedure is implemented as an endogenous
model-to-model transformation implemented in ATL.</p>
        <p>
          The main advantage of such representation technique is that the
uncertainty represented by a set of alternative models is leveraged
to a first-class status. Hence, a complete set of models can therefore
be manipulated as whole, for instance with an automated
transformation (as done for instance in [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ]), without iterating over each
individual in the set.
3.2
        </p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Models with uncertainty</title>
      <p>According to the scenario described Sect. 2, we assume that
in PAs, modelers are interested to specify complex processes by
means of the standard notation BPMN and to exploit the Learn PAd
repository where models are constantly updated and shared among
different organizations.</p>
      <p>Let us considering the BPMN 2.0 6 language as mentioned in
the motivating example in Sect. 2. The language specification
supports different modeling conformance levels (e.g., process
modeling, process execution, etc.) that makes it as rich and complex. For
the sake of understanding and brevity, we provide a restricted
version of the BPMN 2.0 metamodel that concerns the process
modeling conformance level and allows us to specify processes at a
certain abstraction level and to model the running example discussed
in Sect. 2. Starting from the simplified version of the BPMN
metamodel, the correspondent uncertainty metamodel UBPMN is
obtained as illustrated in the previous section 7.</p>
      <p>
        At this point, modelers may specify their models with
uncertainty. In particualr, by using the proposed approach, the model
in Fig. 2 can be represented by means of the model with
uncertainty depicted in Fig. 5. The sub process Check Application
is composed of a common part shared among all the modelers
(that is the lane Third Party PA) and an uncertain part in which
model elements are independently modified by the four
modelers. In particular, the point of uncertainty of type ULane includes
the nested uncertainty point Municipal Desk edited by Modeler
A, Modeler B and Modeler D, and the nested uncertainty point
District Desk edited by the Modeler C. Each uncertainty point
is composed of a set of elements that are in common to the
modelers and nested uncertainty points that group the modeler’s
modifi6For reason of readability, we omit the description of the language.
The interested reader may refer to the OMG specification [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ].
7The implementation is available at http://jtl.di.univaq.it/
cations. For instance, the uncertainty point edited by the Modeler
B and Modeler D is composed of common elements such as Start
Event, Send Instance to Thirdy Part, etc., and a set of nested
uncertainty points, for instance the nested uncertainty point edited
by the Modeler B include the sequence flow
P12FirstIntegrationCheck, the task First Integration Check, etc.
      </p>
      <p>
        Models with uncertainty may over-approximate the solution space
because of their combinatorial nature [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]. For instance, the
scenario in Fig. 2 suggests that only one lane for the same activity can
exist in the final model. However, the generated model with
uncertainty could admit also models with both the lanes giving place
to more solutions than those expected. Therefore, this outcome is
avoided by using logical operators that allowing modelers to
constrain and restrict the solutions to the ones depicted in the Fig. 2.
      </p>
      <p>Listing 1 shows a fragment of the model with uncertainty
representing the alternative solution models generated by the
collaborative modeling in Fig. 2. It is given in its XMI 8 format. In
particular, the LaneSet is composed of a model element of type
Lane named Third Party PA (line 8) and an uncertainty point
of type ULane (line 9). The latter contains two nested uncertainty
points: the lane Municipal Desk (line 11) edited by the users
Modeler A, Modeler B and Modeler D, and the lane District
Desk (line 22) edited by the users Modeler C. Each uncertainty
point is composed of its alternative elements and/or other nested
uncertainty points. For instance, Municipal Desk contains the
element of type StartEvent (line 12) and the uncertainty point
edited from Modeler A with a set of alternative elements (such as
8http://www.omg.org/spec/XMI/
the element named First Document Check of type Task, in line
16).
10</p>
    </sec>
    <sec id="sec-7">
      <title>3.3 Interoperability between models</title>
      <p>The proposed approach allows to use models with uncertainty in
order to represent design alternatives in collaborative models. The
approach aims to respond to the need for techniques indeed to the
engineering, modularization and reuse of large models and
complex modelling enabling their flexible combination.</p>
      <p>As said, modelers edits their modification on the model with
uncertainty that semantically correspond to a set of models conform
to the base matamodel (solution space); then alternatives has to be
selected and/or merged in order to obtain the desired (final) model
version. Dependencies and conflicts in models cause issues related
to consistency checking that has to be tackled.</p>
      <p>However, a number of operation may be needed to give the
designer a more effective support and to achieve a complete
interoperability between the base and the uncertainty metamodels, as shown
in the next section.
3.4</p>
    </sec>
    <sec id="sec-8">
      <title>Management of models with uncertainty</title>
      <p>Once the uncertainty metamodel U M M is generated and
modelers start to edit the model U M conforms to it in a collaborative
manner, it is important to achieve the mean to manage the arising
uncertainty. As said, multiple editing generates multiple
alternatives; modelers may iteratively reduce the uncertainty by selecting
the desired alternatives in a parametric manner and finally, when
the uncertainty is totally resolved, the final model representing the
desired design model is obtained. Note that the modeler may
intentionally manage a sub-set of uncertainty points and postpone the
complete resolution.</p>
      <p>To this end, we provide an operation called f ilter that permits to
the modelers to reduce the uncertainty according to a given
property. In particular, the f ilter operation is a mapping defined as
following:
filter : P</p>
      <p>U M M ! U M M
that for any model with uncertainty U M 2 U M M and a
parameter p defined over the metamodel M M returns a model U M 0 2
U M M where the uncertainty is reduced according to p (i.e., the
solution models that not satisfying a given property are removed).</p>
      <p>The operation is implemented by means of a model-to-model
transformation called F ilter written in ATL. As said, it takes as
input the U M model and a parameter (represented by a model P M
conforms to the metamodel P M M ), and outcomes a model U M1
conforms to U M M , that is filtered according to P M . In particular,
the generated model U M1 is included in U M , that is semantically
equivalent to a subset of the models fM1::Mng according to the
parameter expressed in the model P M .</p>
      <p>When the uncertainty is solved, the outcome is a final model
without uncertainty (i.e., concretization model). Along with an
incremental management, we provide to the designer the possibility
to directly select one or more (or all as well) concretization models.</p>
      <p>The concretization operator is defined in order to return the whole
set of the concretizations represented in a model with uncertainty.
More formally, such operator concr is a mapping defined for any
base metamodel M M :
concr : U M M
! M M
which takes an arbitrary model with uncertainty U M 2 U M M
and returns its k concretizations hM1 Mki 2 M M . By
entangling the uncertainty with the specialized metamodel construction
U M M , it is of crucial relevance to be able to retrieve the
concretizations as instances of their base metamodel. As one can
expect, the reasons why this is important can be numerous including
the necessity to keep on exploiting, utilizing, and capitalizing on
existing tools.</p>
      <p>For instance, the uncertainty of the model in Fig. 5 can be solved
in this way: i) the versions of the Modeler A and the Modeler
B are merged together in order to obtain a final model of the first
organization, ii) the versions of the Modeler C is selected to
obtain a final model of the second organization, iii) the versions of the
Modeler D is selected to obtain a final model of the third
organization, and iv) a new version is selected by a modeler of a different
organization.</p>
      <p>Let us suppose that the modeler’s of the first organization need
to solve the uncertainty and obtain a final model, thus the F ilter
transformation is applied as in the following:
- the modeler selects the task First Integration Check
belongs to the uncertainty point edited by the Modeler B.
Such parameter is given as input of the transformation; since
the uncertainty point is involved in a logical operation AND
all the elements in the uncertainty point are taken as certain
part of the final model;
- the modeler selects the parallel gateway P1 belongs to the
uncertainty point edited by Modeler B and Modeler D. Since
the uncertainty point is involved in a logical operation AND
both the elements Start2P1 and P1 are taken as certain and
the second point of uncertainty is solved; finally
- the lane Municipal Desk is selected and the last
uncertainty point is solved.</p>
      <p>The final model is depicted in Fig. 6.
3.5</p>
    </sec>
    <sec id="sec-9">
      <title>Manipulation of models with uncertainty</title>
      <p>In this work, we aim to support designers in specifying
collaborative models and perform operation on them; for instance, designers
may need to performs operations of model transformation on
versioned models.</p>
      <p>
        Model transformation techniques typically operate under the
assumption that models do not contain uncertainty. Actually, when a
modeler is still working on a versioned artifact, she may delay the
application of model transformations until the information needed
to perform the merge becomes available, or make premature
resolutions of the existing versions in order to apply the model
transformations, thus creating a risk that these resolutions are incorrect.
With our approach, modelers may resolve the uncertainty by
considering only one version of model, otherwise they may decide to
postpone the resolution, so they they need to be supported in their
operations (e.g., model transformations should be applied on
models with uncertainty [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]). To this reason, we aim to provide a
technique to adapt existing model transformations so that they can
be applied to models even if they contain uncertainty [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>Furthermore, by means of our approach modelers can therefore
easily grasp the differences among candidate models and
consistently make their decision without manually inspecting each model
individually.
3.6</p>
    </sec>
    <sec id="sec-10">
      <title>Modelling system</title>
      <p>Our approach requires to be integrated on a collaborative
modeling platform that supports multi user in real time and large models
(of the scale of millions of model elements) paying attention to
efficiency and performance.</p>
      <p>
        The existing model versioning systems are mainly designed as
version control systems (VCS), such as CVS or SVN. They
support the long transaction model that assume that designers perform
commit of large part of the work with respect to a certain previous
version [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. These systems are asynchronous and provide
merging features and mechanisms able to automatically detect and solve
conflicts by means of primitives like push, pull, commit and merge.
      </p>
      <p>A modeling system supporting our approach has to be able to
deal with models with uncertainty and to allow multi-users to
collaboratively work with their models in a way that the uncertainty
is transparent. The architecture is designed to support both offline
and online collaboration in a multi-user and multi-device
environment, and to provide a model access layer (transaction
management, queries, views and manipulation), and an adaptation layer
for the integration of access control and authentication (these may
be provided by additional middleware such as the web server that
hosts the actual communication between server and client). The
environment will be implemented as an Eclipse Plugin embedded
in the EMF framework9.</p>
      <p>
        Let us to consider that modelers have access to a repository that
provide different organizations to store and manage their models
(as in the example in Sect. 2). Thus, modelers need to: i) visualize
the repository and select the desired model by exploit a standard
no9https://eclipse.org/modeling/emf/
tation of feature diagrams [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], and ii) edit their artifact by means
of an XMI editor and/or a visual editor embedded in the EMF
environment. Going in more details, when the designer select a model,
the concr operation extract the specific model from the model with
uncertainty. Whereas, when modifications are made from a
modelers and the push operation is performed, the system as to
consequently update the model with uncertainty (i.e., changes are added
as alternatives within uncertainty points).
      </p>
    </sec>
    <sec id="sec-11">
      <title>RELATED WORK</title>
      <p>
        Uncertainty is ubiquitous within contexts such as requirements
engineering [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], software processes [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] and adaptive systems [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ].
Uncertainty management has been studied in many works, often
with the intention to express and represent it in models. In [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ],
partial models are introduced in order to let the designer specify
uncertain information by means of a base model enriched with
annotations and first-order logic. In [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] a formal approach called
MAVO is proposed and applied to design models in order to
express and allow automated reasoning in presence of uncertainty.
In [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], an approach to manage the uncertainty generated as the
outcome of a non-deterministic model transformation is proposed.
The JTL bidirectional transformation engine [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] is revised to
accommodate a intensional semantics, that permits a transformation
to natively generate a model with uncertainty instead of a myriad
of models. In particular, a model with uncertainty provides a
compact representation of the solution space for the sake of usability
and effectiveness. Model transformation techniques typically
operate under the assumption that models do not contain uncertainty.
Nevertheless, the work in [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] proposes a technique for adapting
existing model transformations in order to deal with models
containing uncertainty. In [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], the authors propose a bidirectional
model transformation framework to cover incomplete
transformations producing a multitude of possible solutions to consistency
restoration. This multitude is managed in an intentional manner via
models with built-in uncertainty (as proposed in [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]) and allows to
these to be included as input in a model transformation process.
      </p>
      <p>
        Feature models are a popular formalism for managing variability
in software product lines. In this context, the Familiar project [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]
provides an executable language that supports manipulating and
reasoning about feature models and fully integrated modeling tool.
      </p>
      <p>
        Despite a number of works have been proposed to cope with
large and complex software systems, a new line of research is
imperative in order to achieve scalability across the MDE technical
space and to enable MDE to remain relevant [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. Among the
existing approaches that aim to cope with different topics concerning
scalability, such as modeling languages, transformations,
collaborative modeling, persistence and so on, we consider the
followings as most related to our work. In [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] the authors aim at
providing compositional technology and techniques for a
languageindependent model modularization. In particular, they proposed
a way of extending modeling languages with component
capabilities. The implementation is based on EMF Eclipse. However,
the work does not consider issues related to consistency preserving
when models are interconnected.
      </p>
      <p>
        The state of the art in collaborative modeling includes several
prototype attempts of collaborative systems that are more closely
aligned with version control systems (VCS), such as CVS or SVN
[
        <xref ref-type="bibr" rid="ref1 ref2 ref21 ref6">21, 6, 1, 2</xref>
        ]. Recently, the Eclipse collaborative modeling
community proposed some convergent approaches. The Eclipse Modeling
Framework Connected Data Objects (CDO) [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] is a model
repository for EMF models supporting version management. EMF
Compare [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] is a model comparison, differencing and merging tool
often used in combination with traditional VCS. EMFStore [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] is
a model versioning framework for EMF able to deal with conflict
management.
      </p>
      <p>
        They provides a still immature means for collaborative work
and locking and conflict management [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]; they are more closely
aligned with version control system such as CSV and SVN and
implemented within EMF Eclipse. Moreover, they do not fulfill the
need to have a flexible and scalable framework able to work
independently from the specific domain-specific language or ad-hoc
architecture.
5.
      </p>
    </sec>
    <sec id="sec-12">
      <title>CONCLUSION</title>
      <p>MDE is now practiced in industry, and on very large complex
systems engineering projects and problems. From this arises the need
to enable designers to create and refine large models in a
collaborative manner enabling the engineering, modularization and reuse.</p>
      <p>In this paper, we proposed to deal with the uncertainty arisen
from the collaborative editing of models by means of a
metamodelindependent approach able to represent models with uncertainty.
Furthermore, we proposed to manage the uncertainty by means
of two kinds of operations to reduce or resolve the uncertainty.
We plan to realize a model transformation approach able to deal
with model with uncertainty (i.e., model with uncertainty are
input and/or output of the transformation engine). Finally, we plan
to integrate our approach in a collaborative environment for real
time multi-user editing. We aim to extend the framework to help
the modelers to make decisions among proposed design versions.
The versions are initially partitioned, constrained, abstracted, and
graphically visualized to the user. Then, when decisions are made,
they are stored and used to drive subsequent decisions.
6.</p>
    </sec>
    <sec id="sec-13">
      <title>ACKNOWLEDGMENT</title>
      <p>This research was supported by the EU through the Model-Based
Social Learning for Public Administrations (Learn Pad) FP7 project
(619583).
7.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <article-title>[1] The AMOR project</article-title>
          .
          <source>Adaptible model versioning project website</source>
          .
          <year>2009</year>
          . http://modelversioning.org.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Eclipse</given-names>
            <surname>Modeling</surname>
          </string-name>
          <article-title>Team rFamework proposal</article-title>
          .
          <year>2011</year>
          . http://www.eclipse.org/proposals/mtf/.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3] EMFStore project.
          <year>2011</year>
          . http://eclipse.org/emfstore.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <article-title>[4] FAMILIAR (for FeAture Model scrIpt Language for manIpulation</article-title>
          and
          <source>Automatic Reasoning)</source>
          .
          <year>2011</year>
          . http://familiar-project.
          <source>github.io/.</source>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Connected</given-names>
            <surname>Data</surname>
          </string-name>
          <article-title>Objects model repository (CDO) project</article-title>
          .
          <year>2012</year>
          . http://eclipse.org/cdo.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>K.</given-names>
            <surname>Altmanninger</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Kappel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kusel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Retschitzegger</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Seidl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Schwinger</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Wimmer</surname>
          </string-name>
          .
          <article-title>Amor-towards adaptable model versioning</article-title>
          .
          <source>In 1st International Workshop on Model Co-Evolution and Consistency</source>
          Management,
          <source>in conjunction with MODELS</source>
          , volume
          <volume>8</volume>
          , pages
          <fpage>4</fpage>
          -
          <lpage>50</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>P.</given-names>
            <surname>Baker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Loh</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Weil</surname>
          </string-name>
          .
          <source>Procs of MoDELS</source>
          <year>2005</year>
          ,
          <article-title>chapter Model-Driven Engineering in a Large Industrial Context - Motorola Case Study</article-title>
          , pages
          <fpage>476</fpage>
          -
          <lpage>491</lpage>
          .
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Bertolino</surname>
          </string-name>
          .
          <article-title>Model-Based Social Learning for Public Administrations (Learn PAd)</article-title>
          .
          <article-title>EU-FP7 project</article-title>
          .
          <source>Description of Work</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>A.</given-names>
            <surname>Cicchetti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. Di</given-names>
            <surname>Ruscio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Eramo</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Pierantonio</surname>
          </string-name>
          .
          <article-title>JTL: a bidirectional and change propagating transformation language</article-title>
          .
          <source>In SLE10</source>
          , pages
          <fpage>183</fpage>
          -
          <lpage>202</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>K.</given-names>
            <surname>Czarnecki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Helsen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>U.</given-names>
            <surname>Eisenecker</surname>
          </string-name>
          .
          <article-title>Staged configuration using feature models</article-title>
          .
          <source>In International Conference on Software Product Lines</source>
          , pages
          <fpage>266</fpage>
          -
          <lpage>283</lpage>
          . Springer,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Diskin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Eramo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Pierantonio</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Czarnecki</surname>
          </string-name>
          .
          <article-title>Incorporating uncertainty into bidirectional model transformations and their delta-lens formalization</article-title>
          .
          <source>In Procs of the Bx 2016 Workshop</source>
          , co-located
          <source>with ETAPS</source>
          <year>2016</year>
          , pages
          <fpage>15</fpage>
          -
          <lpage>31</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>C.</given-names>
            <surname>Ebert</surname>
          </string-name>
          and
          <string-name>
            <given-names>J. D.</given-names>
            <surname>Man</surname>
          </string-name>
          .
          <article-title>Requirements uncertainty: influencing factors and concrete improvements</article-title>
          .
          <source>In Procs. of ICSE</source>
          , pages
          <fpage>553</fpage>
          -
          <lpage>560</lpage>
          . ACM Press,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>Eclipse</given-names>
            <surname>Foundation</surname>
          </string-name>
          .
          <source>EMF Compare</source>
          .
          <year>2010</year>
          . http://www.eclipse.org/modeling/emft/?project=compare.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>R.</given-names>
            <surname>Eramo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Pierantonio</surname>
          </string-name>
          , and
          <string-name>
            <surname>G. Rosa.</surname>
          </string-name>
          <article-title>Uncertainty in bidirectional transformations</article-title>
          .
          <source>In Procs. of MiSE</source>
          <year>2014</year>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>M.</given-names>
            <surname>Famelis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Salay</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Chechik</surname>
          </string-name>
          .
          <article-title>Partial models: Towards modeling and reasoning with uncertainty</article-title>
          .
          <source>In ICSE</source>
          , pages
          <fpage>573</fpage>
          -
          <lpage>583</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>M.</given-names>
            <surname>Famelis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Salay</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. D.</given-names>
            <surname>Sandro</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Chechik</surname>
          </string-name>
          .
          <article-title>Transformation of models containing uncertainty</article-title>
          .
          <source>In MoDELS'13</source>
          , pages
          <fpage>673</fpage>
          -
          <lpage>689</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>F.</given-names>
            <surname>Heidenreich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Henriksson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Johannes</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Zschaler</surname>
          </string-name>
          .
          <source>Transactions on Aspect-Oriented Software Development VI, chapter On Language-Independent Model Modularisation</source>
          , pages
          <fpage>39</fpage>
          -
          <lpage>82</lpage>
          .
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>H.</given-names>
            <surname>Ibrahim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. H.</given-names>
            <surname>Far</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Eberlein</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Daradkeh</surname>
          </string-name>
          .
          <article-title>Uncertainty management in software engineering: Past, present, and future</article-title>
          .
          <source>In CCECE</source>
          , pages
          <fpage>7</fpage>
          -
          <lpage>12</lpage>
          . IEEE,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Kolovos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. F.</given-names>
            <surname>Paige</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Polack</surname>
          </string-name>
          .
          <article-title>The grand challenge of scalability for model driven engineering</article-title>
          .
          <source>In Models in Software Engineering, Workshops and Symposia at MODELS</source>
          <year>2008</year>
          , pages
          <fpage>48</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Kolovos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. M.</given-names>
            <surname>Rose</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. D.</given-names>
            <surname>Matragkas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. F.</given-names>
            <surname>Paige</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Guerra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. S.</given-names>
            <surname>Cuadrado</surname>
          </string-name>
          , J. de Lara, I. Ráth,
          <string-name>
            <given-names>D.</given-names>
            <surname>Varró</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Tisi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Cabot</surname>
          </string-name>
          .
          <article-title>A research roadmap towards achieving scalability in model driven engineering</article-title>
          .
          <source>In Procs of BigMDE</source>
          <year>2013</year>
          , page
          <issue>2</issue>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>G.</given-names>
            <surname>Kramler</surname>
          </string-name>
          , G. Kappel,
          <string-name>
            <given-names>T.</given-names>
            <surname>Reiter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Kapsammer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Retschitzegger</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.</given-names>
            <surname>Schwinger</surname>
          </string-name>
          .
          <article-title>Towards a semantic infrastructure supporting model-based tool integration</article-title>
          .
          <source>In Procs of GaMMa</source>
          <year>2006</year>
          , pages
          <fpage>43</fpage>
          -
          <lpage>46</lpage>
          . ACM,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>P.</given-names>
            <surname>Mohagheghi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Fernandez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Martell</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Fritzsche</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.</given-names>
            <surname>Gilani</surname>
          </string-name>
          .
          <source>Models in Software Engineering: Workshops and Symposia at MODELS</source>
          <year>2008</year>
          ,
          <article-title>chapter MDE Adoption in Industry: Challenges and Success Criteria</article-title>
          , pages
          <fpage>54</fpage>
          -
          <lpage>59</lpage>
          .
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>B. P. M.</given-names>
            <surname>OMG.</surname>
          </string-name>
          <article-title>Notation (BPMN) 2.0</article-title>
          . Object Management Group: Needham, MA,
          <volume>2494</volume>
          :
          <fpage>34</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>G. R.</given-names>
            <surname>Romina</surname>
          </string-name>
          <string-name>
            <surname>Eramo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Alfonso</given-names>
            <surname>Pierantonio</surname>
          </string-name>
          .
          <article-title>Managing uncertainty in bidirectional model transformations</article-title>
          .
          <source>In SLE</source>
          <year>2015</year>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>R.</given-names>
            <surname>Salay</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Chechik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Horkoff</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A. D.</given-names>
            <surname>Sandro</surname>
          </string-name>
          .
          <article-title>Managing requirements uncertainty with partial models</article-title>
          .
          <source>Requir</source>
          . Eng.,
          <volume>18</volume>
          (
          <issue>2</issue>
          ):
          <fpage>107</fpage>
          -
          <lpage>128</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>P.</given-names>
            <surname>Sawyer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Bencomo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Whittle</surname>
          </string-name>
          , E. Letier,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Finkelstein</surname>
          </string-name>
          .
          <article-title>Requirements-aware systems: A research agenda for re for self-adaptive systems</article-title>
          .
          <source>In RE</source>
          , pages
          <fpage>95</fpage>
          -
          <lpage>103</lpage>
          . IEEE,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>D.</given-names>
            <surname>Schmidt</surname>
          </string-name>
          . Guest Editor's Introduction:
          <string-name>
            <surname>Model-Driven Engineering</surname>
          </string-name>
          . Computer,
          <volume>39</volume>
          (
          <issue>2</issue>
          ):
          <fpage>25</fpage>
          -
          <lpage>31</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>