<!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>Consistency-based Merging of Variability Models</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Mathias Uta</string-name>
          <email>mathias.uta@siemens.com</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alexander Felfernig</string-name>
          <email>der.felfernig@ist.tugraz.at</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gottfried Schenner</string-name>
          <email>gottfried.schenner@siemens.com</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Johannes Spo¨ cklberger</string-name>
          <email>spoecklberger.johannes@student.tugraz.at</email>
        </contrib>
      </contrib-group>
      <abstract>
        <p>Globally operating enterprises selling large and complex products and services often have to deal with situations where variability models are locally developed to take into account the requirements of local markets. For example, cars sold on the U.S. market are represented by variability models in some or many aspects different from European ones. In order to support global variability management processes, variability models and the underlying knowledge bases often need to be integrated. This is a challenging task since an integrated knowledge base should not produce results which are different from those produced by the individual knowledge bases. In this paper, we introduce an approach to variability model integration that is based on the concepts of contextual modeling and conflict detection. We present the underlying concepts and the results of a corresponding performance analysis.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Configuration [
        <xref ref-type="bibr" rid="ref14 ref7">7, 14</xref>
        ] is one of the most successful applications of
Artificial Intelligence technologies applied in domains such as
telecommunication switches, financial services, furniture, and software
components. In many cases, configuration knowledge bases are
represented in terms of variability models such as feature models that
provide an intuitive way of representing variability properties of
complex systems [
        <xref ref-type="bibr" rid="ref10 ref4">10, 4</xref>
        ]. Starting with rule-based approaches,
formalizations of variability models have been transformed into model-based
knowledge representations which are more applicable for the
handling of large and complex knowledge bases, for example, in terms
of knowledge base maintainability and expressivity of complex
constraints [
        <xref ref-type="bibr" rid="ref2 ref7">2, 7</xref>
        ]. Examples of model-based knowledge representations
are constraint-based representations [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], description logic and
answer set programming (ASP) [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Besides variability reasoning for
single users, latest research also shows how to deal with scenarios
where groups of users are completing a configuration task [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. In this
paper, we focus on single user scenarios where variability models are
represented as a constraint satisfaction problem (CSP) [
        <xref ref-type="bibr" rid="ref15 ref3">3, 15</xref>
        ].
      </p>
      <p>
        There exist a couple of approaches dealing with the issue of
integrating knowledge bases. First, knowledge base alignment is the
process of identifying relationships between concepts in different
knowledge bases, for example, classes describe the same concept
but have different class names (and/or attribute names). Approaches
supporting the alignment of knowledge bases are relevant in
scenarios where numerous and large knowledge bases have to be integrated
(see, for example, [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]). Ardissono et al. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] introduce an approach
to distributed configuration where individual knowledge bases are
integrated into a distributed configuration process in which
individual configurators are responsible for configuring individual parts of a
complex product or service. The underlying assumption is that
individual knowledge bases are consistent and that there are no (or only
a low number of) dependencies between the given knowledge bases.
      </p>
      <p>
        The merging of knowledge bases is related to the task of exploiting
various merging operators to different belief sets [
        <xref ref-type="bibr" rid="ref11 ref5">5, 11</xref>
        ]. For
example, Delgrande and Schaub [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] introduce a consistency-based
merging approach where the result of a merging process is a maximum
consistent set of logical formulas representing the union of the
individual knowledge bases. In the line of existing consistency-based
analysis approaches, the resulting knowledge bases represent a
logical union of the original knowledge bases that omits minimal sets of
logical sentences inducing an inconsistency [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Contextual
modeling [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] is related to the task of decentralizing variability knowledge
related development and maintenance tasks.
      </p>
      <p>
        Approaches to merging feature models represented on a
graphical level on the basis of merging rules have been introduced, for
example, in [
        <xref ref-type="bibr" rid="ref13 ref16">16, 13</xref>
        ]. In this context, feature models including
specific constraint types such as requires and excludes, are merged in a
semantics-preserving fashion. Compared to our approach, the
merging of variability models introduced in [
        <xref ref-type="bibr" rid="ref13 ref16">16, 13</xref>
        ] is restricted to
specific constraint types and does not take into account redundancy.
      </p>
      <p>Our approach provides a generalization to existing approaches
especially due to the generalization to arbitrary constraint types and
redundancy-free knowledge bases as a result of the merge operation.
We propose an approach to the merging of variability models
(represented as constraint satisfaction problems) which guarantees
semantics preservation, i.e., the union of the solutions determined by
individual constraint solvers (configurators) is equivalent to the solution
space of the integrated variability model (knowledge base). In this
context, we assume that the knowledge bases to be integrated (1) are
consistent and (2) use the same variable names for representing
individual item properties (knowledge base alignment issues are beyond
the scope of this paper).</p>
      <p>The contributions of this paper are the following. (1) We provide
a short analysis of existing approaches to knowledge base
integration and point out specific properties of variability model integration
scenarios that require alternative approaches. (2) We introduce a new
approach to variability knowledge integration which is based on the
concepts of contextualization and conflict detection. (3) We show the
applicability of a our approach on the basis of a performance
analysis.</p>
      <p>The remainder of this paper is organized as follows. First, we
introduce a working example from the automotive domain (see Section
2). On the basis of this example, we introduce our approach to
variability model integration (merging) in Section 3. In Section 4, we
present a performance evaluation. Section 5 includes a discussion of
threats to validity of the presented merging approach. The paper is
concluded in Section 6 with a discussion of issues for future work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Example Variability Models</title>
      <p>
        In the following, we introduce a working example which will serve
as a basis for the discussion of our approach to knowledge integration
(Section 3). Let us assume the existence of two different variability
models. For the purpose of our example, we introduce two car
configuration knowledge bases represented as a constraint satisfaction
problem. One car configuration knowledge base is assumed to be
defined for the U.S. market and one for the German market. For
simplicity, we assume that (1) both knowledge bases are represented as
a constraint satisfaction problem (CSP) [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] and (2) that both
knowledge bases operate on the same set of variables and corresponding
domain definitions.4 Our two knowledge bases consisting of variable
definitions and corresponding constraints fCKBus, CKBgerg are
the following.
      </p>
      <p>CKBus: fcountry(US), type(combi, limo, city, suv), color(white,
black), engine(1l, 1.5l, 2l), couplingdev(yes,no), fuel(electro,
diesel, gas, hybrid), service(15k, 20k, 25k), c1us : f uel 6=
hybrid, c2us : f uel = electro ! coupling dev = no,
c3us : f uel = diesel ! color = blackg
CKBger: fcountry(GER), type(combi, limo, city, suv),
color(white, black), engine(1l, 1.5l, 2l), couplingdev(yes,no),
fuel(electro, diesel, gas, hybrid), service(15k, 20k, 25k), c1ger :
f uel 6= gas, c2ger : f uel = electro ! couplingdev = no,
c3ger : f uel = diesel ! type 6= cityg</p>
      <p>In these knowledge bases, we denote the variable country as
contextual variable since it is used to specify the country a configuration
belongs to but is not directly associated with a specific component of
the car. Table 1 shows a summary of the solution spaces (in terms
of the number of potential solutions) that are associated with the
country-specific knowledge bases CKBus and CKBger. For
simplicity, we kept the number of constraints the same in both
knowledge bases, however, the integration concepts introduced in Section
3 are also applicable to knowledge bases with differing numbers of
constraints.</p>
    </sec>
    <sec id="sec-3">
      <title>Merging Variability Models</title>
      <p>
        In this section, we introduce our approach to merge variability
models represented as constraint satisfaction problems (CSPs) [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. Our
approach is based on the assumption that the constraints of the two
original knowledge bases CKB1 and CKB2 are contextualized,
i.e., each constraint of knowledge base CKB1 gets contextualized
4 We are aware of the fact that this assumption does not hold for real-world
scenarios in general. However, we consider tasks of concept matching as
an upstream task we do not take into account when integrating knowledge
bases on a formal level.
on the basis of predefined contextualization variables. For example:
assuming a context variable country(US,GER), each constraint c[i]us
of the US knowledge base is contextualized with (transformed into)
country = U S ! (c[i]us). Constraint c1us : f uel 6= hybrid
would be translated into c1us0 : country = U S ! (f uel 6=
hybrid). CKBus and CKBger have been transformed into their
contextualized variants CKBu0s and CKBg0er where CKBu0s [
CKBg0er = CKB0.
      </p>
      <p>CKBu0s: fcountry(US), type(combi, limo, city, suv), color(white,
black), engine(1l, 1.5l, 2l), couplingdev(yes,no), fuel(electro,
diesel, gas, hybrid), service(15k, 20k, 25k), c01us : country =
U S ! (f uel 6= hybrid), c02us : country = U S ! (f uel =
electro ! couplingdev = no), c3us : country = U S !
(f uel = diesel ! color = black)g
CKBg0er: fcountry(GER), type(combi, limo, city, suv),
color(white, black), engine(1l, 1.5l, 2l), couplingdev(yes,no),
fuel(electro, diesel, gas, hybrid), service(15k, 20k, 25k),
c01ger : country = GER ! (f uel 6= gas), c02ger :
country = GER ! (f uel = electro ! couplingdev = no),
c03ger : country = GER ! (f uel = diesel ! type 6= city)g
The solution spaces of the contextualized knowledge bases
CKBu0s and CKBg0er are shown in Table 2. They have the same
solution spaces as CKBus and CKBger.
[!ht]</p>
      <p>On the basis of such a contextualization, we are able to preserve
the consistency and semantics of the two original knowledge bases
in the sense that (1) the solution space (CKB1) is equivalent to the
solution space (CKB10), (2) the solution space (CKB2) is equivalent
to the solution space (CKB20), and (3) the solution space (CKB1) [
solution space (CKB2) is equivalent to the solution space (CKB10 [
CKB20 = CKB0).</p>
      <p>Based on this representation, we are able to (1) get rid of
contextualizations (see line 7 of Algorithm 1) that are not needed in the
integrated version of the two original configuration knowledge bases
and (2) delete redundant constraints (see line 15 of Algorithm 1). In
Line 7 it is checked whether a contextualization is needed for the
constraint c (c is the decontextualized version of c0). If the negation
of c is consistent with the union of the contextualized knowledge
bases, solutions exist that support :c. Consequently, c must remain
contextualized. Otherwise, the contextualization is not needed and c
is added to the resulting knowledge base – with this, it replaces c0,
i.e., the corresponding contextualized constraint.</p>
      <p>Each constraint in the resulting knowledge base CKB (the
decontextualized knowledge base) is thereafter checked with regard to
redundancy (see Line 15). A constraint c is regarded as redundant if
CKB fcg is inconsistent with :c. In this case, c does not reduce
the search space and thus can be deleted from CKB – it is redundant
with regard to CKB.</p>
      <p>Algorithm 1 CKB-MERGE(CKB10; CKB20): CKB
1: fCKB10;20 : two contextualized and consistent configuration
knowledge basesg
2: fc0: a contextualized version of constraint cg
3: fCKB: knowledge base resulting from merge operationg
4: CKB ;;
5: CKB0 CKB10 [ CKB20 ;
6: for all c0 2 CKB0 do
7: if inconsistent(f:cg [ CKB0 [ CKB) then
8: CKB CKB [ fcg;
9: else
10: CKB CKB [ fc0g;
11: end if
12: CKB0 CKB0 fc0g;
13: end for
14: for all c 2 CKB do
15: if inconsistent((CKB fcg) [ f:cg) then
16: CKB CKB fcg;
17: end if
18: end for
19: return CKB;</p>
      <p>The knowledge base CKB resulting from applying Algorithm 1
to the individual knowledge bases CKBu0s and CKBg0er looks like
as follows. In CKB, constraint c02us is represented in a
decontextualized fashion since the context information is not needed.
Furthermore, constraint c02ger has been deleted since it is redundant.</p>
      <p>CKB: fcountry(US, GER), type(combi, limo, city, suv),
color(white, black), engine(1l, 1.5l, 2l), couplingdev(yes,no),
fuel(electro, diesel, gas, hybrid), service(15k, 20k, 25k), c01us :
country = U S ! (f uel 6= hybrid), c2us : f uel = electro !
couplingdev = no, c03us : country = U S ! (f uel =
diesel ! color = black), c01ger : country = GER !
(f uel 6= gas), c03ger : country = GER ! (f uel = diesel !
type 6= city)g
4</p>
    </sec>
    <sec id="sec-4">
      <title>Performance Evaluation</title>
      <p>
        In this section, we discuss the results of an initial analysis we have
conducted to evaluate CKB-MERGE (Algorithm 1). For this
analysis, we applied 10 different synthesized variability models CKB0
(CKB0 = CKB10 [ CKB20) represented as constraint satisfaction
problems [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]) that differ individually in terms of the number of
constraints (#constraints) and the degree of contextualization (expressed
as percentages in Tables 3 and 4). In order to take into account
deviations in time measurements, we repeated each experimental setting
10 times where in each repetition cycle the constraints in the
individual (contextualized) knowledge bases CKB0 were ordered
randomly.
      </p>
      <p>The number of consistency checks needed for
decontextualization is linear in terms of the number of constraints in CKB0. A
performance evaluation of CKB-MERGE with different knowledge
base sizes and degrees of contextualized constraints in CKB is
depicted in Table 3. In CKB-MERGE, the runtime (measured in terms
of milliseconds needed by the constraint solver5 to find a solution)
increases with the number of constraints in CKB0 and decreases with
the number of contextualized constraints in CKB. The increase in
5 For the purposes of our evaluation we generated variability models
represented as constraint satisfaction problems formulated using the CHOCO
constraint solver – www.choco-solver.org.
efficiency can be explained by the fact that a higher degree of
contextualization includes more situations where the inconsistency check in
Line 7 (Algorithm 1) terminates earlier (a solution has been found)
compared to situations where no solution could be found. In
addition, Table 4 indicates that the performance of solution search does
not differ depending on the degree of contextualization in the
resulting knowledge base CKB.</p>
      <p>Consequently, integrating individual variability models can
trigger the following improvements. (1) De-contextualization in CKB
can lead to less cognitive efforts when adapting / extending
knowledge bases (due to a potentially lower number of constraints and a
lower degree of contextualization). (2) Reducing the overall number
of constraints in CKB can also improve runtime performance of the
resulting integrated knowledge base.
The main threat to (external) validity is the overall representativeness
of the knowledge bases used for evaluating the performance of
CKBMERGE. The current evaluation is based on a set of synthesized
knowledge bases which do not directly reflect real-world
variability models. We want to point out that the major focus of our work is
to provide an algorithmic solution that allows semantics-preserving
knowledge integration which is a new approach and regarded as the
major contribution of our work. The application of CKB-MERGE
to real-world variability models, i.e., not synthesized ones, is in the
focus of our future work.
In this paper, we have introduced an approach to the
consistencybased merging of variability models represented as constraint
satisfaction problems. The approach helps to build semantics-preserving
knowledge bases in the sense that the solution space of the
resulting knowledge base (result of the merging process) corresponds to
the union of the solution spaces of the original knowledge bases.
Besides the preservation of the original semantics, our approach also
helps to make the resulting knowledge base compact in the sense of
deleting redundant constraints and not needed contextual
information. The performance of our approach is shown on the basis of a
first performance analysis with synthesized configuration knowledge
bases. Future work will include the evaluation of our concepts with
more complex knowledge bases and the development of alternative
merge algorithms with the goal to further improve runtime
performance.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>L.</given-names>
            <surname>Ardissono</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Friedrich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Goy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Jannach</surname>
          </string-name>
          , G. Petrone,
          <string-name>
            <given-names>R.</given-names>
            <surname>Schaefer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zanker</surname>
          </string-name>
          , '
          <article-title>A framework for the development of personalized, distributed web-based configuration systems'</article-title>
          ,
          <source>AI Magazine</source>
          ,
          <volume>24</volume>
          (
          <issue>3</issue>
          ),
          <fpage>93</fpage>
          -
          <lpage>110</lpage>
          , (
          <year>2003</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>D.</given-names>
            <surname>Benavides</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Segura</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Ruiz-Cortes</surname>
          </string-name>
          , '
          <article-title>Automated analysis of feature models 20 years later: A literature review'</article-title>
          ,
          <source>Information Systems</source>
          ,
          <volume>35</volume>
          (
          <issue>6</issue>
          ),
          <fpage>615</fpage>
          -
          <lpage>636</lpage>
          , (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>D.</given-names>
            <surname>Benavides</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Trinidad</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Ruiz-Cortes</surname>
          </string-name>
          ,
          <article-title>'Using constraint programming to reason on feature models'</article-title>
          ,
          <source>in 17th International Conference on Software Engineering and Knowledge</source>
          Engineering (SEKE'
          <year>2005</year>
          ), pp.
          <fpage>677</fpage>
          -
          <lpage>682</lpage>
          , Taipei, Taiwan, (
          <year>2005</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <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 U. Eisenecker, '
          <article-title>Formalizing cardinalitybased feature models and their specialization'</article-title>
          ,
          <source>SoftwareProcess: Improvement and Practice</source>
          ,
          <volume>10</volume>
          (
          <issue>1</issue>
          ),
          <fpage>7</fpage>
          -
          <lpage>29</lpage>
          , (
          <year>2005</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>J.</given-names>
            <surname>Delgrande</surname>
          </string-name>
          and
          <string-name>
            <given-names>T.</given-names>
            <surname>Schaub</surname>
          </string-name>
          , '
          <article-title>A consistency-based framework for merging knowledge bases'</article-title>
          ,
          <source>Journal of Applied Logic</source>
          ,
          <volume>5</volume>
          (
          <issue>3</issue>
          ),
          <fpage>459</fpage>
          -
          <lpage>477</lpage>
          , (
          <year>2007</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Boratto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Stettinger</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tkalcic</surname>
          </string-name>
          ,
          <source>Group Recommender Systems - An Introduction</source>
          , Springer,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hotz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bagley</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Tiihonen</surname>
          </string-name>
          ,
          <article-title>Knowledge-based Configuration: From Research to Business Cases</article-title>
          , Morgan Kaufmann Publishers, 1st edn.,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Jannach</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zanker</surname>
          </string-name>
          , '
          <article-title>Contextual diagrams as structuring mechanisms for designing configuration knowledge bases in uml'</article-title>
          ,
          <source>in 3rd International Conference on the Unified Modeling Language (UML2000)</source>
          ,
          <source>volume 1939 of Lecture Notes in Computer Science</source>
          , pp.
          <fpage>240</fpage>
          -
          <lpage>254</lpage>
          , York, UK, (
          <year>2000</year>
          ). Springer.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>L.</given-names>
            <surname>Galarraga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Preda</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Suchanek</surname>
          </string-name>
          , '
          <article-title>Mining rules to align knowledge bases'</article-title>
          ,
          <source>in Proceedings of the 2013 Workshop on Automated Knowledge Base Construction</source>
          , pp.
          <fpage>43</fpage>
          -
          <lpage>48</lpage>
          , San Francisco, CA, (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>K.</given-names>
            <surname>Kang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Cohen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Hess</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Novak</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Peterson</surname>
          </string-name>
          , '
          <article-title>Featureoriented domain analysis feasibility study (foda)'</article-title>
          ,
          <source>Technical Report</source>
          , CMU/SEI-90
          <string-name>
            <surname>-</surname>
          </string-name>
          TR-
          <volume>021</volume>
          , (
          <year>1990</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>P.</given-names>
            <surname>Liberatore</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Schaerf</surname>
          </string-name>
          , '
          <article-title>Arbitraton (or how to merge knowledge bases)'</article-title>
          ,
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          ,
          <volume>10</volume>
          (
          <issue>1</issue>
          ),
          <fpage>76</fpage>
          -
          <lpage>90</lpage>
          , (
          <year>1998</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>R.</given-names>
            <surname>Reiter</surname>
          </string-name>
          , '
          <article-title>A theory of diagnosis from first principles'</article-title>
          ,
          <source>AI Journal</source>
          ,
          <volume>23</volume>
          (
          <issue>1</issue>
          ),
          <fpage>57</fpage>
          -
          <lpage>95</lpage>
          , (
          <year>1987</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>S.</given-names>
            <surname>Segura</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Benavides</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ruiz-Cortes</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Trinidad</surname>
          </string-name>
          , '
          <article-title>Automated merging of feature models using graph transformations'</article-title>
          ,
          <source>in Generative and Transformational Techniques in Software Engineering, number 5235 in Springer Lecture Notes in Computer Science</source>
          , pp.
          <fpage>489</fpage>
          -
          <lpage>505</lpage>
          , (
          <year>2007</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>M.</given-names>
            <surname>Stumptner</surname>
          </string-name>
          , '
          <article-title>An overview of knowledge-based configuration'</article-title>
          ,
          <source>AI Communications</source>
          ,
          <volume>10</volume>
          (
          <issue>2</issue>
          ),
          <fpage>111</fpage>
          -
          <lpage>125</lpage>
          , (
          <year>1997</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>E.</given-names>
            <surname>Tsang</surname>
          </string-name>
          , Foundations of Constraint Satisfaction, Academic Press, London,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>P. van den Broek</surname>
          </string-name>
          , I. Galvao, and
          <string-name>
            <given-names>J.</given-names>
            <surname>Noppen</surname>
          </string-name>
          , '
          <article-title>Merging feature models'</article-title>
          ,
          <source>in 15th International Software Product Line Conference</source>
          , pp.
          <fpage>83</fpage>
          -
          <lpage>90</lpage>
          ,
          <string-name>
            <surname>Jeju</surname>
            <given-names>Island</given-names>
          </string-name>
          , South Korea, (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>