<!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>Supporting Natural Language Queries across the Requirements Engineering Process</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Sugandha Lohar</string-name>
          <email>slohar@cs.depaul.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>School of Computing DePaul University</institution>
          ,
          <addr-line>Chicago, IL, 60604</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>[Context and Motivation:]Software project artifacts such as regulatory codes, requirements, design, code, and test cases facilitate many requirements-related engineering tasks including change impact analysis, safety assessment, and coverage analysis. Unfortunately, users often lack technical expertise in query languages such as SQL or XQuery and therefore have di culties constructing meaningful queries. The problem can be alleviated when users express their queries using natural language (NL). [Question/problem:] NL interfaces depend upon domain models that capture the concepts and terminology of the domain. While prior studies have explored the types of queries, and associated terminology, used by software developers and maintainers, no such systematic study has been conducted in the requirements domain. We therefore do no fully understand the queries, terminology, and user interfaces needed to interactively support NL queries for requirements engineers. [Principal ideas/results:] This dissertation proposes a series of empirical studies to discover the information needs, and related queries, pertinent to requirements engineers. A domain model capturing concepts and terminology of the domain will be extracted from the sample queries. The work will also include a series of user-studies focusing on improving query representation techniques for displaying and communicating the interpreted NL Queries back to the requirements engineer. [Contribution:]Prior work has developed a prototype NL interface for supporting Software Engineering queries but has not studied its use in practice. The proposed solution will focus on NL Queries in the requirements domain, delivering a domain model to enhance understanding of requirements-related queries, and developing and evaluating query representations which support requirements engineers in the tasks they perform.</p>
      </abstract>
      <kwd-group>
        <kwd>Software Project Queries</kwd>
        <kwd>Natural Language Processing</kwd>
        <kwd>Human Computer Interaction</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Software projects produce a huge amount of data artifacts throughout their
development process. This data can be leveraged to analyze and improve the
software systems by supporting activities such as requirements engineering,
regression analysis, predictive analysis, coverage analysis, impact analysis and so on [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
However, retrieving this data can be challenging as it is often stored in both
structured and unstructured formats and geographically distributed.
Furthermore, the queries for extracting this data are often extremely complex, requiring
multiple joins and negations across varied artifact types. Writing non-trivial
queries in structured languages, can be challenging even for experts; thereby,
aggravating the data accessibility problem [
        <xref ref-type="bibr" rid="ref11 ref9">9, 11</xref>
        ].
      </p>
      <p>
        A Natural Language Interface(NLI) addresses this problem by allowing users
to express queries in their own words; however, general purpose NL interfaces
have limited information of a particular domain and as a result, they fail to
fully understand many complex domain-speci c queries [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Customizing an
interface for a particular domain requires extensive knowledge of the terminology
and concepts of the domain. The goal of this work is to deliver a NLI solution
for supporting requirements engineering queries. To this end, we will identify
the information needs of business analysts and requirements engineers through
a series of interviews, construct an appropriate NL domain model, evaluate and
customize our current NLI tool, and evaluate the use of the NLI for
supporting queries related to Requirements Engineering tasks. The proposed work will
address the following research questions:
{ RQ1 : What kinds of queries are useful for requirements engineers and
business analysts?
{ RQ2 : In what ways does the Natural Language domain model for general
Software Engineering need to be modi ed to accommodate Requirements
Engineering queries?
{ Controlled natural language queries must be displayed to the user to ensure
that the queries have been correctly interpreted. We therefore need to learn,
RQ3 : What kinds of interactive displays provide e ective and su cient
support for Requirements Engineers as they integrate queries into common
requirements-related activities?
      </p>
      <p>The remainder of this paper is laid out as follows. Section 2 provides the
literature review of NL queries in the software engineering domain and discusses
various query mechanisms. Section 3 gives an overview of the prior work on
domain model construction and query representations. Finally, Section 4 discusses
the proposed work and the nal contribution of this research study.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Literature Review</title>
      <p>This section summarizes the related work on natural language project queries
and the query representation techniques.</p>
      <p>
        Software Project Queries : Many researchers have identi ed the questions
asked by software practitioners, however limited studies have been done that
focus on the information needs of a requirements engineer. Fritz et al. interviewed
11 software developers and identi ed 78 questions spanning from multiple
artifacts such as source change, change sets, work items, etc., [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Begel et al.
provided a ranked list of 145 questions that a software engineer seeks from an
analyst. The questions were classi ed based on their roles and activities. Roles
included were developer, tester, program manager, customer and data analyst [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
To identify the queries pertaining to the area of software evolutions, Silito et
al. derived and categorized 44 questions that are to be answered by a
programmer in order to gain su cient comprehension to maintain source code [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].Other
researchers have identi ed questions related to software development activities
like software testing [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] or security analysis [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
      </p>
      <p>
        Query Representations : Many techniques have been developed to represent
queries in the software engineering domain. Mader et al. developed the Visual
Traceability Modeling Language(VTML) which, assumes an underlying Uni ed
Modeling Language(UML) class diagram representing the traceability strategies
of the project [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. The entities represent the traceable artifacts and the links
represent the permitted traces between these artifacts. This class diagram is
also generally called a Traceability Information Model (TIM). The queries are
presented as a subset of this model along with the associated lter conditions.
Maletic and Collard model queries for the artifacts stored in XML format by
hiding the low level details of XQuery [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Speaking of the more general purpose
query representations, Visual SQL by Jaakkola et al. represents SQL features
graphically, similar to the entity relationship diagram or a UML diagram [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
The PICASSO approach by Kim et al. is another general purpose database
visual query representation for relational database system System/U [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. However,
these representation techniques either do not support all the query features or
require some degree of technical expertise to read/write them.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Previous Work</title>
      <p>An overview of our preliminary work in creating an elementary level domain
model and query representation technique is presented here.
3.1</p>
      <p>Building a Domain Model
Natural language project queries were collected from practitioners through a
series of di erent user studies. The queries were then analyzed for extracting the
domain terms to construct a domain vocabulary.</p>
      <p>
        Query Collection : In our pilot study, we developed a web-collection tool
that displayed a set of Traceability Information Models(TIM) [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Each
participant was asked to issue ve useful queries against it. The second study included
project speci c scenarios, which were designed to be used as prompts. An
example scenario from the study is, \The safety o cer is worried that an
important requirement R136 is not correctly implemented. The developer tells him
# Natural Language Query Query Topic
1 How many high level hazards are associated with the Safety Analysis
security camera?
2 Did we develop components which are not backed up by Gold Plating
project goals?
3 Which programmers are more error prone in their code Personnel
according to the test results?
4 Is any of the open fault logs related to an exception case? Fault Analysis
5 Which use cases have more than 5 requirements Requirements-Coverage
associated to them? Analysis
that it is not only implemented but has also passed the acceptance test. The
security o cer runs a trace query to con rm this. What is his query?" Participants
were asked to address each of the scenarios by creating a NL query. Lastly, we
conducted a live study at the Conference on Requirements Engineering for
Software Quality where we gathered over 300 query samples from almost 50
different participants [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The study design was similar to the previous two studies.
The participants were also encouraged to create NL queries based on the project
they had been working or had previously worked on. Table 1 lists some sample
queries gathered from these three studies.
      </p>
      <p>Query Analysis : From the initial parsing of the query, we determined the
project speci c terms and the question terms. The project speci c terms included
words or phrases present within the data artifacts while the question terms holds
the query together and represents speci c query functions. For example, \List
all", \Show me" or \Provide me a list of" relate to selecting a particular set of
data. Similarly, the terms, \How many" or \Count the number of" are associated
with aggregation functions. Further, the queries were catalogued according to
their related software engineering tasks. The queries shown in Table 1 list sample
query topics they were classi ed into. They were also grouped based on their
semantic and syntactical charecteristics related to the query type and required
functions. Example query, \Which use cases have the highest risks?" depicts a
characteristic of listing some set of rows and to perform an aggregation function.
3.2</p>
      <p>
        User Evaluation of Query Representation Techniques
We conducted three empirical studies to assess the e cacy of di erent query
representation techniques [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. The participants recruited in all three studies had
a minimum of one year of IT experience and /or had su cient background in
software engineering. There were 39 participants recruited for the entire process.
      </p>
      <p>The initial study included a survey designed to comparatively evaluate
the four di erent query representations, which included SQL, VTML, Reverse
Snow ake Joins(SFJ) and the output of the query(QO) as shown in gure 1. SQL
is one of the most common structured textual query representation. VTML and
SFJ are visual query presentation techniques where VTML speci cally represents
software data queries and SFJ represents more general purpose database queries.
QO can help users to analyze a query by reviewing the data returned.
Environmental
Assumptions</p>
      <p>Id
Assumptions
1…*</p>
      <p>Requirements</p>
      <p>type = “Security”
Reverse Snowflake Join Query
Environmental Assumptions as EA</p>
      <p>Id</p>
      <p>Assumptions
Requirements as SRS</p>
      <p>Id
type = “Security”
tm_SRS_EA
envId
reqId</p>
      <p>SQL Query
SELECT DISTINCT environmental-assumptions.Id,
environmental-assumptions.Assumptions
FROM environmental-assumptions, requirements,
tm_SRS_EA
WHERE requirements.type= "Security" AND (tm_SRS_EA.
envID = environmental-assumptions.Id AND
tm_SRS_EA.reqId = requirements.Id)
Sample Results
Id
EA1
EA6</p>
      <p>Assumptions
All temperatures shall be recorded in degrees
Fahrenheit.</p>
      <p>All changes in temperature shall be managed at
increments of one degree Fahrenheit.</p>
      <p>The multiple choice survey consisted of sixteen queries, four of each kind. For
each of them, participants were asked to select the NL query which they believe
best matched the given representation of the multiple options provided. The
result analysis showed that the VTML representation allowed users to interpret
a query more accurately in less time as compared to the other techniques.</p>
      <p>We were then interested to know, whether users integrate knowledge from
di erent query representations in order to comprehend the meaning of the query.
Another study was designed that included an eye-tracker with a usability
software which recorded the participants eye-gaze information from the display
screen. The study included nine NL queries. Each of these queries were
deliberately transformed incorrectly and presented in VTML, SQL and QO. All three
representations were displayed on a single screen along with the NL query to
be interpreted. The common transformation errors included mapping onto
incorrect artifacts or their associated properties, logical errors etc. An example
query from the study, \List any test cases which have failed in the past week"
was represented as \List any test cases which have failed in the past month".
The participants were asked to determine whether the NL query matched the
given representation and if not then to explain how it di ered from the actual
query. We asked them to use think-out-loud protocol to answer these questions.</p>
      <p>From the result analysis, we observed that even though most users favored
a speci c representation technique the majority of them leveraged information
from multiple sources to analyze the query. Secondly, the users often spent too
much time on super uous details thereby, increasing the total query
interpretation time. To address this, we designed another user study which simpli ed
the original query displays by hiding unnecessary details and JOIN paths. The
results showed that the time to identify errors in reduced displays was
significantly decreased in comparison to the original displays.</p>
      <p>Results from this work have been integrated into our TiQi tool (see
TiqiAnalytics.com) and will be used to support the proposed work.</p>
    </sec>
    <sec id="sec-4">
      <title>Proposed Work</title>
      <p>Previously, we created a domain model that covers broader but more general
purpose software domain queries. To customize the domain model supporting
requirements related queries, we propose the following:
{ Identifying Requirements Engineer's Tasks and Questions: We will
interview requirements engineers and business analysts to understand the
kind of queries they are interested in posing. For this, we plan to use mailing
lists such as the RE mailing list, and our network of contacts with
professional requirements engineers to recruit at least 10-20 participants. Each
participant will be asked to identify requirements-related tasks that they
perform, the data they need to support those tasks, and relevant NL queries.
{ Constructing a Requirements-Related Domain Model: We will
create a comprehensive knowledge base to support RE related queries. The
knowledge base will initially be populated using our existing existing data
mining techniques to mine domain-speci c terminology from the text of
online requirements textbooks, white-papers, and other requirements-related
documents. We will perform the same analysis on the collected queries and
augment the domain model accordingly. For example, requirements related
terminology that should be recognized by the NL interface includes terms
such as \User Story", \Mitigating Requirement" or \Design Constraint".
{ Evaluating the use of NL Queries within the Requirements
Engineering Context: Using the generated domain model and the display
mechanisms developed in earlier phases of this dissertation work, we will
evaluate the use of NL queries for supporting requirements engineering
activities. We will recruit 10-12 requirements engineers using the same protocol
as used in the proposed work for,\Identifying the Requirements Engineer's
Tasks and Questions". Each participant will be presented with a series of
identi ed RE related tasks. Half of the participants will be asked to perform
tasks by issuing NL Queries using our NLI, while the others will be given
only raw data in a database. For the NL queries we will evaluate the
extent to which they are correctly interpreted. Furthermore, we will evaluate
the extent to which the use of NL Queries supports and/or augments the
completion of tasks.</p>
      <p>Requirements Engineers can greatly bene t from increased accessibility to
underlying data. This work will contribute an enriched domain model which
captures RE terminology and concepts, and a NL interface which provides e
ective support for requirements engineers to utilize NL Queries to perform common
analytic tasks.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgement</title>
      <p>I am very thankful to my advisor Dr. Jane Cleland-Huang and co-advisor Dr.
Alexander Rasin for their continuous guidance and immense support for carrying
out this research.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>A.</given-names>
            <surname>Begel</surname>
          </string-name>
          and
          <string-name>
            <given-names>T.</given-names>
            <surname>Zimmermann</surname>
          </string-name>
          .
          <article-title>Analyze this! 145 questions for data scientists in software engineering</article-title>
          .
          <source>In Proceedings of the 36th International Conference on Software Engineering</source>
          , pages
          <volume>12</volume>
          {
          <fpage>23</fpage>
          . ACM,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>S.</given-names>
            <surname>Breu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Premraj</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Sillito</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.</given-names>
            <surname>Zimmermann</surname>
          </string-name>
          .
          <article-title>Information needs in bug reports: improving cooperation between developers and users</article-title>
          .
          <source>In Proceedings of the 2010 ACM conference on Computer supported cooperative work</source>
          , pages
          <volume>301</volume>
          {
          <fpage>310</fpage>
          . ACM,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>T.</given-names>
            <surname>Fritz</surname>
          </string-name>
          and
          <string-name>
            <given-names>G. C.</given-names>
            <surname>Murphy</surname>
          </string-name>
          .
          <article-title>Using information fragments to answer the questions developers ask</article-title>
          .
          <source>In Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering-Volume</source>
          <volume>1</volume>
          , pages
          <fpage>175</fpage>
          {
          <fpage>184</fpage>
          . ACM,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Gotel</surname>
            ,
            <given-names>O</given-names>
          </string-name>
          et al.,.
          <article-title>Traceability fundamentals</article-title>
          . In J.
          <string-name>
            <surname>Cleland-Huang</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          <string-name>
            <surname>Gotel</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <surname>A</surname>
          </string-name>
          . Zisman, editors,
          <source>Software and Systems Traceability</source>
          , pages
          <fpage>3</fpage>
          <lpage>{</lpage>
          22. Springer,
          <year>2012</year>
          .
          <volume>10</volume>
          .1007/978-1-
          <fpage>4471</fpage>
          -2239-51.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>H.</given-names>
            <surname>Jaakkola</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Thalheim</surname>
          </string-name>
          .
          <article-title>Visual SQL { High-Quality ER-Based Query Treatment</article-title>
          .
          <source>In Conceptual Modeling for Novel App. Domains, Lecture Notes in Comp. Science</source>
          . Springer Berlin / Heidelberg,
          <year>2003</year>
          .
          <volume>10</volume>
          .1007/978-3-
          <fpage>540</fpage>
          -39597-3.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. H.
          <article-title>-</article-title>
          <string-name>
            <surname>J. Kim</surname>
            ,
            <given-names>H. F.</given-names>
          </string-name>
          <string-name>
            <surname>Korth</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Silberschatz</surname>
          </string-name>
          .
          <article-title>Picasso: a graphical query language</article-title>
          .
          <source>Software, Practice and Exp</source>
          .,
          <volume>18</volume>
          :
          <fpage>169</fpage>
          {
          <fpage>203</fpage>
          ,
          <string-name>
            <surname>March</surname>
          </string-name>
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>S.</given-names>
            <surname>Lohar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Cleland-Huang</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Rasin</surname>
          </string-name>
          .
          <article-title>Evaluating the interpretation of natural language trace queries</article-title>
          .
          <source>In Joint Proceedings of REFSQ-2016 Workshops</source>
          , Research Method Track, and
          <article-title>Poster Track co-located with the 22nd International Conference on Requirements Engineering: Foundation for Software Quality (REFSQ</article-title>
          <year>2016</year>
          ), Gothenburg, Sweden, March
          <volume>14</volume>
          -17,
          <year>2016</year>
          ., page to appear,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>S.</given-names>
            <surname>Lohar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Cleland-Huang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Rasin</surname>
          </string-name>
          , and
          <string-name>
            <surname>P.</surname>
          </string-name>
          <article-title>Mader</article-title>
          .
          <article-title>Live study proposal: Collecting natural language trace queries</article-title>
          .
          <source>In Joint Proceedings of REFSQ-2015 Workshops</source>
          , Research Method Track, and
          <article-title>Poster Track co-located with the 21st International Conference on Requirements Engineering: Foundation for Software Quality (REFSQ</article-title>
          <year>2015</year>
          ), Essen, Germany, March
          <volume>23</volume>
          ,
          <year>2015</year>
          ., pages
          <volume>207</volume>
          {
          <fpage>210</fpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9. P. Mader and
          <string-name>
            <given-names>J.</given-names>
            <surname>Cleland-Huang</surname>
          </string-name>
          .
          <article-title>A visual language for modeling and executing traceability queries</article-title>
          .
          <source>Software and System Modeling</source>
          ,
          <volume>12</volume>
          (
          <issue>3</issue>
          ):
          <volume>537</volume>
          {
          <fpage>553</fpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>J. I.</given-names>
            <surname>Maletic</surname>
          </string-name>
          and
          <string-name>
            <given-names>M. L.</given-names>
            <surname>Collard</surname>
          </string-name>
          .
          <article-title>Tql: A query language to support traceability</article-title>
          .
          <source>In TEFSE '09: Proceedings of the 2009 ICSE Workshop on Traceability in Emerging Forms of Software Engineering</source>
          , pages
          <volume>16</volume>
          {
          <fpage>20</fpage>
          , Washington, DC, USA,
          <year>2009</year>
          . IEEE Computer Society.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>P.</given-names>
            <surname>Pruski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Lohar</surname>
          </string-name>
          , G. Ott,
          <string-name>
            <given-names>W.</given-names>
            <surname>Goss</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Rasin</surname>
          </string-name>
          , and J.
          <string-name>
            <surname>Cleland-Huang</surname>
          </string-name>
          .
          <article-title>Tiqi: Answering unstructured natural language trace queries</article-title>
          . Requirements Engineering.,
          <volume>20</volume>
          (
          <issue>3</issue>
          ):
          <volume>215</volume>
          {
          <fpage>232</fpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>S. P.</given-names>
            <surname>Shwartz</surname>
          </string-name>
          .
          <article-title>Problems with domain-independent natural language database access systems</article-title>
          .
          <source>In Proceedings of the 20th annual meeting on Association for Computational Linguistics, ACL '82</source>
          , pages
          <fpage>60</fpage>
          {
          <fpage>62</fpage>
          ,
          <string-name>
            <surname>Stroudsburg</surname>
          </string-name>
          , PA, USA,
          <year>1982</year>
          .
          <article-title>Association for Computational Linguistics</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>J. Sillito</surname>
            ,
            <given-names>G. C.</given-names>
          </string-name>
          <string-name>
            <surname>Murphy</surname>
          </string-name>
          , and
          <string-name>
            <surname>K. De Volder</surname>
          </string-name>
          .
          <article-title>Questions programmers ask during software evolution tasks</article-title>
          .
          <source>In Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering</source>
          , pages
          <volume>23</volume>
          {
          <fpage>34</fpage>
          . ACM,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>J. Smith</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Johnson</surname>
          </string-name>
          , E.
          <string-name>
            <surname>Murphy-Hill</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Chu</surname>
            , and
            <given-names>H. R.</given-names>
          </string-name>
          <string-name>
            <surname>Lipford</surname>
          </string-name>
          .
          <article-title>Questions developers ask while diagnosing potential security vulnerabilities with static analysis</article-title>
          .
          <source>In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering</source>
          , pages
          <volume>248</volume>
          {
          <fpage>259</fpage>
          . ACM,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>