<!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>
      <journal-title-group>
        <journal-title>Barcelona, Catalunya, Spain, April</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Taxonomic Trace Links Recommender: Context Aware Hierarchical Classification</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Waleed Abdeen</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Blekinge Institute of Technology</institution>
          ,
          <addr-line>Karlskrona</addr-line>
          ,
          <country country="SE">Sweden</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2023</year>
      </pub-date>
      <volume>17</volume>
      <issue>2023</issue>
      <fpage>0000</fpage>
      <lpage>0001</lpage>
      <abstract>
        <p>In the taxonomic trace links concept, the source and target artifacts are connected through knowledge organization structure (e.g., taxonomy). We introduce in this paper a recommender system that recommends labels to requirements artifacts from domain-specific taxonomy to establish taxonomic trace links. The tool exploits the hierarchical nature of taxonomies and uses requirements text and context information as input to the recommender.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Requirements traceability</kwd>
        <kwd>Taxonomy</kwd>
        <kwd>Hierarchical classification</kwd>
        <kwd>Recommender system</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Requirements traceability is the capability of tracing the requirement life in a backward and
forward manner [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The adoption of requirements traceability has proven to lead to lesser
defects in the produced software [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Traditional trace links connect the source and target
artifacts using a direct link. An alternative approach is the taxonomic trace links, in which
the source and target artifacts are traced through a knowledge organization structure (e.g.,
taxonomy or ontology) [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. The taxonomic trace link approach has three main advantages over
traditional techniques: tracing artifacts with diferent abstractions, better structure of artifacts
used in the development process, and early establishment of trace links.
      </p>
      <p>
        Unterkalmsteiner [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] introduced the concept of taxonomic trace links in a trace links
recommender system. The initial evaluation [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] showed that the tool had low confidence in the
recommended labels. In this paper, we present a tool implementation of the taxonomic trace
links with adaptation by using hierarchical text classification and adding the context information
of a requirement to the tool inputs.
Title: Road superstructure, Dimensioning and design
...
...
19 Gravel Superstructure
19.2 Superstructure thickness gravel road
R1: Superstructure thickness shall be selected  31B
tToabmleee1t9t-h2ewrehqileuimreemeetinntgstohfeTdaibmlee1n9si-o1nasnodf   31BJ
the gravel wear layer and support layer shown  31BL
in Figure 19-1.
      </p>
      <p>R2: .....</p>
      <p>R3: .....</p>
      <p>Legend: RX</p>
      <p>Requirement
label</p>
      <p>SelectedNodes
node</p>
    </sec>
    <sec id="sec-2">
      <title>2. Background</title>
      <p>Building components
3: Superstructures and 
---ancillary structures
31: Superstructures
31B: Superstructures 
for roads and flat areas
31BL: Road superstructure,  31BJ: Road superstructure 
support layer wear layer/pavement
31B
Requirements Specifications</p>
      <p>SB11 Taxonomy</p>
      <p>Design Model
We explain in this section the taxonomic trace link and the hierarchical classification concepts,
which are important for the reader to understand the tool process.</p>
      <p>
        Taxonomic trace links concept was introduced earlier by Unterkalmsteiner [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. The main
idea is to label the traced source and target artifacts with nodes from a domain-specific taxonomy
in order to trace these artifacts. In the same study, the author presented a prototype that
materializes the taxonomic trace links concept. The prototype finds relevant labels for a
requirement from a taxonomy. The early evaluation of the tool showed that the approach of
taxonomic trace links is attractive for practitioners. However, better recommendations are
required [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>Figure 1 illustrates an example of taxonomic trace links in the context of the construction
domain. Assuming that we want to create trace links from the requirements specifications to
the design model using SB11 taxonomy, which is used to classify objects in the construction
domain and contains 2074 nodes. The yellow boxes (31B, 31BJ, 31BL) are labels that we set on
the requirement R1. These labels are nodes from the taxonomy, highlighted in green. Similarly,
an object of the design model is labeled with 31B. In conclusion, a trace link is created between
the requirement R1 and the highlighted object in the design model because both are labeled
with the same node (31B).</p>
      <p>
        Hierarchical text classification is the use of hierarchical classification space to classify a
document using one or more classes [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. The topic was studied by many researchers and showed
to improve the performance of the classification [
        <xref ref-type="bibr" rid="ref10 ref5 ref6 ref7 ref8 ref9">5, 6, 7, 8, 9, 10</xref>
        ]. Song et al. [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] have proposed
an approach of dateless hierarchical text classification, where the training of the model does
not require any labeled data. They classify newsgroups messages and newswire stories using a
taxonomy with a depth level of two. Their problem is similar to ours, where they use taxonomy
to classify text with no training data. Furthermore, the evaluation of the algorithm showed
that its performance is comparable with those of the supervised learning algorithms [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Thus,
we implement the algorithm presented by the authors in our tool, with some adaptations, to
classify requirements text. We explain the adaptations in Section 4.
      </p>
      <p>
        The novelty of our tool over the previous implementation [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] lies in:
1. The use of hierarchical text classification: we argue that using hierarchical text
classification in the taxonomic trace link implementation could yield better results. In the previous
studies of taxonomic trace links [
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ] a flat classifier was adopted where all nodes in the
taxonomy are treated as if they were on one level. On the contrary, we use a hierarchical
classifier that considers the hierarchy of the taxonomy.
2. The use of context information: when labeling requirements using a domain-specific
taxonomy, the participants used context information (document and section titles) to
choose the true label from the taxonomy [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], the previous classifier did not use this
information as input. Furthermore, the use of context information is proven to improve
the performance of text classification methods [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Tool Development Context</title>
      <p>This tool was developed as a part of the project D-CAT in collaboration with Trafikverket,
Swedish Transport Authority. In construction projects, a 3D presentation of the physical system
is first produced before building the actual system. It is important that the produced design
models adhere to the specified requirements, known as rules and regulations, as it is much
cheaper to redraw a design model than rebuild a bridge. The verification of these requirements
in the design models becomes tedious when traceability is missing between requirements and
design models. At the time of writing this paper, traceability was not practiced in Trafikverket
due to the lack of digitization.</p>
      <p>We aim in this tool to implement traceability that is usable in a similar context, where the
software or system must adhere to a list of requirements. During the tool development, we used
natural language requirements from the construction domain and the SB11 taxonomy. The tool
implementation makes it possible to replace the taxonomy with one from a diferent domain.</p>
    </sec>
    <sec id="sec-4">
      <title>4. The Taxonomic Trace Links Recommender System</title>
      <p>The source code of the tool and the required data are available online in the replication package 1.
The tool recommends  labels from a domain-specific taxonomy to requirements artifacts. We
present a screenshot of the tool’s user interface in Figure 2. The following steps need to be
followed when using the tool:
1. The user inputs the requirement text and any relevant context information, currently
the user can input the document title of the software requirements specification (SRS)
and section title(s) under which the requirement is listed. Then, the user clicks on
classify.
2. The tool processes the input from the user and identifies the most relevant labels based on
the text similarity between the requirement and the labels of the taxonomy (we explain
how the similarity is calculated later in this section).
3. The recommended labels are retrieved and shown, in a descending order based on the
similarity score, under the section recommender classification results . A
recommended label is displayed using the label code, label description, and a similarity score.A
recommended label could be either correct or incorrect.
4. The user makes the final decision by choosing the best recommendations as they see fit
from the list of results.</p>
      <p>Figure 3, depicts the internal recommender process, which consists of three main steps: 1)
taxonomy conceptualization, 2) requirement conceptualization, and 3) requirement classification.
Each main step consists of several sub-steps represented with yellow-filled rectangles.</p>
      <sec id="sec-4-1">
        <title>4.1. Taxonomy Conceptualization</title>
        <p>In this step, the domain-specific taxonomy nodes are preprocessed, by removing the stop-words
from each node description. Then, labels are aggregated to achieve a hierarchical classification
Admin
User</p>
        <p>Legend:</p>
        <p>Taxonomy Conceptualization</p>
        <p>Requirement Conceptualization
Artifact</p>
        <p>Step
sub step
Conceptualization</p>
        <p>Wikipedia
Index</p>
        <p>Conceptualized</p>
        <p>Taxonomy
Conceptualized
Requirement
Taxonomy</p>
        <p>Preprocessing</p>
        <p>Labels
Aggregation</p>
        <p>Requirement Classification
Requirement with
Context Information</p>
        <p>Input</p>
        <p>Aggregation
Preprocessing</p>
        <p>Conceptualization</p>
        <p>Similarity
Calculation</p>
        <p>Label
Selection</p>
        <p>Top 5 Labels</p>
        <p>
          Actor
using the top-down approach, the description of each node in the taxonomy is brought up to
the parent node. Consequently, a node description contains its own node description and the
description of all its child nodes. Finally, conceptualization is performed on the taxonomy. A
concept vector is created for every node using explicit semantic analysis (ESA) [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], which uses
indexed Wikipedia articles as an external knowledge base to find relevant concepts for a given
text by calculating TFIDF score for words. The output is conceptualized taxonomy nodes, each
presented using a vector of concepts.
        </p>
      </sec>
      <sec id="sec-4-2">
        <title>4.2. Requirements Conceptualization</title>
        <p>The user enters a requirement text and the relevant context information (document and section
titles). First, the tool preprocesses the data by removing stop words. Then the requirement text
is aggregated with the context information (input aggregation). Finally, a conceptualization
of the aggregated input is performed, similar to the conceptualization sub-step in taxonomy
conceptualization in Section 4.1. The output is a conceptualized requirement presented as a
vector of concepts.</p>
      </sec>
      <sec id="sec-4-3">
        <title>4.3. Requirements Classification</title>
        <p>
          The outputs of the two previous steps (conceptualized taxonomy and conceptualized
requirement) are taken as inputs to the requirement classification step. A similarity calculation is
performed between both inputs as follows:
 = ((), ())
(1)
where  is the ESA representation of a text,  is the aggregated requirement text, and () is
node  in the taxonomy. The similarity score is normalized in the range 0-1. Finally, in label
selection, we choose not to report the top labels at each level as done by Song et al. [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], but
rather we chose to select the top labels from all nodes. The reason behind this decision is that we
are interested in recommending the most relevant label at the deepest level, which represents
the most concrete label. The output of the tool is the top K recommended labels to classify the
requirement entered by the user. We refer the reader to Song et al. [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] paper for more details
about the algorithm used for classification.
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Planned Evaluation</title>
      <p>
        We plan to conduct lab experiments to evaluate the recommender system performance
(presented in this paper) and compare it with the recommender system that was developed by
Unterkalmsteiner [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. The planned experiments will be conducted by manipulating two
independent variables, namely the taxonomy and the classifier (hierarchical and flat). We chose
the taxonomy as an independent variable to understand: if and to what the use of diferent
taxonomy could afect the performance of the recommender system. The dependent variable
is the recommender performance and will be presented by the set of metrics, precision, recall,
and F1 score. A dataset of natural language requirements that are labeled with nodes from
domain-specific taxonomy is needed to measure the performance of the recommender. We are
currently working, with domain experts, on developing a ground truth of 129 requirements
sampled from the construction domain.
      </p>
      <p>After conducting the lab experiments and fine-tuning the tool, the next step is to pilot the
tool in a real project with practitioners to evaluate it in natural settings.</p>
    </sec>
    <sec id="sec-6">
      <title>6. Conclusion</title>
      <p>We have presented the recommender system, which uses a domain-specific taxonomy to
recommend labels to requirements artifacts. This classification aims to establish taxonomic trace
links between requirements artifacts and other software artifacts. This is the first version
of the tool, and we are working on improving the tool in an iterative manner using a design
science framework. We have developed and demonstrated the tool in the context of construction
projects. The implementation of the tool makes it possible to use in software projects as 1) the
recommender classifies natural language requirements, and 2) the taxonomy can be replaced
with one from a diferent domain during the setup of the tool. However, the tool needs to be
evaluated in controlled and natural settings in the context of software projects and adapted
based on the outcome of the evaluation.</p>
      <p>The planned future work is to 1) improve the tool in terms of calculating the similarity score
between a requirement artifact and the nodes from the domain-specific taxonomy, 2) integrate
the tool with existing requirements management tools, e.g., DOORS, 3) evaluate the performance
of the recommender system on a set of software requirements and further evaluate the retrieval
of trace links.</p>
    </sec>
    <sec id="sec-7">
      <title>Acknowledgement</title>
      <p>This research was funded by DCAT project. Thanks to Dr. Michael Unterkalmsteiner and Dr.
Krzysztof Wnuk for their support and feedback.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>O.</given-names>
            <surname>Gotel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Finkelstein</surname>
          </string-name>
          ,
          <article-title>An analysis of the requirements traceability problem</article-title>
          ,
          <source>in: Proceedings of IEEE International Conference on Requirements Engineering</source>
          ,
          <year>1994</year>
          , pp.
          <fpage>94</fpage>
          -
          <lpage>101</lpage>
          . doi:
          <volume>10</volume>
          .1109/ICRE.
          <year>1994</year>
          .
          <volume>292398</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>P.</given-names>
            <surname>Rempel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Mäder</surname>
          </string-name>
          ,
          <article-title>Preventing defects: The impact of requirements traceability completeness on software quality</article-title>
          ,
          <source>IEEE Transactions on Software Engineering</source>
          <volume>43</volume>
          (
          <year>2017</year>
          )
          <fpage>777</fpage>
          -
          <lpage>797</lpage>
          . doi:
          <volume>10</volume>
          .1109/TSE.
          <year>2016</year>
          .
          <volume>2622264</volume>
          , conference Name:
          <source>IEEE Transactions on Software Engineering.</source>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>M.</given-names>
            <surname>Unterkalmsteiner</surname>
          </string-name>
          , TT-RecS:
          <article-title>The taxonomic trace recommender system</article-title>
          ,
          <source>in: 2020 IEEE Seventh International Workshop on Artificial Intelligence for Requirements Engineering (AIRE)</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>18</fpage>
          -
          <lpage>21</lpage>
          . doi:
          <volume>10</volume>
          .1109/AIRE51212.
          <year>2020</year>
          .
          <volume>00009</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>M.</given-names>
            <surname>Unterkalmsteiner</surname>
          </string-name>
          ,
          <article-title>Early requirements traceability with domain-specific taxonomies - a pilot experiment</article-title>
          ,
          <source>in: 2020 IEEE 28th International Requirements Engineering Conference (RE)</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>322</fpage>
          -
          <lpage>327</lpage>
          . doi:
          <volume>10</volume>
          .1109/RE48521.
          <year>2020</year>
          .00042, ISSN:
          <fpage>2332</fpage>
          -
          <lpage>6441</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Sun</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.-P.</given-names>
            <surname>Lim</surname>
          </string-name>
          ,
          <article-title>Hierarchical text classification and evaluation</article-title>
          ,
          <source>in: Proceedings 2001 IEEE International Conference on Data Mining</source>
          ,
          <year>2001</year>
          , pp.
          <fpage>521</fpage>
          -
          <lpage>528</lpage>
          . doi:
          <volume>10</volume>
          .1109/ICDM.
          <year>2001</year>
          .
          <volume>989560</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>L.</given-names>
            <surname>Cai</surname>
          </string-name>
          , T. Hofmann,
          <article-title>Hierarchical document categorization with support vector machines</article-title>
          ,
          <source>in: Proceedings of the thirteenth ACM international conference on Information and knowledge management</source>
          ,
          <source>CIKM '04</source>
          ,
          <string-name>
            <surname>Association</surname>
          </string-name>
          for Computing Machinery,
          <year>2004</year>
          , pp.
          <fpage>78</fpage>
          -
          <lpage>87</lpage>
          . URL: https://doi.org/10.1145/1031171.1031186. doi:
          <volume>10</volume>
          .1145/1031171.1031186.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>S.</given-names>
            <surname>Gopal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Yang</surname>
          </string-name>
          ,
          <article-title>Recursive regularization for large-scale classification with hierarchical and graphical dependencies, in: Proceedings of the 19th ACM SIGKDD international conference on Knowledge discovery and data mining</article-title>
          ,
          <source>KDD '13</source>
          ,
          <string-name>
            <surname>Association</surname>
          </string-name>
          for Computing Machinery,
          <year>2013</year>
          , pp.
          <fpage>257</fpage>
          -
          <lpage>265</lpage>
          . URL: https://doi.org/10.1145/2487575.2487644. doi:
          <volume>10</volume>
          .1145/2487575.2487644.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>L.</given-names>
            <surname>Xiao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Zhou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Wu</surname>
          </string-name>
          ,
          <article-title>Hierarchical classification via orthogonal transfer</article-title>
          , in: L.
          <string-name>
            <surname>Getoor</surname>
          </string-name>
          , T. Schefer (Eds.),
          <source>Proceedings of the 28th International Conference on Machine Learning (ICML-11)</source>
          , ICML '11,
          <string-name>
            <surname>ACM</surname>
          </string-name>
          ,
          <year>2011</year>
          , pp.
          <fpage>801</fpage>
          -
          <lpage>808</lpage>
          . Event-place: Bellevue, Washington, USA.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Song</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Roth</surname>
          </string-name>
          ,
          <article-title>On dataless hierarchical text classification</article-title>
          ,
          <source>in: Proceedings of the AAAI Conference on Artificial Intelligence</source>
          , volume
          <volume>28</volume>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>H.</given-names>
            <surname>Peng</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>He</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Bao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Song</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Yang</surname>
          </string-name>
          ,
          <article-title>Large-scale hierarchical text classification with recursively regularized deep graph-CNN</article-title>
          ,
          <source>in: Proceedings of the 2018 World Wide Web Conference on World Wide Web - WWW '18</source>
          , ACM Press,
          <year>2018</year>
          , pp.
          <fpage>1063</fpage>
          -
          <lpage>1072</lpage>
          . URL: http://dl.acm.org/citation.cfm?doid=
          <volume>3178876</volume>
          .3186005. doi:
          <volume>10</volume>
          .1145/ 3178876.3186005.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Zhan</surname>
          </string-name>
          , W. Ma, Y. Jiang,
          <string-name>
            <surname>Text</surname>
            <given-names>FCG</given-names>
          </string-name>
          :
          <article-title>Fusing contextual information via graph learning for text classification</article-title>
          ,
          <source>Expert Systems with Applications</source>
          (
          <year>2023</year>
          )
          <article-title>119658</article-title>
          . URL: https://linkinghub.elsevier.com/retrieve/pii/S0957417423001598. doi:
          <volume>10</volume>
          .1016/j.eswa.
          <year>2023</year>
          .
          <volume>119658</volume>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>