<!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>On the Influence of Models-to-Natural-Language Transformation in Traceability Link Recovery among Requirements and Conceptual Models</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Raúl Lapeña</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Francisca Pérez</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Carlos Cetina</string-name>
          <email>ccetina@usj.es</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>SVIT Research Group, Universidad San Jorge Autovía A-23 Zaragoza-Huesca Km.299 50830 Villanueva de Gállego (Zaragoza)</institution>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Recovering traceability links between software artifacts and requirements is a common task in Software Engineering. Information Retrieval (IR) techniques have been applied to recover traceability links amongst code and requirements. By transforming Models into Natural Language (M2NL), it is possible to apply IR to calculate their traceability links to requirements. However, results retrieved by IR are affected by the writing style of the NL input. Regarding M2NL, there are two main types of techniques in use: Rule-Based techniques, and ElementBased techniques. Along with M2NL, there is a wide range of Natural Language Processing (NLP) techniques that can be applied. Through this work, we analyze how the usage of distinct M2NL-NLP combinations of techniques impacts IR-based Traceability Links Recovery over requirements and models. We evaluate two different M2NL techniques, and the inclusion of Simple and Advanced NLP along with M2NL, in a real-world industrial case study.</p>
      </abstract>
      <kwd-group>
        <kwd>Natural Language Processing</kwd>
        <kwd>Traceability Link Recovery</kwd>
        <kwd>Domain Specific Language</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Traceability Links Recovery (TLR) between software artifacts and requirements
is a common task in Software Engineering (SE), specially when maintaining
and evolving software products. For code and Natural Language (NL)
requirements, Information Retrieval (IR) techniques have been successfully used for
TLR. By transforming conceptual models into NL, it is possible to apply IR
to requirements-models TLR. However, results retrieved by these techniques
depend greatly in the style in which NL is written. Two main types of techniques are
applied for Models-to-Natural-Language Transformation (M2NL): Rule-Based
techniques [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], and Element-Based techniques [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Rule-Based techniques apply
sets of logical and grammatical rules, while Element-Based techniques extract
text associated to model elements directly.
      </p>
      <p>
        After the M2NL transformation process, there is a wide range of Natural
Language Processing (NLP) techniques that are applied to process NL
representations of models. Some of them are: general phrase styling techniques, syntactical
analysis techniques [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], semantic analysis techniques [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], and human-in-the-loop
techniques. These techniques are combined in distinct ways by different authors,
depending on implementation circumstances and research particularities.
      </p>
      <p>
        The impact of the usage of different M2NL-NLP techniques combinations
on requirements-models TLR has not been studied yet. Through this work, we
analyze how distinct M2NL-NLP techniques combinations impact
requirementsmodels TLR through Latent Semantic Indexing (LSI) [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], the technique that
obtains the best TLR results [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. We evaluate two different M2NL techniques and
the inclusion of Simple and Advanced NLP along with M2NL, in a real-world
industrial case study in the rolling stocks domain with our industrial partner,
Construcciones y Auxiliar de Ferrocarriles (CAF, http://www.caf.net/en).
      </p>
      <p>The combination of Rule-Based M2NL with Advanced NLP leads LSI to the
best results, returning the model fragments that materialize requirements in an
average ranking position of 1 1.12. However, in order to use Rule-Based M2NL,
engineers must adapt or create rules for their Domain Specific Language (DSL).
The combination of Element-Based M2NL with Advanced NLP returns a worse
result for the same measurement (2 5.09), but does not require said efforts.</p>
      <p>The paper is structured as follows: Section 2 presents our Approach. Section
3 details the Evaluation designed to tackle the Research Questions. Section 4
analyzes the statistical significance of the obtained results. Section 5 presents
the Threats to Validity of our work. Section 6 summarizes the works related to
the presented paper. Finally, Section 7 concludes the paper.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Approach</title>
      <p>So far, there has been no discussion on which Model-to-Natural-Language
Transformation (M2NL) techniques should be applied for requirements-models
Traceability Links Recovery (TLR). The effect of the inclusion of Simple or Advanced
Natural Language Processing (NLP) techniques along with M2NL to the same
intent has not been studied yet either. The presented approach studies the
impact of using two different M2NL techniques, and the impact of including Simple
or Advanced NLP techniques along M2NL, over a widely accepted TLR
technique, Latent Semantic Indexing (LSI). Analyzing the success of LSI over the
different inputs, we aim to determine which one guides LSI to enhanced results.</p>
      <p>The top part of Fig. 1 depicts the outline of this work. Through the usage
of M2NL techniques, we convert model fragments into NL. Then, we process
the NL representation of the models and a NL requirement from our case study
through NLP techniques. With the processed model fragments and requirement,
we carry out LSI, ranking the model fragments according to their similitude to
the query requirement. The bottom part of Fig. 1 shows the four configurations
considered through this work, which we analyze in order to determine their
impact on requirements-models TLR.</p>
      <p>MMooddeell
FFraFraFgraMgrmaMgmMogemoemdnoednetdnsetlsetlsl</p>
      <p>Fragmeenntsts
M2NL
NLP</p>
      <p>M2NL</p>
      <p>NLP</p>
      <sec id="sec-2-1">
        <title>Model</title>
        <p>Model
FragMmoednNetsLl
FragMmoednetsl
RFeFrarpoagrfgmemMseeonntdstaestlion</p>
      </sec>
      <sec id="sec-2-2">
        <title>Fragments</title>
        <sec id="sec-2-2-1">
          <title>Configuration 1</title>
          <p>Element-Based
Simple</p>
        </sec>
        <sec id="sec-2-2-2">
          <title>Configuration 2</title>
          <p>Element-Based
Advanced</p>
        </sec>
        <sec id="sec-2-2-3">
          <title>Configuration 3</title>
          <p>Rule-Based
Simple</p>
        </sec>
        <sec id="sec-2-2-4">
          <title>Configuration 4</title>
          <p>Rule-Based
Advanced</p>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>Model</title>
        <p>Model
FraPgrMmocoeednsetssled NL
FragMmoednetsl
RFeFrarpoagrfgmemMseeonntdstaestlion</p>
      </sec>
      <sec id="sec-2-4">
        <title>Fragments</title>
      </sec>
      <sec id="sec-2-5">
        <title>Model</title>
        <p>Fragments to
Requirements</p>
        <p>Similitude
Ranking</p>
        <p>
          The following subsections describe the M2NL techniques taken in account
through the rest of this work, the NLP techniques used to process the NL
representations of the model fragments and requirements in the case study, and the
LSI technique from which results are extracted.
In order to extract NL from models, two main techniques are applied in the
literature: Rule-Based, and Element-Based M2NL. Fig. 2 depicts an example
DSL model from our industrial partner (where the company-specific DSL in use
is TCML, Train Control Modeling Language), and shows the results of applying
both Rule-Based and Element-Based M2NL to the model. In order to formalize
model fragments, we use the Common Variability Language (CVL) [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ].
2.1.1
        </p>
        <p>Rule-Based M2NL
This technique uses a set of user-defined rules to process text inside models.
Through the rules, several aspects inherent to modeling language (such as
naming conventions, model element types, grammatical element ordering, etc.) are
exploited to generate semantically sound NL representations of models.</p>
        <p>
          We use the Rule-Based M2NL technique presented by Meziane et. al. in [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ],
where the authors research the language used in class diagrams components and
develop rules for semantically sound NL generation. The TCML used by our
industrial partner was developed following UML conventions, with equipment
elements corresponding to UML classes, equipment properties corresponding to
UML attributes, and connections corresponding to UML relationships. We can
Pantograph1
        </p>
        <p>Circuit
Breaker1
Converter 1</p>
        <p>HHVVAACC</p>
        <p>Product Model</p>
        <p>Circuit
Breaker 3</p>
        <p>Pantograph2</p>
        <p>Circuit
Breaker2
CCoonnvveerrtteerr22</p>
        <p>Rule-Based M2NL
Converter 2 is connected to Circuit Breaker 3
Circuit Breaker 3 is connected to HVAC</p>
        <p>M2NL
PA</p>
        <p>CCTV</p>
        <p>Element-Based M2NL</p>
        <p>Converter 2 Circuit Breaker 3 HVAC
TCML Syntax</p>
        <p>Model Fragment
HighVoltage
Equipment</p>
        <p>Contactors</p>
        <p>Voltage
Converters</p>
        <p>Consumer</p>
        <p>
          Equipment
leverage the rules in [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] to generate NL representations of the TCML models. As
an example, for the model fragment depicted in the top left part of Fig. 2, this
technique would yield the following strings: ’Converter 2 is connected to Circuit
Breaker 3’, and ’Circuit Breaker 3 is connected to HVAC’.
2.1.2
        </p>
        <p>
          Element-Based M2NL
This technique is used in approaches that concur M2NL for Feature Location
[
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] and Software Product Lines synthesis [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] purposes. Through this technique,
the NL texts that represent each element of a model are extracted and then
concatenated into a single string, used as a NL representation of the model. The
NL representations generated through this technique vary in understandability,
being commonly closer to a collection of words or expressions than to descriptions
of functionality understandable by humans.
        </p>
        <p>For the TCML models from our industrial partner, we use this technique
by extracting the text from all the model elements. As an example, for the
model fragment depicted in the top left part of Fig. 2, this technique would yield
the string ’Converter 2 Circuit Breaker HVAC’. Fig. 2 is, for understandability
purposes and space reasons, a simplification of a real model. In a real model,
model elements contain more properties which in turn yield more text in its NL
representation.
2.2</p>
        <p>NLP Techniques</p>
        <p>Non-Processed Requirement
The PLC will inhibit the connection with the panto
whenever the lowering button in the active cabin is
pushed, as long as the panto is in closed state and more
than five seconds have passed after the closing of the
circuit breaker, being the doors off
1) Syntactical Analysis</p>
        <p>POS Tagged Tokens
Nouns: PLC, connection, button, state, seconds, doors
Verbs: inhibit, pushed, lower, push, close, pass, be.
…</p>
        <p>2) Root Reduction</p>
        <p>Root-Reduced Tokens
Nouns: PLC, connection, button, state, second, door
Verbs: inhibit, push, lower, push, close, pass, be.
…
3) Human
In The Loop
Domain Terms</p>
        <p>Extraction
Software
Engineer
Stopwords
Removal
Filtering
Processed</p>
        <p>Requirement
PLC, circuit breaker,
door, state</p>
        <p>Through this work, we include either Simple or Advanced NLP along with
M2NL. Simple NLP uses the techniques in 2.2.4, since we consider their
combination to be the most basic unit of NLP. Advanced NLP includes the techniques
that conform Simple NLP, plus those described in 2.2.1, 2.2.2, and 2.2.3.
2.2.1</p>
        <p>
          Syntactical Analysis
Syntactical Analysis (SA) techniques determine the grammatical function of
words in sentences (e.g.: nouns, verbs, etc.). These techniques, often referred to
as Parts-Of-Speech (POS) Tagging, allow engineers to implement grammatical
filters, usually in search for nouns, which often carry relevant information on
features and actions [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]. Words like verbs or adjectives are often disregarded. In
Fig. 3, it is possible to appreciate the SA process, with the POS Tagged Tokens
as outcome of syntactically analyzing a real-world NL requirement. Nouns and
verbs are depicted while, for space reasons, the rest of the words are omitted.
2.2.2
Through the usage of semantic techniques such as Lemmatizing, words can be
reduced to their semantic roots (lemmas). Through lemmas, it is possible to unify
NL, avoiding verb tenses, plurals, and strange word forms that interfere with
TLR. Prior to carrying out Root Reduction (RR) techniques, it is imperative
to use SA techniques, since RR techniques are based on word dictionaries built
upon the grammatical role of words. Semantic techniques provide more advanced
word filters in NL requirements. In Fig. 3, it is possible to appreciate the RR
process, with the Root-Reduced Tokens as outcome of the semantic analysis of
the POS Tags derived from the NL requirement. The lemmas of nouns and verbs
are depicted while, for space reasons, the rest of the words are omitted.
2.2.3
        </p>
        <p>Human-In-The-Loop
The inclusion of domain experts in TLR processes is a widely discussed topic
within SE. It is often beneficial to have domain knowledge embedded in TLR,
particularly for software reuse and variability. Some of the human interaction
techniques used in TLR are Domain Terms Extraction and Stopwords Removal.
In order to carry out these techniques, engineers provide two separate lists of
terms: one list of both single-word and multiple-word terms that belong to the
domain and must be kept for analysis, and a list of irrelevant words that have no
analysis value. Both kinds of terms can be automatically filtered in or out of the
final query. In Fig. 3, it is possible to appreciate the Human-In-The-Loop process,
where a software engineer provides both lists of terms, which are consequently
introduced into the final query, or filtered out of it.
2.2.4</p>
        <p>Other Filters
The most basic NLP technique covered in this work is the combination of
tokenizing and lowercasing a sentence, and afterwards removing duplicate words
from it. This combination is often regarded as the most basic NLP technique for
several LSI examples.
2.3</p>
        <p>Traceability Link Recovery through Latent Semantic Indexing
Latent Semantic Indexing (LSI) is an automatic mathematical/statistical
technique that analyzes relationships between queries and documents (bodies of
text). It constructs vector representations of both a user query and a corpus
of text documents by encoding them as a term-by-document co-occurrence
matrix, and analyzes the relationships between those vectors to get a similarity
ranking between the query and the documents. Fig. 4 shows an example
termby-document co-occurrence matrix, with values associated to our case study, the
vectors, and the resulting ranking. In the following paragraphs, an overview of
the elements of the matrix is provided.</p>
        <p>Terms: Each row in the matrix (term) stands for each of the words that
compose the processed requirement and NL representations of model fragments.
In Fig. 4, it is possible to appreciate a set of representative words in the
domain such as ’pantograph’ or ’doors’ as the terms of each row.
Documents: Each column in the matrix stands for the processed NL
representation of each model fragment in our case study. In Fig. 4, it is possible
to appreciate the identifiers of the model fragments in the columns such as
’M_KAO001’ or ’M_CIN072’, which stand for the processed NL
representations of those particular model fragments.</p>
        <p>Query: The final column stands for the query. In our approach, the query is
one processed requirement in our case study. In Fig. 4, the identifier of the
requirement in the query column (’R_BUD010’) represents its processed
text.</p>
        <p>Data: Each cell in the matrix contains the frequency with which the term of its
row appears in the document denoted by its column. For instance, in Fig.
4, the term ’pantograph’ appears twice in the ’M_KAO001’ processed NL
representation and once in the ’R_BUD010’ processed requirement.</p>
        <p>
          We obtain vector representations of the documents and the query by
normalizing and decomposing the term-by-document co-occurrence matrix using a
matrix factorization technique called Singular Value Decomposition (SVD) [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ].
SVD is a form of factor analysis, or more properly the mathematical
generalization of which factor analysis is a special case. In SVD, a rectangular matrix
is decomposed into the product of three other matrices. One component matrix
describes the original row entities as vectors of derived orthogonal factor values,
another describes the original column entities in the same way, and the third is a
diagonal matrix containing scaling values such that when the three components
are matrix-multiplied, the original matrix is reconstructed.
        </p>
        <p>In Fig. 4, a three-dimensional graph of the SVD is provided. On the graph,
it is possible to appreciate the vectorial representations of some of the matrix
columns. For space reasons, only a small set of the columns is represented. To
measure the similarity degree between vectors, our approach calculates the cosine
between the query vector and the documents vectors. Cosine values closer to
one denote a higher degree of similarity, and cosine values closer to minus one
denote a lower degree of similarity. Similarity increases as vectors point in the
same general direction (as more terms are shared between documents ). Through
this measurement, our approach orders the model fragments according to their
similarity degree to the requirement.</p>
        <p>The relevancy ranking (which can be seen in Fig. 4) is produced according
to the calculated similarity degrees. In this example, LSI retrieves ’M_BUD010’
and ’M_KAO001’ in the first and second position of the relevancy ranking due
to query-documents cosines being ’0.9243’ and ’0.8454’, implying a high
similarity degree between the fragments and the requirement. On the opposite, the
’M_CIN072’ is returned in a latter position of the ranking due to its
querydocument cosine being ’-0.7836’, implying a lower similarity degree.
s PANTO
d
ro CIRCUIT
yw BREAKER
e
K DOOR
…</p>
        <p>MF1
0
0
3
…</p>
        <p>Documents</p>
        <p>MF2
2
2
0
…
…
…
…
…
…</p>
        <p>MFN
2
5
1
…
1
2
1
…</p>
        <p>MFN
MF2</p>
        <p>Q</p>
        <p>MF1</p>
        <p>Fig. 4. Traceability Link Recovery through Latent Semantic Indexing Example
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Evaluation</title>
      <p>Through the following paragraphs, we present the research questions that our
work tackles, describe our real-world case study and the oracle used for our
experiment, detail the design of our experiment, and present the obtained results.
3.1</p>
      <p>Research Questions
From the described problem, two research questions arise:
RQ1: How does the usage of different M2NL techniques affect the effectiveness
and efficiency of TLR over requirements and models?
RQ2: How does the inclusion of either Simple or Advanced NLP techniques
along with M2NL affect the effectiveness and efficiency of TLR over
requirements and models?
3.2</p>
      <p>Case study
For our experiment, CAF provided us with requirements and models of five
railway solutions from Auckland, Bucharest, Cincinnati, Houston, and Kaohsiung.
The trains are specified by about 100 requirements each, with an average of 50
words. Regarding models, trains are specified through an average 8250 model
elements. CAF also provided lists of domain terms and stopwords. The domain
terms list comprehends around 300 domain terms, and the stopwords list
comprehends around 60 words. Both lists were created by a CAF domain expert
associated to the provided products.
3.3</p>
      <p>
        Oracle
In order to evaluate the results of our experiment, CAF provided us with their
existing documentation on requirements-models traceability. Each requirement
can be mapped to a single model fragment. A model fragment is a model
elements subset, specified with the model fragment formalization capacities of the
Common Variability Language (CVL) [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. We use the existing traceability as
the oracle for evaluating the impact of each of the M2LN-NLP configurations on
LSI. To achieve this, we analyze the results of the rankings generated by LSI,
checking the position of the ranking in which the oracle (correct model fragment
for the input requirement) appears.
3.4
      </p>
      <p>Design of the experiment
The first step is to select a M2NL-NLP configuration. With the chosen
configuration, we extract the NL representation of the model fragments in our case study.
Then, we perform the necessary NLP over the text of both all the requirements
and all the NL representations of model fragments in our case study.</p>
      <p>From the strings achieved through the first step, all the individual words
are extracted to form a list of words. The list of words (terms ), the processed
representations of model fragments (documents ), and one processed requirement
(query ), are used as input for LSI. LSI returns a ranking of model fragments,
ordered according to their similarity to the requirement. LSI is performed several
times, taking each requirement from our case study as query, in order to extract
the model fragment rankings for all the available requirements. Through these
rankings and the oracle, we can determine the ranking positions in which the
correct model fragments appear for each requirement. Through the results, we
are able to evaluate the impact of the chosen M2NL-NLP configuration over LSI.</p>
      <p>The described steps (choosing a configuration, performing NLP of
requirements and model fragments, LSI, impact analysis) are carried out four times,
until the four configurations are chosen and analyzed.
3.5</p>
      <p>Results
For each M2NL-NLP configuration, we measured the average, best, and worst
result in the rankings generated by LSI. We also measured the time that the
execution of M2NL-NLP took for the different configurations on average after
25 executions. We do not highlight the LSI execution time averages, since it is
practically identical for all the configurations (around 70 seconds). Table 1 shows
the results achieved by LSI when performed over the four configurations, with
the best results highlighted in light gray.</p>
      <p>Configuration 4 (Rule-Based M2NL + Advanced NLP) leads LSI to the best
results, retrieving an average ranking position of #1 1.12, a ranking position
#1 as its best result, and a ranking position #5 as its worst. Configuration 1
(Element-Based M2NL + Simple NLP), on the opposite, is the one that leads
LSI to the worst results. Its best result is position #1, but its worst peaks at
position #34, presenting an average of #2 5.54. Configurations 2 (Element-Based
M2NL + Advanced NLP) and 3 (Rule-Based M2NL + Simple NLP) present
intermediate values, being Configuration 3 slightly better than Configuration 2.</p>
    </sec>
    <sec id="sec-4">
      <title>Statistical analysis</title>
      <p>To properly compare the different configurations, the data resulting from the
empirical analysis was analyzed using statistical methods.
A statistical test must be run to assess whether there is enough empirical
evidence to claim that there is a difference between two configurations (e.g., A is
better than B). To achieve this, two hypotheses are defined: the null hypothesis
H0, and the alternative hypothesis H1. The null hypothesis H0 is typically
defined to state that there is no difference among the configurations, whereas the
alternative hypothesis H1 states that the configurations differ. In such a case, a
statistical test aims to verify whether the null hypothesis H0 should be rejected.</p>
      <p>
        The statistical tests provide a probability value, p value. The p value
obtains values between 0 and 1. The lower the p value of a test, the more likely
that the null hypothesis is false. It is accepted by the research community that a
p value under 0.05 is statistically significant [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], and so the hypothesis H0 can
be considered false. The carried test depends on the properties of the data. Since
our data does not follow a normal distribution in general, our analysis requires
the use of non-parametric techniques. There are several tests for analyzing this
kind of data; however, the Quade test is the most powerful when working with
real data [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. In addition, according to Conover [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], the Quade test is the one
that has shown the best results for a low number of configurations.
      </p>
      <p>The p V alue of this test is 4:208x10 6 and the statistic of this test is
9.659. Since the p V alue is smaller than 0.05, we reject the null hypothesis.
Consequently, we can state that there exist differences between among the four
configurations for the performance indicator of the position in the ranking.</p>
      <p>However, with the Quade test, we cannot answer the following question:
Which of the configurations gives the best performance? In this case, the
performance of each configuration should be individually compared against all other
alternatives. In order to do this, we perform an additional post hoc analysis. This
kind of analysis performs a pair-wise comparison among the results of each
configuration, determining whether statistically significant differences exist among
the results of a specific pair of configurations.</p>
      <p>
        The second column of Table 2 shows the p V alues of Holm’s post hoc
analysis for the performance indicator and the specific pair of configurations
(e.g., Configuration 1 and Configuration 2). The p V alues shown in this table
for two comparisons (the Configuration 1 vs Configuration 2 and Configuration
3 vs Configuration 4) are greater than the corresponding significance threshold
value (0.05), whereas the p V alues for the other comparisons are smaller than
0.05. Hence, we can determine that the differences in performance between the
Configuration 1 vs Configuration 2 and the Configuration 3 vs Configuration
4 are not significant, but the differences in performance are significant in the
other comparisons (e.g., the comparison shows significant differences between
the Configuration 2 vs Configuration 4).
Statistically significant differences can be obtained even if they are so small
as to be of no practical value [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Therefore, it is important to assess if a
configuration is statistically better than another and to assess the magnitude
of the improvement. Effect size measures are taken in account to analyze this
phenomenon.
      </p>
      <p>
        For a non-parametric effect size measure, we use Vargha and Delaney’s A^12
[
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. A^12 measures the probability that running one configuration yields higher
values than running another configuration. If the two configurations are
equivalent, then A^12 will be 0:5.
      </p>
      <p>For example, A^12 = 0:7 means that we would obtain better results in 70%
of the runs with the first of the pair of configurations that have been compared,
and A^12 = 0:3 means that we would obtain better results in 70% of the runs
with the second of the pair of configurations that have been compared. Thus,
we have an A^12 value for every pair of configurations.</p>
      <p>The third column of Table 2 shows the values of the effect size statistics
between every pair of configurations.</p>
      <p>The A^12 values show a slight superiority (even though these values are closer
to the equivalent value of 0.5) of the Configuration 2 in the comparison with the
Configuration 1, and the Configuration 3 in the comparison with the
Configuration 4. The A^12 values show the largest differences, with values around 0.39
when Configuration 1 and Configuration 2 are compared with Configuration 3
or Configuration 4.</p>
      <p>Overall, these results confirm that Configuration 3 and Configuration 4
outperform Configuration 1 and Configuration 2.</p>
    </sec>
    <sec id="sec-5">
      <title>Threats to Validity</title>
      <p>
        In this section, we use the classification of threats of validity of [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] to
acknowledge the limitations of our approach:
1 Construct Validity: This aspect of validity reflects the extent to which the
operational measures that are studied represent what the researchers have
in mind. In order to minimize this risk, we study the positions of the oracles
in the rankings, an objective and widely accepted measure, used before by
other researchers in the community [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
2 Internal Validity: This aspect of validity is of concern when causal relations
are examined. There is a risk that the factor being investigated may be
affected by other neglected factors. The number of requirements and models
presented in this work may look small, but they implement a wide scope of
different railway equipment.
3 External Validity: This aspect of validity is concerned with to what extent
it is possible to generalize the finding, and to what extent the findings are
of relevance for other cases. Both requirements and conceptual models are
frequently leveraged to specify all kinds of different software. LSI is a widely
accepted and utilized technique which has proven to obtain good results in
multiple domains. Therefore, our experiment does not rely on the particular
conditions of our domain. Nonetheless, the experiment and its results should
be replicated in other domains before assuring their generalization.
4 Reliability: This aspect is concerned with to what extent the data and
the analysis are dependent on the specific researchers. The requirements
and models of the trains used through our experiment were provided by our
industrial partner engineers, as well as the domain terms and stopwords lists,
which were crafted by domain experts not involved in this research.
6
      </p>
    </sec>
    <sec id="sec-6">
      <title>Related Work</title>
      <p>
        In [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], NLP techniques are used to assess equivalence between requirements. The
authors conclude that performance of NLP in their field is determined by the
properties of the provided datasets. Properties are then considered as a factor to
adjust the NLP process and performance over an industrial case study. Through
our work, rather than adjusting the NLP process to study equivalence between
requirements, we tackle the impact of different M2NL-NLP configurations on
LSI, exposing the way they behave and improve (or worsen) the IR process.
      </p>
      <p>
        The work presented in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] uses NLP to study how changes in requirements
impact other requirements. The authors analyze TLR between requirements, and
use NLP to determine the propagation of changes. Our work does not analyze
changes in requirements or how they affect the system, but rather on what is
the most appropriate way of applying M2NL-NLP to requirements-models TLR.
Moreover, the authors of [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] do not consider different NLP configurations, but
rather guide the process through requirements properties.
      </p>
      <p>
        Finally, [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] takes in consideration the possible LSI configurations for TLR
between requirements and test cases. The authors state that LSI configurations
depend on the available datasets, and also look forward to automatically
determining appropriate LSI configurations for any given dataset. We do not tackle
the impact of using different LSI configurations for TLR, but rather analyze how
different M2NL-NLP configurations affect the results of TLR.
7
      </p>
    </sec>
    <sec id="sec-7">
      <title>Concluding Remarks</title>
      <p>
        Through this paper, we analyze how different M2NL-NLP techniques impact
the outcome of requirements-models TLR. To that extent, we process the
requirements and models that specify a real-world industrial case study through
a series of combinations of M2NL-NLP techniques, and then perform Latent
Semantic Indexing (LSI) over the processed specifications. We study the
rankings produced by LSI with our oracle to evaluate the impact of the M2NL-NLP
techniques over TLR. Results show that:
1 Rule-Based M2NL improves the results of Element-Based M2NL in a
statistically significant manner, but it requires an additional effort from software
engineers when Domain Specific Languages (DSLs) are used. The rules from
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] are specific for UML models, and work with the TCML DSL of our
industrial partner due to it being derived from UML, but engineers that use a
non-UML DSL need to either adapt the existing rules or create DSL-specific
rules. With the obtained results, engineers have more information to choose
between investing their efforts in Rule-Based M2NL, or (in case it yields
sufficiently reliable TLR results) using Element-Based M2NL.
2 The usage of Advanced NLP along with M2NL always improves its results,
although in a non-statistically significant manner. We noticed that the terms
used in the conceptual models are close to those of requirements, so Advanced
NLP does not have a huge impact over the results. Nonetheless, the
application of the Advanced NLP techniques does not require a huge effort, and
therefore its application can be deemed worthy when maximizing the quality
of TLR results is a key priority.
      </p>
    </sec>
    <sec id="sec-8">
      <title>Acknowledgements</title>
      <p>This work has been partially supported by the Ministry of Economy and
Competitiveness (MINECO) through the Spanish National R+D+i Plan and ERDF
funds under the project Model-Driven Variability Extraction for Software
Product Line Adoption (TIN2015-64397-R). We also thank ITEA3 15010 REVaMP2
Project.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Meziane</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Athanasakis</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ananiadou</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Generating Natural Language Specifications from UML Class Diagrams</article-title>
          .
          <source>Requirements Engineering</source>
          <volume>13</volume>
          (
          <issue>1</issue>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Font</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Arcega</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haugen</surname>
          </string-name>
          , Ø.,
          <string-name>
            <surname>Cetina</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Feature Location in Models through a Genetic Algorithm driven by Information Retrieval Techniques</article-title>
          .
          <source>In: Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems</source>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Hulth</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Improved Automatic Keyword Extraction given more Linguistic Knowledge</article-title>
          .
          <source>In: Proceedings of the 2003 Conference on Empirical Methods in Natural Language Processing</source>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Plisson</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lavrac</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mladenic</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , et al.:
          <article-title>A Rule Based Approach to Word Lemmatization</article-title>
          .
          <source>In: Proceedings of the 7th International Multi-Conference Information Society</source>
          . Volume
          <volume>1</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Landauer</surname>
            ,
            <given-names>T.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Foltz</surname>
            ,
            <given-names>P.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Laham</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>An Introduction to Latent Semantic Analysis</article-title>
          .
          <source>Discourse processes 25(2-3)</source>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Poshyvanyk</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gueheneuc</surname>
            ,
            <given-names>Y.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marcus</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Antoniol</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rajlich</surname>
          </string-name>
          , V.:
          <article-title>Feature Location Using Probabilistic Ranking of Methods Based on Execution Scenarios and Information Retrieval</article-title>
          .
          <source>IEEE Transactions on Software Engineering</source>
          <volume>33</volume>
          (
          <issue>6</issue>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Haugen</surname>
          </string-name>
          , Ø.,
          <string-name>
            <surname>Møller-Pedersen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Oldevik</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Olsen</surname>
            ,
            <given-names>G.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Svendsen</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Adding Standardized Variability to Domain Specific Languages</article-title>
          .
          <source>In: 12th International Software Product Line Conference</source>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Zhang</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haugen</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moller-Pedersen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Model Comparison to Synthesize a Model-Driven Software Product Line</article-title>
          .
          <source>In: 15th International Software Product Line Conference</source>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Capobianco</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Lucia</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Oliveto</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Panichella</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Panichella</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>On the Role of the Nouns in IR-Based Traceability Recovery</article-title>
          .
          <source>In: IEEE 17th International Conference on Program Comprehension</source>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Arcuri</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Briand</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>A Hitchhiker's Guide to Statistical Tests for Assessing Randomized Algorithms in Software Engineering</article-title>
          . Softw. Test. Verif. Reliab.
          <volume>24</volume>
          (
          <issue>3</issue>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>García</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fernández</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Luengo</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Herrera</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Advanced Nonparametric Tests for Multiple Comparisons in the Design of Experiments in Computational Intelligence and Data Mining: Experimental Analysis of Power</article-title>
          .
          <source>Inf. Sci</source>
          .
          <volume>180</volume>
          (
          <issue>10</issue>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Conover</surname>
          </string-name>
          , W.J.:
          <source>Practical Nonparametric Statistics, 3rd Edition</source>
          . Wiley (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Vargha</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Delaney</surname>
          </string-name>
          , H.D.:
          <article-title>A Critique and Improvement of the CL Common Language Effect Size Statistics of McGraw and Wong</article-title>
          .
          <source>Journal of Educational and Behavioral Statistics</source>
          <volume>25</volume>
          (
          <issue>2</issue>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Wohlin</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Runeson</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Höst</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ohlsson</surname>
            ,
            <given-names>M.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Regnell</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wesslén</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          : Experimentation in Software Engineering. Springer Science &amp; Business
          <string-name>
            <surname>Media</surname>
          </string-name>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Haiduc</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bavota</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marcus</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Oliveto</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Lucia</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Menzies</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Automatic Query Reformulations for Text Retrieval in Software Rngineering</article-title>
          . In: 35th International Conference on Software Engineering
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Falessi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cantone</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Canfora</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>Empirical Principles and an Industrial Case Study in Retrieving Equivalent Requirements via Natural Language Processing Techniques</article-title>
          .
          <source>IEEE Transactions on Software Engineering</source>
          <volume>39</volume>
          (
          <issue>1</issue>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Arora</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sabetzadeh</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Goknil</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Briand</surname>
            ,
            <given-names>L.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zimmer</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Change Impact Analysis for Natural Language Requirements: An NLP Approach</article-title>
          . In: 23rd International Requirements Engineering Conference
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Eder</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Femmer</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hauptmann</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Junker</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Configuring Latent Semantic Indexing for Requirements Tracing</article-title>
          . In: Proceedings of the Second International Workshop on Requirements Engineering and Testing
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>