<!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>Challenges in Modeling Non-Functional Requirements Collaboratively</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Roxana L.Q. Portugal</string-name>
          <email>rportugal@inf.puc-rio.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Julio Cesar Sampaio do Prado Leite</string-name>
          <email>julio@inf.puc-rio.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>PUC-Rio</institution>
          ,
          <addr-line>Rio de Janeiro</addr-line>
          ,
          <country country="BR">Brasil</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Modeling Non-Functional Requirements (NFRs) is a challenge, mainly from the subjective character of their elicitation. Modeling NFRs as a collaborative process may create a consensus among stakeholders, combining modeling and elicitation in a learning cycle. However, the collaboration presents challenges, such as the different viewpoints, the influence of creativity, the modeling tool, the domain/scope of the target software system, and the fundamental aspects of configuration management. This paper reports our observations on collaboratively modeling an intentional model for the handling of fruits and vegetables in a futuristic kitchen.</p>
      </abstract>
      <kwd-group>
        <kwd>Non-Functional Requirements</kwd>
        <kwd>Qualitative Requirements</kwd>
        <kwd>Intentional Modeling</kwd>
        <kwd>Collaboration</kwd>
        <kwd>Configuration Management</kwd>
        <kwd>Smart Homes</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Introduction
i* stresses the "why" rather than only the "what" in software production [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], focusing
on organizational actors' dependencies to address system goals. Since groups may
perform software modeling, a collaboration between stakeholders contributes to achieving
a shared understanding of the desired software through negotiation, the convergence of
ideas, and the identification of problems [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. However, despite the increase of
collaboration in agile practices for RE [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], few initiatives support collaborative modeling [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
To the best of our knowledge, collaboration in modeling NFRs lacks more research.
Collaboration has been primarily used in software coding, mainly due to configuration
management (CM) support, which is central in software evolution [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ][
        <xref ref-type="bibr" rid="ref4">4</xref>
        ][
        <xref ref-type="bibr" rid="ref5">5</xref>
        ][
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Leite
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] stresses the characteristics that make the prevalence of coding over the modeling,
as platforms such as GitHub promotes collaboration, traceability, and transparency [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        Notwithstanding, collaborative modeling initiatives (browser and cloud-based
solutions) are starting to come out, using CM strategies similar to coding environments [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        This paper reports on observations gathered during an experience of modeling the
handling of fruits and vegetables in a futuristic kitchen1. This work relies on
requirements information elicited by a vignette based interviews, and a questionnaire. This
information was elicited from prospective stakeholders of a 2045 kitchen [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Using a
1 The vignette technique [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] (Fig. 1) uses small impressionist narratives to enhance understanding.
      </p>
      <p>Imagine a kitchen in 2045 where the fruit and vegetable delivery
service is done through a Drone that uses the kitchen window to
leave orders. For food to be ready for consumption, they must go
through a food belt to follow a cleaning, organization, and cooling
process.
model-driven elicitation [10],
which fills in the model in question
(i* model), we modeled as softgoals
(Fig. 2), the qualities found in the
questionnaire answers. Later, we
evolved the model by adding
awareness quality by reusing the
Awareness catalog [11].</p>
    </sec>
    <sec id="sec-2">
      <title>2 Background</title>
      <p>
        Susana is the name given to a humanoid that will be able to act as a Requirement
Engineer by 2045 [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. We follow Lutz vision [19], in which near to 2045, we would have
requirements elicitation tasks performed by humanoids specialized in certain types of
software. As such, Susana was conceived to understand kitchens of the future. Our i*
model describes the knowledge needed by this humanoid.
3.1
      </p>
      <sec id="sec-2-1">
        <title>Eliciting Future Needs</title>
        <p>
          Previously, a four-member research group worked towards the understanding of what
a humanoid elicitor would need to meet inhabitant’s needs [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]. Would it use the same
techniques that RE engineers apply nowadays? What knowledge would it need to attend
the future demands? As such, the group used a vignette to conduct interviews with 11
stakeholders that identified 10 future needs that we modeled as objectives in Fig. 2.
Later, we used a questionnaire with 109 people to evaluate and suggest other needs [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ].
They suggested another 32 needs.
        </p>
        <p>
          Fig. 3 shows the modeling of the elicited goals [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] with relation to one goal of the
actor (Kitchen, 2045) in Fig. 2: menus based on preference, inventory, or food
restrictions (health) be suggested.
2 Prana: (in Hindu philosophy) the force that keeps all life in existence. Source: Oxford Dictionary
3.2
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>Non-functional Requirements for Susana</title>
        <p>Three researchers (including the two co-authors) performed the collaborative modeling
aiming to understand how a Softgoal Interdependency Graph (SIG) for software
awareness [11] would be part of Susana's reasoning. We modeled collaboratively and
synchronously (in a research meeting), using GitHub as support for Configuration
Management.</p>
        <p>
          With the previous elicited information [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], we conducted a series of meetings. The
meetings used an i* model-driven elicitation [10], anchored on the information of needs
[
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], and the awareness catalog [11]. After a post mortem review, we found that the
model produced [18] (Fig. 4) was highly influenced by three correlated NFRs,
explicitly stated in Fig. 2: sustainability, automation, and self-cleaning. Others NFRs were
implicit since they were inferred from the elicited information (Fig. 2). Table 1 traces
the inferences used to name the implicit NFRs.
        </p>
        <p>Concerning the effort, about 90 person-hours were spent in modeling without
awareness, and about 54 person-hours were used to add awareness [1111] (See the gray
elements in Fig. 4).</p>
        <p>Briefly, the meetings’ dynamic was: 1) Project the latest version of the model using
the tool [20]. 2) Free use of creativity. 3) Modeling in the whiteboard while discussing
the proper i* notation. 4) What we agreed in was persisted by the tool [21]. 5) Making
notes of tool limitations related to usability, as well as limitations of the i* language.
This dynamic intertwined modeling with elicitation based on the needs and the
Awareness SIG.</p>
        <p>On three occasions and outside the meetings, two members of the group performed
the verification of the model produced in meetings. Also, before some of the meetings,
one of the researchers performed asynchronous work on the tool [21].
4</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Challenges in collaborative modeling of NFRs</title>
      <p>During the modeling, we observed the following challenges: the support of a modeling
tool, the different viewpoints, creativity, the problem scope, and, through all of them,
the basics aspects of CM.</p>
      <p>An intentional modeling tool for web browsers suited our needs for ease of access
and the portability of a web browser, together with the freedom provided by a cloud
server to persist the models. Also, the availability of the source code of a tool [20]
allowed us to adapt it to our needs. We also needed to differentiate the characteristics
related to software awareness by using other colors of elements, and arrows as proposed
in [11]. The result is an adapted tool [21].</p>
      <p>
        We use GitHub CM to track versions of models made by similar initiatives such as
GenMyModel [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. However, we see as a challenge for the tool, a feature that would
allow the model to evolve using visual comparison with previous versions. This
limitation affected our model when we began to add aspects of awareness [11] that triggered
more significant changes in the model, thus limiting the easy revision of the reasoning
used in previous versions.
      </p>
      <p>Leite [15] believes that requirements must be obtained using different viewpoints.
We used the diversity of opinions, which allowed identifying the identification of
missing information and conflicts in the requirements. In our experience in the meetings,
we learned to understand each modeler point of view, so that the model evolved more
where we had more consensuses and shared understanding; for instance; in the
objectives related to the organization of food and packaging (Fig. 4).</p>
      <p>However, a challenge encountered in reaching consensus among modelers is the
strong influence of explicit NFRs (Table 1) that cross multiple goals, as seen with the
sustainability NFR. The implicit NFRs, such as learnability and usability if used, could
have taken our model to another result. Another challenge is the time it takes to reach
consensus when the requirements for addressing NFRs are being invented [22] in a
model-driven elicitation. In time constraints projects, a challenge would be to deal with
situations where all points of view win. It is important to stress that different viewpoints
strategy is a validation process in itself [15], which corroborates the Linus law.
However, it is a challenge to identify errors in an asynchronous collaborative environment.</p>
      <p>
        Creativity in collaboration is a quality that can be affected due to some concerns.
As we follow an i* model-driven elicitation, we found that in the first meetings, the
expertise of one of the members had a negative influence on the equilibrium of interests
of modelers [23]. The necessary training in the technologies used [24] also restricts
creativity. In this sense, the tool [20] often reduced our reasoning for lack of undo
function. Another technology, such as GitHub CM, which will be central to the evolution
of modeling editors [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], poses a challenge as it allows for individual collaboration in an
asynchronously way. A positive influence towards creativity was the fact that all
modelers had similar knowledge of the problem [24], as the group also participated in the
elicitation of needs performed previously [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
      </p>
      <p>Finally, the scope of the problem is a challenge when dealing with NFRs. We have
identified the lack of modularization techniques to help model-driven elicitation. With
more NFRs in the model, whether due to the reorganization of already modeled
structures or the addition of new ones, dependency links grew. With more links,
visualization became a problem, which led to problems in model understanding.
5</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusion</title>
      <p>This work presents some of the challenges in NFRs collaboratively modeling, but other
studies may be done on the model evolution as registered in the GitHub CM [18]. Future
work should address challenges to improve the tool [20]. On the other hand, we are
continuing the modeling of Susana as a means to better understand how awareness
driven software may profit from intentional modeling.
10. Leite, J.C.S.P. Elicitation Awareness in Conceptual Modeling: The Role of Transparency.</p>
      <p>Keynote Talk at Istar´15 - 8th International i* Workshop, Ottawa. Available:
http://wwwdi.inf.puc-rio.br/~julio/transp-istar-15-ottawa.pdf. (2015).
11. Cunha, H. and Leite, J.C.S.P. Reusing non-functional patterns in i∗ modeling. In IEEE 4th</p>
      <p>International Workshop on Requirements Patterns (RePa). pp. 25-32. (2014).
12. Chung, L. and Leite, J.C.S.P. On non-functional requirements in software engineering. In
Conceptual modeling: Foundations and applications. pp. 363-379. Springer, Berlin,
Heidelberg. (2009).
13. Ameller, D., Ayala, C., Cabot, J. and Franch, X. Non-functional requirements in
architectural decision making. IEEE software, Vol. 30(2), pp.61-67. (2013).
14. Mylopoulos, J., Chung, L. and Yu, E. From object-oriented to goal-oriented requirements
analysis. Communications of the ACM, 42(1), pp.31-37. (1999).
15. Leite, J.C.S.P. Viewpoint resolution in requirements elicitation. (Doctoral Thesis,
University of California, Irvine). Available: http://www-di.inf.puc-rio.br/~julio//bd.htm (1988).
16. Franch, X. Fostering the adoption of i* by practitioners: some challenges and research
directions. In Intentional Perspectives on Information Systems Engineering. pp. 177-193.</p>
      <p>Springer, Berlin, Heidelberg. (2010).
17. Doorn, J. H., Hadad, G. D., Elizalde, M. C., García, A. R., and Carnero, L. O. Críticas
Cognitivas a Heurísticas Orientadas a Modelos. In 22nd Workshop on Requirements
Engineering, (WER19). (2019).
18. Portugal, R.L.Q., Cavalcanti, R., and Leite, J.C.S.P. Modelo intencional para a gestão de
frutas e vegetais em uma cozinha futurista. (Version iStar19). Zenodo.
http://doi.org/10.5281/zenodo.3387709. Available at GitHub: https://git.io/JeOGK. (2019).
19. Robyn R. Lutz. RE at 50, with a Focus on the Last 25 Years. In Proceedings of 25th IEEE</p>
      <p>International Requirements Engineering Conference (RE). pp. 482-483. (2017).
20. Pimentel, J. and Castro, J. piStar Tool–A Pluggable Online Tool for Goal Modeling. In
Proceedings of 26th IEEE International Requirements Engineering Conference (RE) (pp.
498499). (2018).
21. Portugal, R.L.Q. piStar tool adapted during a model-driven elicitation (Version iStar19).</p>
      <p>Zenodo. http://doi.org/10.5281/zenodo.3418479. (2019).
22. Potts, C. Invented requirements and imagined customers: requirements engineering for
offthe-shelf software. In Proceedings of IEEE International Symposium on Requirements
Engineering (RE'95) (pp. 128-130). (1995).
23. Carmeli, A. and Schaubroeck, J. The influence of leaders' and other referents' nor-mative
expectations on individual involvement in creative work. The Leadership Quarterly, 18(1),
pp.35-48. (2007).
24. Amabile, T.M., Conti, R., Coon, H., Lazenby, J. and Herron, M. Assessing the work
environment for creativity. Academy of management journal, 39(5), pp.1154-1184. (1996).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Yu</surname>
            <given-names>E.S.</given-names>
          </string-name>
          <article-title>Towards modelling and reasoning support for early-phase requirements engineering</article-title>
          .
          <source>In Requirements Engineering Proceedings of the Third IEEE International Symposium</source>
          . pp.
          <fpage>226</fpage>
          -
          <lpage>235</lpage>
          . (
          <year>1997</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Whitehead</surname>
            <given-names>J.</given-names>
          </string-name>
          <article-title>Collaboration in software engineering: A roadmap</article-title>
          .
          <source>In Future of Software Engineering. IEEE Computer Society</source>
          . pp.
          <fpage>214</fpage>
          -
          <lpage>225</lpage>
          . (
          <year>2007</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Paetsch</surname>
            <given-names>F</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eberlein</surname>
            <given-names>A</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maurer</surname>
            <given-names>F</given-names>
          </string-name>
          .
          <article-title>Requirements engineering and agile software development</article-title>
          .
          <source>In Twelfth IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises. (WET ICE)</source>
          . pp.
          <fpage>308</fpage>
          -
          <lpage>313</lpage>
          . (
          <year>2003</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Gray</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Rumpe</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <article-title>The evolution of model editors: browser-and cloud-based solutions</article-title>
          .
          <source>Software &amp; Systems Modeling</source>
          . Vol.
          <volume>15</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>303</fpage>
          -
          <lpage>305</lpage>
          . (
          <year>2016</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Dabbish</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stuart</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tsay</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Herbsleb</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>February</surname>
          </string-name>
          .
          <article-title>Social coding in GitHub: transparency and collaboration in an open software repository</article-title>
          .
          <source>In Proceedings of the ACM Conference on Computer Supported Cooperative Work</source>
          . pp.
          <fpage>1277</fpage>
          -
          <lpage>1286</lpage>
          . (
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Lanubile</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ebert</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Prikladnicki</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Vizcaíno</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <article-title>Collaboration tools for global software engineering</article-title>
          .
          <source>IEEE software</source>
          . Vol.
          <volume>27</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>52</fpage>
          -
          <lpage>55</lpage>
          . (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Leite</surname>
            ,
            <given-names>J.C.S.P.</given-names>
          </string-name>
          <article-title>The prevalence of code over models: turning it around with transparency</article-title>
          .
          <source>Keynote in IEEE 8th International Model-Driven Requirements Engineering Workshop (MoDRE)</source>
          . pp.
          <fpage>56</fpage>
          -
          <lpage>57</lpage>
          . (
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Hibshi</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Breaux</surname>
          </string-name>
          , T.D. and
          <string-name>
            <surname>Broomell</surname>
          </string-name>
          , S.B.
          <article-title>Assessment of risk perception in security requirements composition</article-title>
          .
          <source>In 2015 IEEE 23rd International Requirements Engineering Conference (RE)</source>
          . pp.
          <fpage>146</fpage>
          -
          <lpage>155</lpage>
          . (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Cavalcanti</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Portugal</surname>
            ,
            <given-names>R.L.Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Teixeira</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Leite</surname>
            ,
            <given-names>J.C.S.P.</given-names>
          </string-name>
          <string-name>
            <surname>Em</surname>
          </string-name>
          <article-title>Busca dos Requisitos para Susana: Requisitos para uma Humanóide Construtora De Requisistos</article-title>
          .
          <source>Technical-Report</source>
          , PUC-Rio. Available: http://bib-di.inf.puc-rio.br/techreports/2018.htm (
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>