<!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>A Goal-oriented Analysis to Guide the Development of a User Feedback Ontology</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Renata Guizzardi</string-name>
          <email>rguizzardi@inf.ufes.br</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Itzel Morales-Ramirez</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Anna Perini</string-name>
          <email>perini@fbk.eu</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>International Doctoral School ICT, University of Trento</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Ontology and Conceptual Modeling Research Group</institution>
          ,
          <addr-line>UFES</addr-line>
          ,
          <country country="BR">Brazil</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Software Engineering Research Unit</institution>
          ,
          <addr-line>Fondazione Bruno Kessler</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Nowadays, developers and service providers put a lot of effort on collecting and analyzing user feedback with the purpose of improving their applications and services. This motivates the proposal of new tools to collect and analyze feedback. In our work, we develop a user feedback ontology, aimed at clarifying the concepts of this domain. For that, we follow a goal-oriented methodology to identify the competency questions that represent the ontology requirements. In this paper, we discuss an excerpt of the goal model used to guide the development of our ontology. Moreover, we present examples of competency questions identified through the analysis, and the corresponding fragment of the user feedback ontology.</p>
      </abstract>
      <kwd-group>
        <kwd>User feedback</kwd>
        <kwd>Ontology</kwd>
        <kwd>Goal-oriented analysis</kwd>
        <kwd>Competency questions</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Users currently place comments and opinions about software applications and
services in a variety of online social media and repositories, such as user forums, App
stores and mailing-list archives. User feedback represents an invaluable source for
improving the software, attracting the attention of researchers in Requirements
Engineering, who started investigating it along different perspectives. Recent initiatives in
this area include: characterizing user feedback in App stores [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]; providing methods
and techniques to collect it [
        <xref ref-type="bibr" rid="ref2 ref3">2,3</xref>
        ], and approaches to analyze it so as to elicit relevant
information for evolving software requirements [
        <xref ref-type="bibr" rid="ref4 ref5">4,5</xref>
        ]. In a sense, user feedback
analysis may be seen as a kind of customer opinion mining [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], but differently, also single
comments pointing out critical bugs or new ideas to support software evolution are of
paramount importance.
      </p>
      <p>
        In our ongoing work, we are developing a user feedback ontology that aims at
clarifying the concepts of this domain. This ontology can be applied to support the
development of feedback collection and analysis techniques, (a) by providing a taxonomy
of user feedback to support structured feedback collection, and (b) to support the
feedback analysis phase, by guiding analysts to understand the intentions behind
unstructured user feedback. Current tools that aim at providing information management
strategies are mainly focused on supporting marketing purposes [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. For instance,
tools performing sentiment analysis to discover the success or failure of a certain
product. The ontology we propose supports a better understanding of the different
types of feedback, its format, and the purpose for what it can be used.
      </p>
      <p>
        To develop the user feedback ontology, we follow a methodology that consists in
performing a goal-oriented analysis of the domain to identify the competency
questions that serve as the ontology’s requirements [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. This methodology (summarized in
Section 2) is particularly effective for managing the problem domain complexity.
Moreover, it profits from the Tropos’ constructs and analysis techniques to help
delineating the ontology’s scope and capture competency questions. In Section 3 of this
paper, we provide a glimpse of the performed goal-oriented analysis, which considers
the main stakeholders involved in the user feedback domain, namely, software users,
feedback collectors, feedback analysts and requirement analysts. Additionally, we
present some examples of questions identified throughout this analysis and the
corresponding fragment of our user feedback ontology. Section 4 concludes the paper.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Methodology</title>
      <p>
        In existing Ontology Engineering methodologies, the requirements for the ontology
under development are typically captured through competence questions. CQs are
natural language questions to which the ontology should be able to respond. However,
no specific technique is used to elicit and analyze such questions. Conversely, it is
assumed that the ontology engineer will be able to formulate them from scratch. To
fill in this gap, Fernandes, Guizzardi and Guizzardi [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] propose a methodology based
on the use of Tropos [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] to elicit and analyze the competence questions of an
ontology-to-be. The main benefit of this approach relies on the use of Tropos’s analysis
techniques to systematically capture the ontology’s requirements, by analyzing the
goals of the domain stakeholders. This enables the ontology engineer to elicit and
refine competence questions.
      </p>
      <p>
        The methodology starts by applying the Tropos’s existing analysis method in early
requirements, i.e. by analyzing the goals of the domain’s actors. In late requirements,
some competence questions are defined to accomplish these actors’ goals. Then,
refining the goal model naturally leads to the refinement of the competence questions.
Besides, at this stage, we may already elicit a few concepts used to define user
feedback, directly deriving them from such questions. These concepts will later compose
the actual ontology model. In the ontology modeling activity, such initial concepts are
specified and refined, applying OntoUML, a well-founded UML-based language
developed to specify ontologies [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>3 Contribution</title>
      <p>Figure 1 depicts the main stakeholders involved in the user feedback domain, along
with the strategic dependencies among them. As argued in Section 1, software users’
(represented by the Software User actor) wants and needs are a central concern in
this domain, driving the process and motivating the dependencies in this scenario. The
Requirements Analyst is, as usual, responsible to maintain software requirements,
relying on the Feedback Analyst to understand how the user feedback affects the
current requirements. The Feedback Collector is mainly concerned with gathering
detailed feedback while also facilitating both the Software User and the Feedback
Analyst in accomplishing their own goals.</p>
      <p>For reasons of space, we give special attention to the Feedback Analyst. In this
respect, it is important to emphasize that the Feedback Analyst depends on the
Feedback Collector to collect and send her a huge amount of feedback (huge
quantity of user feedback collected softgoal) because the more information she has on
the needs of the software’s community of users, the more accurate is the result of the
feedback analysis. Moreover, the Feedback Analyst would also like the feedback to
be as structured as possible (more structured feedback collected softgoal), because
this facilitates the analysis and has a positive impact on the quality of the feedback.</p>
      <p>Figure 2 analyzes in detail the perspective of the Feedback Analyst.</p>
      <p>The Feedback Analyst has the main goal of understanding to which extent the
feedback reflects needs for software requirements changes (changes in
requirements understood goal). For accomplishing this main goal, the Feedback Analyst
aims at analyzing the user feedback (user feedback analyzed goal) and address the
request present in the user feedback (request addressed goal). To accomplish the
feedback analyzed goal, the Feedback Analyst aims at identifying the feedback’s
presentation format (presentation format identified goal) and selecting the analysis
technique (analysis technique selected goal). For obtaining the former, the analyst
identifies the format (identify format plan) and to achieve the latter, the analyst may
choose among several techniques, which also depend on the feedback presentation
format. For example, the analyst may choose process natural language text,
process speech or process image. The information regarding the presentation
format type is a resource produced by the identify format plan. Regarding the analysis
techniques, both process natural language text and process speech require the
use of an NLP tool, while process image requires the use of an image recognizer.</p>
      <p>After the feedback is properly analyzed, the Feedback Analyst may finally
address the request (request addressed goal). For that, the analyst classifies the
feedback according to the user’s intention (classify request plan), i.e. the analyst
identifies if the user submitted a bug report, a software rating, a clarification request or a
new feature request. Moreover, the analyst analyzes how the feedback affects the
current software requirements (elaborate the impacts on requirements plan). The
former generates the feedback classification resource while the latter produces the
list of impacts on requirements, made available to the Requirements Analyst (see
resource dependency between the Requirements Analyst and the Feedback
Analyst) so that she can update the system’s requirements.</p>
      <p>At this point, a few competency questions (CQs) can be identified from the goals
and plans of the Feedback Analyst. In the model of Fig. 2, we can see CQ1 linked
to the presentation format identified goal, CQ2 linked to the analysis technique
selected goal, and CQ3 linked to the classify request plan. Table 1 enunciates these
CQs.
Competency Questions
CQ1. In which formats can a user feedback be presented?
CQ2. What analysis techniques can possibly be selected for feedback analysis?
CQ3. In which categories can a user feedback be classified?</p>
      <p>In general, CQs are connected to goals (both hard and soft), since as goals, they are
related to requirements (e.g. CQ1 and CQ2). However, at times, the goal diagram is
already refined, typically from (soft)goals into plans. In this case, competency
questions can also be attached to plans (e.g. CQ3 because the goal in this case does not
provide a concrete answer). This is actually reasonable, since plans and goals are very
interrelated concepts. In a sense, every time a plan is modeled, a goal is implicitly
there (the goal of accomplishing that particular plan), as goals may be defined in
different levels of abstraction. Allowing CQs to be connected either to (soft)goals or
plans make the methodology more flexible, i.e. it can be used both when the model is
particularly made to develop an ontology or when the model supports an existing
software system. Given a goal diagram, the ontology engineer should inspect all
(soft)goals and plans, as it is up to her to define the scope of the ontology-to-be.
Typically, when the model is made from scratch, more elements will lead to the definition
of CQs, since in this case, the goal model itself more likely shares the scope of the
ontology-to-be.</p>
      <p>Now, a question remains whether to place the CQ closer or farther from the leaf in
the intentional element tree. Coincidentally, all CQs in Fig. 2 are at the same level in
the tree. Nevertheless, taking a closer look, while CQ3 is linked to a plan
operationalizing a goal, CQ2 is connected to a goal that is then refined into three plans. Thus, one
might ask: why connecting CQ2 to the analysis technique selected goal and not to
the process image plan? This decision is directly related to how the question is
enunciated (refer to Table 1). Note that our feedback ontology would be less flexible
if CQ2 were “May process image be selected for feedback analysis?”</p>
      <p>
        After modeling and enunciating CQs, we can elicit some possible ontological
concepts from them (typically the nouns), for instance, presentation format, analysis
technique and category. Figure 3 shows an excerpt of the ontology created to respond
to the CQs. These three concepts are there, along with some others that refine them.
Here are a couple of CQs derived from other actors in our scenario: what are the
common written expressions of users to describe a problem of a software application?
What is the preferred format of conveying user feedback? A complete version of this
ontology can be found in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
      </p>
      <p>
        Following the chosen Ontology Engineering methodology, we applied OntoUML
to design the ontology, so the concepts are founded according to the categories
(depicted as UML stereotypes) of the UFO foundational ontology. For reasons of space,
we refrain from describing UFO’s ontological categories, detailed described in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>
        In our ontology, the Feedback Analyst analyzes the Feedback using Analysis
Technique of a particular type (e.g., Speech Analysis, NLP or Image
Recognition). The Feedback Analysis represents an analysis session and binds Feedback
Analyst, Feedback and Analysis Technique. It can be thought as a complex
dependent object that aggregates a number of Feedback instances that are analyzed as
part of the same session, performed by the same unique Feedback Analyst, and
using the same Analysis Technique. Moreover, a Feedback is presented following
a specific Presentation Format, which can be Structured Text, Semi-Structured
Text, Unstructured Text, Audio, Video, or Rating. This Presentation Format
guides the choice for a particular Analysis Technique, for instance, if the format is
Unstructured Text, NLP is a good candidate to support the analysis. Additionally,
the Feedback is classified in one of the following categories: Bug Report,
Clarification Request, New Feature Request and Rating. These categories are chosen
based on user feedback literature, e.g. [
        <xref ref-type="bibr" rid="ref1 ref10">1,10</xref>
        ].
      </p>
    </sec>
    <sec id="sec-4">
      <title>4 Conclusion</title>
      <p>
        In this paper, we described the initial phase of the ontology construction process we
are following to build an ontology of user feedback. It consists of a goal-oriented
analysis of the domain that helped us identify the main competency questions that the
resulting ontology should support answering. We illustrated the ontology construction
process using an excerpt of the goal model and the corresponding fragment of the
resulting ontology. We believe that this user feedback ontology can be useful to
support defining appropriate feedback collection tools, and help the analysis of
unstructured user feedback. Specifically, it can provide a well-founded model for the
toolsupported method for the analysis of unstructured feedback presented in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Pagano</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maalej</surname>
            ,
            <given-names>W.:</given-names>
          </string-name>
          <article-title>User feedback in the Appstore: An Empirical Study</article-title>
          . In: RE'
          <volume>13</volume>
          (
          <year>2013</year>
          )
          <fpage>125</fpage>
          -
          <lpage>134</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Seyff</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Graf</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maiden</surname>
          </string-name>
          , N.:
          <article-title>Using mobile RE tools to give end-users their own voice</article-title>
          . In: RE'
          <volume>10</volume>
          (
          <year>2010</year>
          )
          <fpage>37</fpage>
          -
          <lpage>46</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Schneider</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Focusing spontaneous feedback to support system evolution</article-title>
          . In: RE`
          <volume>11</volume>
          (
          <year>2011</year>
          )
          <fpage>165</fpage>
          -
          <lpage>174</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Carreño</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Winbladh</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Analysis of user comments: an approach for software requirements evolution</article-title>
          , In: ICSE. IEEE / ACM (
          <year>2013</year>
          )
          <fpage>582</fpage>
          -
          <lpage>591</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lin</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hoi</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xiao</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zhang</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>AR-Miner: Mining Informative Reviews for Developers from Mobile App Marketplace</article-title>
          .
          <source>In: ICSE 2014</source>
          . To appear.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Fernandes</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Guizzardi</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Guizzardi</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>Using Goal Modeling to Capture Competency Questions in Ontology-based Systems</article-title>
          .
          <source>Journal of Information and Data Management</source>
          . v.
          <volume>2</volume>
          (
          <year>2011</year>
          )
          <fpage>527</fpage>
          -
          <lpage>540</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Bresciani</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perini</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giunchiglia</surname>
            <given-names>F.</given-names>
          </string-name>
          , and Mylopoulos J.:
          <article-title>Tropos: An Agent-oriented Software Development Methodology</article-title>
          .
          <source>Journal of Autonomous Agents and Multi-Agent Systems</source>
          <volume>8</volume>
          (
          <issue>3</issue>
          )
          <string-name>
            <surname>:</surname>
          </string-name>
          (
          <year>2004</year>
          )
          <fpage>203</fpage>
          -
          <lpage>236</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Guizzardi</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <article-title>Ontological Foundations for Structural Conceptual Models</article-title>
          .
          <source>Ph.D. thesis</source>
          , University of Twente, The
          <string-name>
            <surname>Netherlands</surname>
          </string-name>
          (
          <year>2005</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Morales-Ramirez</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Guizzardi</surname>
          </string-name>
          , R.:
          <article-title>Providing Foundation for User Feedback Concepts by Extending a Communication Ontology</article-title>
          . In: ER'
          <volume>14</volume>
          (
          <year>2014</year>
          ). Submitted.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Mory</surname>
            ,
            <given-names>E.H.</given-names>
          </string-name>
          :
          <article-title>Feedback research revisited</article-title>
          .
          <source>Handbook of research on educational communications and technology 45(1)</source>
          (
          <year>2004</year>
          )
          <fpage>745</fpage>
          -
          <lpage>784</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Morales-Ramirez</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Discovering Speech Acts in Online Discussions: A Toolsupported method</article-title>
          .
          <source>In: CAiSE'14 Forum</source>
          . (
          <year>June 2014</year>
          ) To appear.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Cambria</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schuller</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xia</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Havasi</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <article-title>New Avenues in Opinion Mining and Sentiment Analysis</article-title>
          .
          <source>IEEE Intelligent Systems</source>
          <volume>28</volume>
          (
          <issue>2</issue>
          ):
          <fpage>15</fpage>
          -
          <lpage>21</lpage>
          ,
          <year>March 2013</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>