<!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>Towards Crowdsourcing for Requirements Engineering</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Mahmood Hosseini</string-name>
          <email>mhosseini@bournemouth.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Keith Phalp</string-name>
          <email>kphalp@bournemouth.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jacqui Taylor</string-name>
          <email>jtaylor@bournemouth.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Raian Ali</string-name>
          <email>rali@bournemouth.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Bournemouth University</institution>
          ,
          <country country="UK">UK</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Crowdsourcing is an emerging, typically online, distributed problem solving and production model where a problem is solved through the involvement of a large number of people. In this study, we investigate the potential of crowdsourcing in aiding Requirements Engineering. Although the whole area is still to be explored fully, we focus on the Requirements Elicitation stage. In this paper, we survey the literature on crowdsourcing in a variety of disciplines and deduce a set of features which characterize its main constructs; the crowd and the crowdsourcers. We then conduct two focus groups to explore the relationship between these features and the quality of requirements elicited via crowdsourcing. The analysis will lead to a number of hypotheses to confirm and enhance in a future research in the area. The ultimate goal is to systematically develop crowdsourcing platforms for Requirements Engineering and guarantee correctness and maximize efficiency.</p>
      </abstract>
      <kwd-group>
        <kwd>Crowdsourcing</kwd>
        <kwd>Expert Survey</kwd>
        <kwd>Crowdsourced Requirements</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Nowadays, the uncertainty of the technical and social environments, where software
systems operate, has radically increased. This phenomenon has been accelerated by
the ever-increasing utilization of web-based systems, e.g. Software as a Service, and
mobile applications. In essence, this means that system developers and software
engineers encounter a wider audience of users, which we call the general public, or the
crowd. To cater for the requirements of the crowd, we perhaps need to involve that
crowd; hence, the importance of crowdsourcing.</p>
      <p>
        Eliciting the requirements from users is traditionally carried out as a design time
activity. Recent approaches advocate that it can be also done at runtime involving the
actual users, e.g., via users feedback [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Note that within our view of requirements
elicitation we not only include the identification of new requirements but also judging
the quality of existing software and the alternative configurations it supports to reach
the users’ requirements. Furthermore, this may involve identifying loci in the
requirements model where users encounter problems and require evolution of the
system, either autonomously or as a maintenance action for the next release. In addition,
users could also identify requirements that are outdated and contexts of uses that
affect the quality of certain ways of achieving requirements. In both ways of eliciting
requirements (design time and runtime), we advocate that crowdsourcing [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] is a
promising paradigm, particularly when eliciting the requirements for systems which
are highly interactive and potentially used by a wide diversity of users in a dynamic,
perhaps unknown, context.
      </p>
      <p>
        Crowdsourcing in requirements elicitation has the potential to increase the quality
and comprehensiveness and even the economic feasibility of requirements elicitation.
Crowdsourcing gives the software and engineering team access to a wide diversity of
actual and potential users. It could be utilized throughout the life-cycle of the
software. This would allow developers, potentially, to gain a wider, and more up-to-date
knowledge of how users perceive the system role in meeting their requirements, and
to understand how that perception changes over time. Traditional elicitation
approaches, e.g., interviews and focus groups, are too expensive to deal efficiently with
crowd-oriented applications. While Crowdsourcing seems a promising approach, only
a very few attempts have been at utilizing this potential, e.g. [
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ]. Crucially, as a
discipline, we have not established engineering approaches to develop
Crowdsourcing-based requirements engineering platforms.
      </p>
      <p>The goal of this study is to explore the relationships among different styles of
Crowdsourcing and the quality of crowdsourced requirements. To this end, we have
surveyed the literature in Crowdsourcing and identified a set of its characterizing
features. This has aided the design of two focus groups to explore the relation
between these features and the quality of elicited requirements. We have identified a set
of observations to confirm in a future study by consulting the opinion of researchers
and practitioners in the requirements engineering community.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Crowdsourcing for Requirements Engineering</title>
      <p>
        Requirements engineering focuses on the development of a system that best suits the
needs of its stakeholders, i.e. the customers who have paid for the system, but since
the customers’ final goal is for their system to be utilized by end users, their
immediate needs should be considered during RE [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. As a result, it is important to know the
end users and recognize their needs during requirements engineering. While
requirements elicitation has been well-studied in traditional software systems which are
meant for relatively stable business environments (e.g. a library, a bank) or repetitive
pattern-like requirements (e.g. meeting scheduler), the new computing paradigms, e.g.
the Cloud and the Mobile App, make it hard to make such an assumption. The
stakeholders here are the crowd and, hence, it is a valid argument to say that we could rely
on the crowd to cater for their needs properly. This means, we need to rethink of
requirements elicitation to accommodate the complexity and the scale of the crowd and
ensure that we get their requirements efficiently and precisely.
      </p>
      <p>Crowdsourcing is an area of study which has recently gained attention in various
scientific fields, such as business, management, environmental sciences, social
studies, computing and so on. Crowdsourcing could also aid software development,
particularly at the requirements engineering stage, since the crowd could be the potential
users of software which is designed to meet their requirements. There are a number of
studies which attempted to utilize the power of the crowd and end-users to solve
requirements engineering problems. These include:</p>
      <sec id="sec-2-1">
        <title>Requirements-Driven Social Adaptation: Uncertainty about the role of a</title>
        <p>
          software in meeting its requirements in a dynamic context makes the validation of a
system a hard and lenghty task. In [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] and [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ], Ali et al. propose the notions of Social
Adaptation and Social Sensing for a lifelong validation of the difference alternatives
of a variable software. The approach is based on acquiring and analyzing the actual
users perception on the role of the system in achieving their requirements and its
quality. They propose to utilize that to make adaptation decisions.
        </p>
        <p>
          Feedback-based requirements engineering: users feedback on software could
help developers to better understand the requirements of the next release of the
system. This feedback could be explicit, e.g. via forums, or implicit, e.g. through
monitoring their patterns of use of the software. Pagano and Maalej [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] propose the
effects of user feedback on software and requirements engineering teams. They
signify the importance of user feedback content on the number of downloads a mobile
phone application gets.
        </p>
        <p>
          Stakeholders’ discovery: in complex and dynamic systems, it is hard to identify
the set of stakeholders and their roles and expertise and also their requirements.
Crowdsourcing here would help identifying a comprehensive set of stakholders from
an initial set of stakeholders specified by the analysts. Lim et al. [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] propose that the
identification of stakholders relevant to the system is not strightforward and propose a
participatory approach to stakeholders identification. The work considers the set of
stakeholders as a social network. The analysts could know only few members who
will then recommend more members to the analysts and so on.
        </p>
        <p>
          Requirements Identification: in software paradigms like Cloud Computing and
Mobile Apps, the users set is highly diverse and unpredictable. This means relying on
an elite group of users to understand what functionality and quality attributes to meet
in the software is limited and also costly. We could harness the power of the crowd to
understand their requirements as part of the requirements elicitation stage.
CrowdREquire [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ] is an example of initiatives where the concept of crowdsourcing
was advocated for requirements elicitation.
        </p>
        <p>
          Empirical Validation: Validation and users testing for implemented systems share
the same difficulties as mentioned above for requirements elicitation and for
requirements-driven adaptation in the sense that it is costy and lengthy and it often
leads to results which are valid only temporarily, especially in a dynamic
environment. This is true as users might not maintain the same opinion when time
passes due to the emergence of competitive solutions and the use of software in
contexts which were not thought of at the engineering stage. There has been also
some research on the use of crowdsourcing for empirical studies in software
engineering [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]. While this was not meant for a particular activity in softwae
engineering, the empirical nature of requirements elicitation and validation would
suggest investing on developing crowdsourcing platofrms for empirical studies so that
we harness the pwor of the rowd to cater for its scale and complexity.
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>How to Crowdsource Requirements Elicitation: Initial</title>
    </sec>
    <sec id="sec-4">
      <title>Results</title>
      <p>In this section, we investigate the potential impact of the different settings of
crowdsourcing on the quality of crowdsourced requirements. To this end, we followed
a three-steps methodology and report on the results of the first two phases.</p>
      <p>In the first step, we studied the literature on crowdsourcing in a variety of
disciplines and we identified the features of crowdsourcing according to the different
constituents of crowdsourcing, i.e. the crowdsourcer (requirements engineers in the case
of requirements engineering) and the crowd (potential software stakeholders including
end-users in the case of requirements engineering). This list is illustrated in Table 1.</p>
      <p>The Crowdsourcer
1. Incentives Provision
1.1. Financial Incentives
1.2. Social Incentives
1.3. Entertainment Incentives</p>
      <sec id="sec-4-1">
        <title>2. Opt-out Provision</title>
      </sec>
      <sec id="sec-4-2">
        <title>3. Ethicality Provision</title>
        <p>3.1. Open Call
3.2. Feedback to Crowd
3.3 No Harm to Crowd</p>
      </sec>
      <sec id="sec-4-3">
        <title>4. Privacy Provision</title>
        <p>In the second step, we held two focus groups, consisting of a mixed group of users
and software engineers. We introduced to them the concept of crowdsourcing and its
different applications, focusing on software development. The first focus group
consisted of seven people; three software developers and four users, four female and
three male participants. The second consisted of seven people; four software
developers and three users, with one female and six male participants. The 14 participants in
the two focus groups were from 10 countries and with an age range of 23 to 50. Then
we asked them pre-prepared questions about the effect of different settings of
crowdsourcing on the quality of requirements obtained from the crowd. At the end of
each question, the participants were asked to write their comments and answer a
correlated question in a pre-prepared questionnaire,. This helped us to get qualitative and
quantitative data. We then analyzed the focus group results, both by listening to the
recordings and by studying the filled-in questionnaires and the written comments. The
results which were obtained from the focus groups are listed in Table 2.</p>
      </sec>
      <sec id="sec-4-4">
        <title>Quality Attributes</title>
        <sec id="sec-4-4-1">
          <title>More accuracy, Less</title>
          <p>biased information,
Saturation, More
difficulty in
coordination
More honesty, Less
credibility</p>
        </sec>
        <sec id="sec-4-4-2">
          <title>More overhead in</title>
          <p>management, More
inconsistency,
Possible Dominance of
some users, More
understandability
More correctness,
More chance of
encountering malicious
participants</p>
        </sec>
        <sec id="sec-4-4-3">
          <title>More motivation to</title>
          <p>be actively involved,
More participants,
More possibility of
carrying on with the
task</p>
        </sec>
      </sec>
      <sec id="sec-4-5">
        <title>Crowdsourcing</title>
      </sec>
      <sec id="sec-4-6">
        <title>Features</title>
        <p>Diversity</p>
        <sec id="sec-4-6-1">
          <title>Competence</title>
        </sec>
        <sec id="sec-4-6-2">
          <title>Motivation (Intrinsic)</title>
        </sec>
        <sec id="sec-4-6-3">
          <title>Incentives (Extrinsic)</title>
        </sec>
        <sec id="sec-4-6-4">
          <title>Feedback</title>
        </sec>
      </sec>
      <sec id="sec-4-7">
        <title>Quality Attributes</title>
        <sec id="sec-4-7-1">
          <title>Less consensus, More relevance, More creativity, More inconsistency</title>
        </sec>
        <sec id="sec-4-7-2">
          <title>More correctness,</title>
          <p>More creativity,
More relevance,
More willing to
participate
More correctness,
More relevance,
More completeness</p>
        </sec>
        <sec id="sec-4-7-3">
          <title>More motivation to</title>
          <p>be actively engaged,
More participants,
Misleading the crowd
from true
involvement
More motivation to
engage, Disturbing
participants, More
influence on next
stages, Feeling that
participant’s idea is
important, More
willingness to participate
in future</p>
          <p>In our third step, we aim to collect and analyze the opinion of the experts
(researchers and practitioners) in requirements engineering about our findings including
those obtained from the focus groups. The final result will be a benchmark for the
relationship between different crowdsourcing settings and the various quality
attributes of elicited requirements. The expert survey will be conducted as part of the
activities of the 20th International Working Conference on Requirements Engineering:
Foundation for Software Quality (REFSQ 2014). The survey could be found in the
following URL: http://www.esurv.org?u=CSfRE. Also, a PDF version of the online
survey is accessible from the following URL: http://goo.gl/oIVdbt.
4</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>This paper reports on initial results of investigating the use of crowdsourcing for
requirements engineering, with focus on elicitation activity. We reported on the results
of the literature review and two conducted focus groups as a preliminary step to
design an expert survey. The goal is to devise systematic engineering approaches to
develop crowdsourcing for requirements engineering.</p>
      <p>Acknowledgements. The research was supported by an FP7 Marie Curie CIG grant
(the SOCIAD Project) and by Bournemouth University through the Fusion
Investment Fund (the BBB, BUUU and VolaComp projects) and the Graduate School
Santander Grant for PGR Development.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>R.</given-names>
            <surname>Ali</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Solis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Salehie</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            <surname>Omoronyia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Nuseibeh</surname>
          </string-name>
          and
          <string-name>
            <given-names>W.</given-names>
            <surname>Maalej</surname>
          </string-name>
          .
          <year>2011</year>
          .
          <article-title>Social sensing: when users become monitors</article-title>
          .
          <source>In ESEC/FSE11.</source>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>D.</given-names>
            <surname>Brabham</surname>
          </string-name>
          .
          <year>2008</year>
          .
          <article-title>Crowdsourcing as a model for problem solving: an introduction and cases</article-title>
          . Convergence: The
          <source>International Journal of Research into New Media Technologies</source>
          <volume>14</volume>
          (
          <issue>1</issue>
          ):
          <fpage>75</fpage>
          -
          <lpage>90</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>A.</given-names>
            <surname>Adepetu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. Altaf</given-names>
            <surname>Khaja</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Al-Abd</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Al-Zaabi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Svetinovic</surname>
          </string-name>
          .
          <year>2012</year>
          .
          <article-title>CrowdREquire: a requirements engineering crowdsourcing platform</article-title>
          .
          <source>The 2012 AAAI Spring Symposium Series.</source>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>S. L.</given-names>
            <surname>Lim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Quercia</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Finkelstein</surname>
          </string-name>
          .
          <year>2010</year>
          .
          <article-title>StakeSource: harnessing the power of crowdsourcing and social networks in stakeholder analysis</article-title>
          .
          <source>In ICSE</source>
          '
          <volume>10</volume>
          :
          <fpage>239</fpage>
          -
          <lpage>242</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>S.</given-names>
            <surname>Kujala</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kauppinen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Lehtola</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.</given-names>
            <surname>Kojo</surname>
          </string-name>
          .
          <year>2005</year>
          .
          <article-title>The role of user involvement in requirements quality and project success</article-title>
          .
          <source>In the 13th IEEE International Conference on Requirements Engineering</source>
          ,
          <year>2005</year>
          Proceedings:
          <fpage>75</fpage>
          -
          <lpage>84</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>R.</given-names>
            <surname>Ali</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Solis</surname>
          </string-name>
          , I. Omoronyia,
          <string-name>
            <given-names>M.</given-names>
            <surname>Salehie</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B.</given-names>
            <surname>Nuseibeh</surname>
          </string-name>
          .
          <year>2012</year>
          .
          <article-title>Social adaptation: when software gives users a voice</article-title>
          .
          <source>In ENASE'12.</source>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>D.</given-names>
            <surname>Pagano</surname>
          </string-name>
          and
          <string-name>
            <given-names>W.</given-names>
            <surname>Maalej</surname>
          </string-name>
          .
          <year>2013</year>
          .
          <article-title>User feedback in the appstore: An empirical study</article-title>
          .
          <source>In Requirements Engineering Conference (RE)</source>
          ,
          <year>2013</year>
          21st IEEE International:
          <fpage>125</fpage>
          -
          <lpage>134</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>S. L.</given-names>
            <surname>Lim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Quercia</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Finkelstein</surname>
          </string-name>
          .
          <year>2010</year>
          .
          <article-title>StakeNet: using social networks to analyse the stakeholders of large-scale software projects</article-title>
          .
          <source>In Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering-Volume</source>
          <volume>1</volume>
          :
          <fpage>295</fpage>
          -
          <lpage>304</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>K. T.</given-names>
            <surname>Stolee</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Elbaum</surname>
          </string-name>
          .
          <year>2010</year>
          .
          <article-title>Exploring the use of crowdsourcing to support empirical studies in software engineering</article-title>
          .
          <source>In Proceedings of the 2010 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement</source>
          :
          <fpage>35</fpage>
          -
          <lpage>38</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>