<!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>Testing Quality Requirements of a System-of-Systems in the Public Sector - Challenges and Potential Remedies</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jacob Larsson</string-name>
          <email>jacob.larsson@capgemini.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Markus Borg</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Thomas Olsson</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>SICS Swedish ICT AB</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sweden</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Capgemini</institution>
          ,
          <addr-line>Växjö</addr-line>
          ,
          <country country="SE">Sweden</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Quality requirements is a difficult concept in software projects, and testing software qualities is a well-known challenge. Without proper management of quality requirements, there is an increased risk that the software product under development will not meet the expectations of its future users. In this paper, we share experiences from testing quality requirements when developing a large system-of-systems in the public sector in Sweden. We complement the experience reporting by analyzing documents from the case under study. As a final step, we match the identified challenges with solution proposals from the literature. We report five main challenges covering inadequate requirements engineering and disconnected test managers. Finally, we match the challenges to solutions proposed in the scientific literature, including integrated requirements engineering, the twin peaks model, virtual plumblines, the QUPER model, and architecturally significant requirements. Our experiences are valuable to other large development projects struggling with testing of quality requirements. Furthermore, the report could be used by as input to process improvement activities in the case under study.</p>
      </abstract>
      <kwd-group>
        <kwd>{markus</kwd>
        <kwd>borg</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        projects. In a large study on challenges related to alignment of Requirements
Engineering and Testing (RET), Bjarnason et al. report that three out of six studied
companies struggle with verifying QRs [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. Several other researchers also acknowledge
the importance of managing QRs [
        <xref ref-type="bibr" rid="ref17 ref21">17, 21</xref>
        ], and have called for additional research [
        <xref ref-type="bibr" rid="ref16 ref4">4,
16</xref>
        ]. An understanding of software quality should permeate the entire development
process [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. Quality aspects, sometimes referred to as “-ilities”, are typically
expressed as QRs (a.k.a. non-functional requirements, in contrast to Functional
Requirements (FR)) as part of a project’s Requirements Engineering (RE). Example
categories of QRs according to ISO/IEC 25010 include reliability, operability, and
maintainability [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ].
      </p>
      <p>
        In our previous work on reported general challenges of RET alignment in the
public sector [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ], verifying quality requirements was listed as one of the major
challenges. The discussion on QRs was however comparatively short, with the overall
conclusion being “many quality aspects cannot be assessed until the system is in operation”.
We now return to the same project 1.5 years later and report experiences from testing
QRs of a system that is now partly in operation. Consequently, the current paper
constitutes a follow-up of our previous work, i.e., we return to the same development
project at a governmental agency in Sweden: a major integration effort with the goal
to establish a System-of-Systems (SoS) for managing EU grants. In this paper, we
further strengthen the validity of our conclusions by complementing the experiences
reported by archival analysis of requirements documentation. Finally, our report
responds to a recent national call for more research on SoS in Sweden [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>
        Our main contribution is to report five major challenges in verifying QRs in the
case under study, namely: 1) changing RE documentation, 2) test managers’ need of
domain understanding, QRs are neither 3) quantified nor 4) prioritized frequently
enough, and 5) simulation of complex operational states in a test environment. We
also propose solutions based on the research literature for the five challenges,
including improved commination between requirements engineers, architects and test
managers (i.e., extending the Cleland-Huang et al.’s “twin peaks” model [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] with the test
perspective), and early identification of “test significant QRs” (in line with work on
architecturally significant requirements by Chen et al. [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]).
      </p>
      <p>The paper is structured as follows: Section 2 introduces previous research on QRs,
and particularly related work on testing QRs. Section 3 describes the case company
and the relevant development processes applied in the project under study. Section 4
presents the research method and the limitations of our work. Section 5 reports our
results and our corresponding interpretations. Finally, Section 6 concludes our paper
by summarizing the main takeaways.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Background and related work</title>
      <p>
        While management of QRs is known to play a crucial role in large software
engineering projects, the RE research community has not agreed on a single definition [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. In
this paper, we rely on the definition “QRs describe the non-behavioral aspects of a
system, capturing the properties and constraints under which a system must operate”.
The remainder of this section presents key research on QRs, as well as reported
challenges related to both their specification and verification.
2.1
      </p>
      <sec id="sec-2-1">
        <title>Quality requirements and quality models</title>
        <p>
          Several researchers highlight the importance of QRs during software product
development. Simply implementing all functional requirements is not enough to ensure a
successful product; Disregarding QRs might lead to a product that is too difficult to
use or too expensive to maintain [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ]. Moreover, poor management of QRs might
lead to project overruns and increased time-to-market [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]. Berntsson Svensson
argues that QRs are particularly important to market-driven organizations that release
products to an open consumer market [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. Although the importance of QRs is
generally acknowledged, Chung and do Prado report that RE research is dominated by
functional requirements [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ], whereas Ameller et al. [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] report that both FR and QR are
considered equally important by architects.
        </p>
        <p>
          Software quality models have been developed to support identification of QRs and
to help establish control criteria for quality assurance. Two of the most established
models are ISO/IEC 25010 [
          <xref ref-type="bibr" rid="ref26">26</xref>
          ] (the successor of ISO/IEC 9126) and FURPS+ (a
Hewlett Packard adaptation of the original FURPS model [
          <xref ref-type="bibr" rid="ref25">25</xref>
          ]), see Table 1. ISO/IEC
25010 composes software product quality into eight characteristics: functional
suitability, performance efficiency, compatibility, usability, reliability, security,
maintainability, and portability. Each characteristic is further divided into sub-characteristics.
FURPS+ is an acronym representing the quality aspects covered by the model:
functionality, usability, reliability, performance, and supportability. The ‘+’ was appended
to the original FURPS model to highlight additional quality aspects, and constraints
on the product, e.g., physical requirements or implementation requirements.
        </p>
        <p>
          Previous work highlights QRs as among the most challenging aspects to manage
during software projects. Moreover, Chung et al. report that development
organizations often do not properly acknowledge the significance of QRs [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ]. Several
researchers try to express the overall challenges of QRs. For example, Glinz claims that
the mains issues with QRs originate in their definition, classifications, and
representation [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ]. Chung et al. instead argues that the three biggest challenges with QR
originates in their nature of being subjective, relative, and interacting [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ].
        </p>
        <p>
          A number of studies point out more specific challenges of QRs. Ernst and
Mylopoulus report that software quality aspects are often first considered at late stages of
the development lifecycle, typically assessed by a set of measures applied to the final
product [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ]. Also Cleland-Huang et al. notice that QRs typically are discovered late
in software development projects, and often in an ad hoc fashion [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ]. Borg et al.
identified a number of QR challenges in a two-unit case study in Sweden [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]. The
main finding was again that QRs are discovered late, if they were discovered at all.
Furthermore, the authors found that the developers in the two cases under study
struggled with QR specification; QRs are often specified in vague terms that cannot
be verified. Berntsson Svensson [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] summarizes the main challenges of QRs
presented in the literature as: 1) QRs are poorly understood, 2) QRs are stated informally, 3)
QRs are often contradicting, and 4) QRs are hard to validate.
        </p>
        <p>Functional
suitability
Performance
efficiency
Compatibility
Usability</p>
        <sec id="sec-2-1-1">
          <title>Reliability</title>
        </sec>
        <sec id="sec-2-1-2">
          <title>Security</title>
        </sec>
        <sec id="sec-2-1-3">
          <title>Maintainability Portability</title>
          <p>ISO/IEC 25010</p>
          <p>Completeness,
Correctness, Appropriateness
Time-behaviour,
Resource utilization,
Capacity
Co-existence,
Interoperability
Recognizability,
Learnability, Aesthetics
etc.</p>
          <p>Maturity, Availability,
Fault tolerance,
Recoverability
Confidentiality,
Integrity, Accountability etc.</p>
        </sec>
        <sec id="sec-2-1-4">
          <title>Functionality Usability</title>
        </sec>
        <sec id="sec-2-1-5">
          <title>Reliability Performance</title>
        </sec>
        <sec id="sec-2-1-6">
          <title>Supportability</title>
          <p>+</p>
        </sec>
      </sec>
      <sec id="sec-2-2">
        <title>FURPS+</title>
        <p>Capability, Reusability,
Security
Aesthetics, consistency,
responsiveness etc.</p>
        <sec id="sec-2-2-1">
          <title>Availability, Failure extent,</title>
          <p>Predictability etc.</p>
          <p>Speed, Efficiency,
Throughput, Scalability
etc.</p>
          <p>Testability, Flexibility,
Installability etc.</p>
        </sec>
        <sec id="sec-2-2-2">
          <title>Design, implementation, interface, physical requirements</title>
        </sec>
        <sec id="sec-2-2-3">
          <title>Modularity, Reuseabil</title>
          <p>ity, Testability etc.</p>
          <p>Adaptability,
Installability, Replaceability</p>
          <p>Table 1. Side by side comparison of ISO/IEC 25010 and FURPS+.
2.2</p>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>Verifying quality requirements</title>
        <p>
          Even in organizations that acknowledge the value of QRs, testing them is often a
problem. Berntsson Svensson et al. report in an interview study with 11 companies
that practitioners frequently fail to specify QRs in quantifiable formats that can be
verified by a testing organization [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. In an in-depth study of a specific requirements
specification from one of the companies, Berntsson Svensson et al. find that 56% of
the QRs are expressed with a quantified quality level [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]. The authors note however,
that quantification is not suitable for all types of QRs, e.g., security. Shahrokni and
Feldt address testing of QRs in a safety-critical context (mainly software robustness).
They analyze three requirements specifications at a case company, and show that the
fraction of quantified QRs varies between 5% and 45% [
          <xref ref-type="bibr" rid="ref34">34</xref>
          ]. Also, they report that the
number of ambiguous QRs are overrepresented in the set of non-quantified QRs.
        </p>
        <p>
          In a multi-unit case study by Bjarnason et al., testing QRs is highlighted as one of
16 challenges in RET alignment [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. Some of the reported root causes confirm
findings from previous research, including: 1) specification of testable QRs, and 2)
subjectively judging whether an QR has passed or not. Our previous paper confirmed that
testing QRs is a major RET challenge also in the current case [
          <xref ref-type="bibr" rid="ref28">28</xref>
          ], primarily since
most quality aspects cannot be assessed until the full system under development is in
operation.
        </p>
        <p>
          Several researchers have presented approaches to support testing QRs. The
QUPER model helps development organizations set appropriate quality targets in a
market-driven context, and Berntsson Svensson and Regnell proposed adding also test
results to the model to support verification of QRs [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. Shahrokni and Feldt developed
the framework ROAST [
          <xref ref-type="bibr" rid="ref32">32</xref>
          ] to support elicitation of testable QRs. ROAST supports
refinement of QRs from high level goals to a set of testable requirements, but the
framework focuses on robustness requirements and is not applicable to QRs in
general. Along the same lines, the same Shahrokni and Feldt also presented RobusTest,
another technical framework supporting automated testing of a system’s robustness
properties by generating JUnit test cases [
          <xref ref-type="bibr" rid="ref33">33</xref>
          ]. Cleland-Huang et al. introduced a
concept of “virtual plumblines” to monitor how a system conforms to quality goals
throughout software evolution [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. By specifying the plumblines as quality
assessment models, carefully distributed in the software system, they could then be
reevaluated when a system is changed to verify that quality has not deteriorated.
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Case description</title>
      <p>
        We study a large software project at a governmental agency in Sweden. The first
author has extensive experience as a consultant at the agency, as also reported in our
publication [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ]. In this paper we return to the same case, but particularly focus on
QRs. In line with the previous publication, we refer to the governmental agency as
GOV. GOV administrates subsidies from the European Union within a specific area.
The software development organization within GOV develops a new customized
platform, offering end-users improved subsidies management using a combination of
cloud solutions.
      </p>
      <p>
        The new platform will combine several existing systems, integrating all steps of
the application process into a system-of-systems [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], from the individual request to
the final outgoing payment. The project has the policy to use open source software
when feasible, utilizing solutions such as Java, JBoss, and PostgreSQL. The runtime
environment for several parts of the SoS is Red Hat Linux.
      </p>
      <p>Figure 1 shows an overview of the integration platform under development.
Instead of having all 12 partaking systems communicate directly with each other (a) in
Figure 1, an integration platform approach is used (b), which is detailed in (c). Each
of the 12 systems, as well as each integration between a system and the integration
platform, are specified in a separate requirements document.</p>
      <p>Two of the most important quality attributes for the new SoS are interoperability
and performance. The SoS comprises multiple dependencies, and most external
interfaces will be connected through a common integration platform (cf. b) in Figure 1).
Reliable integration with services that provide data is essential, thus providing high
quality APIs is an explicit requirement on the SoS. Also, as the number of future users
is high, approximately 500 simultaneous users during the peak periods, the network
performance is critical. Additionally, the data validations can sometimes require
extensive resources, which can affect the performance of the IS, e.g., response times.</p>
      <p>We define two key stakeholders of the SoS. End users are domain experts working
at either GOV or county administrative boards across Sweden. They have detailed
knowledge about the application process and assist clients. Clients (i.e., individuals
and enterprises active in the sector) use the SoS to apply for subsidies. Furthermore,
we define the business as the organization at GOV that will use the SoS to fulfil their
operational needs. The IT department of GOV employs business analysts, i.e.,
requirements engineers responsible for elicitation and specification of the requirements,
as well as software developers and system architects.</p>
      <p>Analogous to other governmental agencies in Sweden, new development as well
as operations at GOV is governed by framework agreements with subcontractors.
Several subcontractors develop a large fraction of the SoS together, and also perform
RE and testing activities. The development organization employs approximately 100
development engineers in total. Development of the new SoS is organized as 12
different projects, reflecting the number of systems to be integrated, employing roughly
10-20 engineers per project.</p>
      <p>
        The development process at GOV is based on the Rational Unified Process
complemented by agile practices expressed as six goals: 1) End users and the business
work closely together, 2) High quality through continuous integration and automated
testing, 3) Incremental development enables frequent acceptance testing, 4)
Continuous delivery of system documentation, 5) Development teams are cross-functional
with integrated competences, and 6) Retrospective meetings at every sprint planning.
GOV uses the FURPS+ model to elicit and specify QR [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ].
      </p>
      <p>
        Planning within the development project at GOV is performed on three different
levels. Between 6-12 months, strategic planning, which involves resource allocation
and specification of dates for integration, referred to as milestones. Operational
planning (planning which covers more than 3 sprints). Finally, sprint planning (2 weeks)
deals with detailed planning of what is to be delivered in the sprint. Further details on
the development practices at GOV are reported in our previous paper [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ].
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Research methodology</title>
      <p>This paper primarily documents experiences from the first author. However, we
complement the experiences with an analysis of documents at GOV.
4.1</p>
      <sec id="sec-4-1">
        <title>Experiences of the First Author</title>
        <p>All experiences reported in this paper belong to the first author, and do not necessarily
reflect the views of neither Capgemini nor GOV. Larsson is a software engineering
consultant specializing in testing, especially test processes and test management. He
has worked in software development projects in the public sector for more than a
decade in Sweden and Denmark, with extensive experience of public sector
development of large information systems. Furthermore, he has consulted in RE, mainly
requirements elicitation and analysis. Note however that the experiences shared in this
paper mainly reflect the perspective of a test manager.
4.2</p>
      </sec>
      <sec id="sec-4-2">
        <title>Document analysis</title>
        <p>
          The archival analysis of this work is dominated by qualitative analysis. The second
and third authors independently analyzed project documentation at GOV to find
support for the experiences reported by the first author. The analysis of GOV’s archival
data, also referred to as content analysis, was conducted on a subset of the available
project documentation. We studied all available documents describing the
development process at GOV, and selected one of the twelve systems in the SoS for in-depth
analysis of all parts and requirements. This is complemented by a light-weight
analysis of three additional systems where the requirements are sampled. The emphasis on
what is in the project documents rather than how they were created is inspired with
the concept of artifact-based RE as described by Méndez Fernández and
Penzenstadler [
          <xref ref-type="bibr" rid="ref30">30</xref>
          ].
4.3
        </p>
      </sec>
      <sec id="sec-4-3">
        <title>Threats to validity</title>
        <p>The primary purpose of this paper is to present the first author’s personal experiences.
Consequently, our paper is subject to the general limitations of experience reports;
Generalization from our findings is uncertain. While we do not discuss extrapolating
beyond the case under study, it is relevant to question how general the experiences of
the first author are among his co-workers. Other engineers at GOV might highlight
other challenges, and also prioritize them differently. However, we increase the
validity of our findings by independent data source triangulation, i.e., the second and third
authors performed document analysis to identify supporting evidence in GOV’s
project documentation.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Results and Discussion</title>
      <p>This section first presents findings from the archival analysis, and then reports the
first author’s experiences from testing QRs at GOV.
5.1</p>
      <sec id="sec-5-1">
        <title>QR Information Structure and Information Flow</title>
        <p>The development project under study encompasses an extensive document structure.
Documents at GOV are hierarchically organized in overall development process
guidelines and project documentation for the individual systems. The general quality
of the documents is high, and GOV adheres to good practices such as careful change
management and consistent templates. All documentation is in Swedish.</p>
        <p>Figure 2 shows an overview of the information flow related to QRs at GOV, from
RE to the left, to testing at the right side. First, the business analysts create the Quality
Requirement Baseline (QRB), an overview of the required system qualities, and the
use cases based on 1) the European Union and Swedish legislation, 2) the overall
business model at GOV, and 3) various process models describing high-level usage of
the system under development. The system architects create the system’s architecture
specification, complemented by a set of Interface Descriptions (IDs) for the relevant
inter-system collaboration. The output from the business analysts and system
architects is used as input for the software developers (cf. the lower part of the figure, not
in focus of this study). Apart from the developed software system (cf. the white box),
the test manager uses the QRB and IDs as direct input for testing QRs. The use cases
are also relevant; the use cases must be understood to setup a realistic test
environment, i.e., most QRs cannot be tested in isolation, rather the test manager needs to
establish representative test scenarios in which to verify the QRs.</p>
        <p>As illustrated in Figure 2, two artifact types constitute the key information flow of
QRs from RE to testing. First, the Quality Requirements Baseline (QRB) is a single
document that encompasses the overall qualities of the integrated SoS, i.e., the QRB
is the quality centerpiece from an RE perspective. It is structured according to
FURPS+, with sections for each corresponding category (see Section 2.1). Examples
of system qualities specified in the QRB include: 1) acceptable downtime, 2)
recoverability and startup performance, 3) response times, and 4) the number of simultaneous
users and actions. Second, the Interface Descriptions (ID) refer to a set of documents
specifying how the individual systems shall interact within the SoS. Each interface
description specifies the behavior of both the producing and consuming end, as well
as the transmitted messages. Examples of QRs for the producers include: 1) size and
complexity of the messages, and 2) security. Examples of QRs for the consumers
include: computational performance, e.g., 1) number of messages processed per
second, and 2) time behavior, e.g., time to validate received data.</p>
        <p>
          As a majority of GOV’s QRs are specified in the QRB and the IDs, we restrict the
discussion in the paper to these two artifact types. This focus mirrors the approach
taken by test managers when planning verification of GOV’s quality goals. There are
about the same number of FRs as there are QRs in the QRB and IDs (note that the ‘F’
in FURPS+ represents “Functionality”). The FRs are typically high-level textual
requirements in natural language, e.g. “The system should handle payments of
environmental support”. The QRs are written in a similar manner, e.g., “Response time
should not exceed 1 second when searching and registering information on a
particular issue”. While all FURPS+ categories are represented in the QRB usability and
implementation/architectural requirements are the biggest (i.e., ‘U’ and ‘+’ in
FURPS+). The level of QR quantification varies depending on type, as reported also
in previous work [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]. The reliability and efficiency requirements (i.e., ‘R’ and ‘P’ in
FURPS+) are often quantified with an explicit target measure, but the other categories
are expressed in less precise terms. For the IDs, there is a focus on efficiency and
reliability (i.e., ‘E’ and R in FURPS+). Interestingly, despite specifying interaction
within a SoS of information systems, the amount of security requirements is low
(security is part of the ‘F’ in FURPS+).
5.2
        </p>
      </sec>
      <sec id="sec-5-2">
        <title>Experienced challenges in testing quality requirements</title>
        <p>The QRB, the central quality document, provides an overall structure to work with
QRs at GOV. The categorization of QRs into FURPS+ helps the test managers to
identify the key QRs of each category (e.g., usability and reliability) and to plan the
verification activities accordingly. Still, testing QRs is far from trivial at GOV.</p>
        <p>The IDs, specifying integration within the SoS, are the fundamental artifacts to
verify QRs related to the data flows. Early specification of data flows enables early
planning of QR verification, but requires cooperation between the system architects
and test managers. While some of the IDs reached a stable state early on in the
project, others are stabilized later in the process. Hence, as the requirements change, the
test plan must be updated to reflect the changes.</p>
        <p>Typically, the IDs contain a subset of QR from the QRB, but elaborated for the
specific interface. Not all QR from the QRB are applicable though, e.g., usability (as
the IDs do not describe any user interfaces). On the other hand, other QRs become
more important, e.g., efficiency (as the IDs are specifying integration into a SoS,
covering network throughput, response times etc.).</p>
        <p>Challenge 1: The RE documents evolve while testing is planned and ongoing.
Challenge 2: Test managers need to understand the business.</p>
        <p>Challenge 3: QRs are not quantified.</p>
        <p>Challenge 4: QRs are not prioritized.</p>
        <p>Challenge 5: Hard to simulate all operational states.</p>
        <p>Table 2. Main challenges (Ch 1-5) in testing quality requirements at GOV.</p>
        <p>
          Table 2 summarizes our experienced challenges of testing QRs. First, the QRB and
the ID are repeatedly updated during development, thus the test managers do not
know when the artifact is stable. As a consequence, early test plans might target the
wrong quality goals, or miss out on verifying entire quality aspects. This confirms
previous research, stating that QRs are often discovered late during development [
          <xref ref-type="bibr" rid="ref13 ref23">13,
23</xref>
          ]. The challenge involved in awaiting a sufficient set of QRs (i.e., enough
requirements to enable test planning) also resonates with previous research on dependencies
among QRs [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. Furthermore, the documents are not always properly maintained, i.e.,
the artifacts do not necessarily reflect the latest quality targets set by for instance the
business analysts or the system architect. Inadequate maintenance of requirements
documents was also reported as a RET challenge by Bjarnason et al. [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ].
        </p>
        <p>
          Second, to plan the verification, the test managers must have a broad
understanding of the business. The QRs can typically not be interpreted in isolation. Rather, the
test manager must understand the domain and possess insights in the data flow
through the SoS. This is further complicated by the fact that the QRs are not specified
in their context. Rather, they are written as part of the QRB or the ID and in a
structure related to the type of requirement rather than their relation to the other
requirements and parts of the system. Consequently, the testers must identify and understand
the context themselves. In addition, the importance of domain knowledge to software
testing is well-known in the literature [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]. At GOV, this challenge is further
amplified by the high proportion of consultants involved in software testing; as individual
consultants are replaced, important practical know-how might get lost, in line with
previous research on risks of tacit knowledge [
          <xref ref-type="bibr" rid="ref31">31</xref>
          ].
        </p>
        <p>
          Third, QRs are often not quantified, thus it is difficult to generate appropriate test
data. Vague QRs is a frequently reported issue in RE research [
          <xref ref-type="bibr" rid="ref19 ref6">6, 19</xref>
          ], and without
quantification QRs are often not verifiable. Looking at the QRs in the QRB and IDs,
performance requirements and sometimes reliability requirements are quantified.
Typically with an exact value, rather than a scale. While some types of QRs do not
need explicit numbers, e.g., usability and maintainability, having explicit
quantification of QRs help to eliminate subjectivity during testing, in line with observations by
Chung et al. [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ]. Indeed, generating test data to verify a software system is a difficult
research topic in itself [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ], and in conjunction with vague requirements the challenge
is further intensified. On the other hand, some of the levels that actually are specified
for QRs at GOV are merely early guess estimates that must be updated later, forcing
re-planning of testing.
        </p>
        <p>
          Fourth, QRs are not prioritized. As a set of QRs typically involves
interdependencies [
          <xref ref-type="bibr" rid="ref13 ref4 ref9">4, 9, 13</xref>
          ], understanding quality trade-offs is fundamental. While there are
policies regarding risk assessments at GOV, they are not always followed. Without input
on priorities and risks, test plans become more sensitive to changes as mitigation
plans are more difficult to create.
        </p>
        <p>Fifth, it is hard to generate test data that reflects the various operational states of
the future SoS, as required for e.g. load and performance testing. The QRs expressed
in the IDs put constraints that require the test organization to simulate various states
using stubs and mock objects; different QRs need different operational states to be
verified, and verification of certain QRs might require considerable provocation of the
SoS. Some states are difficult to create in a lab environment, e.g. user interaction that
returns a specific expected result within a given timeframe, simultaneously as real
time data is exchanged over some interfaces with other systems. Another example is
verification of complex business logic that is run concurrently in parallel activities.
The validation of transmitted messages within the SoS requires heavy read and write
to databases, which affects response times of systems retrieving data from the same
databases. Currently, the QRs do not specify which use cases can run in parallel or
what the quality level should be under such constrained conditions, making both
design of test cases and evaluation of test results challenging.
5.3</p>
      </sec>
      <sec id="sec-5-3">
        <title>Discussion and future research</title>
        <p>
          GOV is already addressing the five reported challenges to some extent. One of the
main initiatives is to get different experts and roles to work closer together. Inspired
by integrated RE [
          <xref ref-type="bibr" rid="ref36">36</xref>
          ], there is an ongoing discussion on a more iterative approach to
RE. Specifying quantitative targets to QRs before any related source code has been
developed often reveals the inferiority of such an approach, as the QRs typically need
subsequent updates (Ch 1). The literature emphasizes continuous maintenance of
requirements rather than big changes [
          <xref ref-type="bibr" rid="ref29">29</xref>
          ], and a constant dialogue between
requirements engineers and testers [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ], which for GOV could turn the QRB and IDs into
“living documents”, i.e., artifacts that continuously evolve.
        </p>
        <p>
          Transferring knowledge of various operational scenarios at GOV to the
development project (including the testing activities (Ch 2)) should be facilitated further.
While Bjarnason et al. state the importance of communication between requirements
engineers and testers [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ], we highlight that knowledge sharing between system
architects and test managers is equally important at GOV, as the architecture is
fundamental input to testing QRs (cf. Figure 2). The interleaving of RE and architecture, i.e.,
the twin peaks model [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], has attracted much research, but we argue that also the test
perspective should be represented in the twin peaks model (resulting in a “triplet
peak” model) to support the test managers’ system understanding and help specifying
testable QRs. A straightforward step toward alignment of RE, architecture, and testing
perspectives at GOV could be to schedule additional joint meetings and workshops,
especially in the beginning of projects.
        </p>
        <p>
          One solution proposal from the literature is the QUPER model, an approach to
support setting quality targets [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. In the QUPER model, quality is modelled as a
nonlinear continuum with specific breakpoints for utility, differentiation, and saturation.
By visualizing the quality targets and the different breakpoints, QUPER could
stimulate discussion and quantification of QRs at GOV (Ch 3). While QUPER was
developed for RE in a market-driven context, the model can still support discussions on
quality targets for products without explicit competitors. Figure 3 illustrates how
QUPER can support setting a target for a response time QR.
        </p>
        <p>
          A common trade-off in software engineering is having complete information
available when you start an activity versus being responsive to a changing
environment. GOV faces the same challenge, as explained in Ch 1: “The RE documents
evolve while testing is planned and ongoing” and Ch 4 “QRs are not prioritized”.
However, not all QRs have an equal impact on the system [
          <xref ref-type="bibr" rid="ref10 ref16">10, 16</xref>
          ]. Some might be
more fundamental and impact several parts, more significantly changing
implementation and hence also testing. Typically, QRs have a more profound impact than FRs,
but also among the QRs, their impact is different. Chen et al. introduced the concept
of architecturally significant requirements to describe this phenomenon [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ].
However, the overall problem to identify the significant requirements is not well researched
and it is specifically not clear how to identify the significant QRs [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. We would like
to further investigate techniques and methodologies to identify “test significant” QRs.
The activity should focus and prioritize the requirements that are the most critical to
fully specify early in the project life-cycle.
        </p>
        <p>
          Verification of some QRs at GOV requires monitoring various aspects of the SoS
over time. However, interpreting the results of monitoring is still not a simple task.
Performance and load testing of an interface not only require monitoring of both the
producing and consuming sider; As the business flows gets more complex, the
number of interfaces grows, thus monitoring of other applications must also be set up
(related to Ch 5). For example, monitoring of the database server has proven to be
fundamental. Especially in the iterative integration of more systems into the
integration platform, values need to be monitored and regression tests run not once but
several times as the system changes. Another possibility to verify QRs over time at GOV
could be to implement “virtual plumblines” as suggested by Cleland-Huang et al.
[
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. In the GOV context, this could for example be used to continuously monitor
performance goals as the system is developed; when a certain system quality
deteriorates, such an alarm system could provide the test leader with early warnings. By
employing practices from integrated RE [
          <xref ref-type="bibr" rid="ref36">36</xref>
          ] together with data monitoring tools,
GOV hopes to also see improvements in the area of Ch 1 (changing requirements) and
Ch 2 (business understanding of test managers).
6
        </p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Conclusion</title>
      <p>This paper reports the first author’s experiences from testing QRs at a large
governmental SoS development project in Sweden. We highlight five challenges involved in
testing QRs, and complement the experiences by supporting evidence from an
analysis of project documentation. The five main challenges in testing QRs at GOV are: 1)
RE documentation evolves during testing, 2) test managers need extensive
understanding of the business, 3) QRs are not quantified, 4) QRs are not prioritized, and 5)
simulating all operational states is difficult, challenging testing prior to deployment.</p>
      <p>To help GOV tackle these challenges, we match them with solution proposals
from the research literature. Evolving QRs is a well-known challenge in software
engineering, and could be addressed by an integrated RE approach, i.e., plan for RE to
continue throughout the entire development project (Ch 1). Strengthened
communication between the stakeholders from the “twin peaks” (RE and architecture) and the
test managers would support RET knowledge transfer and specification of testable
QRs (Ch 2). Moreover, improved communication among roles, e.g. business,
architects and test managers, could help identifying architecturally significant
requirements, e.g., to prioritize QRs that have considerable impact on the test planning (Ch
4). The QUPER model could be a tool to stimulate discussion on quality levels and
support quantification (Ch 3). GOV already monitors several quality measures, but
the process could be further inspired by “virtual plumblines” to quickly detect quality
deterioration (Ch 5).</p>
      <p>Future work could systematically explore which of the solution proposals GOV
considers most promising to support testing QRs, and also try to implement and
evaluate the corresponding process improvements.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Ameller</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ayala</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cabot</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Franch</surname>
            ,
            <given-names>X..</given-names>
          </string-name>
          <article-title>Non-functional Requirements in Architectural Decision Making</article-title>
          .
          <source>IEEE Software</source>
          ,
          <volume>30</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>61</fpage>
          -
          <lpage>67</lpage>
          (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Anand</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burke</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Clark</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , Cohen,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Grieskamp</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            ,
            <surname>Harman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Harrold</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>McMinn</surname>
          </string-name>
          ,
          <string-name>
            <surname>P.</surname>
          </string-name>
          <article-title>An Orchestrated Survey of Methodologies for Automated Software Test Case Generation</article-title>
          ,
          <source>In Journal of Systems and Software</source>
          ,
          <volume>86</volume>
          (
          <issue>8</issue>
          ), pp.
          <fpage>1978</fpage>
          -
          <lpage>2001</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Axelsson</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>Systems-of-Systems for Border-Crossing Innovation in the Digitized Society - A Strategic Research and Innovation Agenda for Sweden</article-title>
          ,
          <source>SICS Technical Report T2015:07</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Berntsson</surname>
            <given-names>Svensson</given-names>
          </string-name>
          ,
          <string-name>
            <surname>R.</surname>
          </string-name>
          <article-title>Supporting Release Planning of Quality Requirements: The Quality Performance Model</article-title>
          ,
          <source>PhD Thesis</source>
          , Lund University,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Berntsson</surname>
            <given-names>Svensson</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Gorschek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            ,
            <surname>Regnell</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Torkar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Shahrokni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Feldt</surname>
          </string-name>
          , R. Quality
          <source>Requirements in Industrial Practice - An Extended Interview Study at Eleven Companies, Transactions on Software Engineering</source>
          ,
          <volume>38</volume>
          (
          <issue>4</issue>
          ), pp.
          <fpage>923</fpage>
          -
          <lpage>935</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Berntsson</surname>
            <given-names>Svensson</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Olsson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            , and
            <surname>Regnell</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          <article-title>An Investigation of how Quality Requirements are Specified in Industrial Practice</article-title>
          .
          <source>Information and Software Technology</source>
          ,
          <volume>55</volume>
          , pp.
          <fpage>1224</fpage>
          -
          <lpage>1236</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Berntsson</surname>
            <given-names>Svensson</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            , and
            <surname>Regnell</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          <article-title>Aligning Quality Requirements and Test Results with QUPER's Roadmap View for Improved High-Level Decision-Making</article-title>
          ,
          <source>In Proc. of the 2nd International Workshop on Requirements and Testing</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Bjarnason</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Runeson</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Borg</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Unterkalmsteiner</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Engström</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Regnell</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sabaliauskaite</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Loconsole</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gorschek</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Feldt</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Challenges</surname>
          </string-name>
          and
          <article-title>Practices in Aligning Requirements with Verification and Validation: A Case Study of Six Companies</article-title>
          ,
          <source>Empirical Software Engineering</source>
          ,
          <volume>19</volume>
          (
          <issue>6</issue>
          ),
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Borg</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yong</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carlshamre</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Sandahl</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <article-title>The Bad Conscience of Requirements Engineering: An Investigation in Real-World Treatment of Non-Functional Requirements</article-title>
          ,
          <source>In Proc. of the 3rd Conference on Software Engineering and Practice in Sweden</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ali</surname>
            <given-names>Babar</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Nuseibeh</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          <article-title>Characterizing Architecturally Significant Requirements</article-title>
          .
          <source>IEEE Software</source>
          ,
          <volume>30</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>38</fpage>
          -
          <lpage>45</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Cleland-Huang</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hanmer</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Supakkul</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Mirakhorli</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>The Twin Peaks of Requirements and Architecture</article-title>
          , IEEE Software,
          <volume>30</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>24</fpage>
          -
          <lpage>29</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Cleland-Huang</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marrero</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Berenbach</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Goal-Centric Traceability</surname>
          </string-name>
          :
          <article-title>Using Virtual Plumblines to Maintain Critical Systemic Qualities</article-title>
          .
          <source>Transaction on Software Engineering</source>
          ,
          <volume>34</volume>
          (
          <issue>5</issue>
          ), pp.
          <fpage>685</fpage>
          -
          <lpage>699</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Cleland-Huang</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Settimi</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zou</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Sole</surname>
          </string-name>
          , P.
          <source>Automated Classification of NonFunctional Requirements</source>
          , Requirements Engineering,
          <volume>12</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>103</fpage>
          -
          <lpage>120</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Chung</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          , and do Prado Leite J.C.S.,
          <string-name>
            <surname>On</surname>
            Non-Functional Requirements in Software Engineering, In Conceptual Modelling: Foundations and Applications, Borgida,
            <given-names>A.T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chaudhri</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Yu</surname>
          </string-name>
          , E. (Eds), pp
          <fpage>363</fpage>
          -
          <lpage>379</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Chung</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nixon</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yu</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Mylopoulos</surname>
          </string-name>
          ,
          <source>J. NFR in Software Engineering</source>
          , Kluwer Academic Publishers,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Clements</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Bass</surname>
          </string-name>
          , Len.
          <source>The Business Goals Viewpoint. IEEE software 27(6)</source>
          ,
          <fpage>38</fpage>
          -
          <lpage>45</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Cysneiros</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>do Prado Leite J.C.S. Non-Functional</surname>
            <given-names>Requirements</given-names>
          </string-name>
          : From Elicitation to Conceptual Models,
          <source>Transactions on Software Engineering</source>
          ,
          <volume>30</volume>
          (
          <issue>5</issue>
          ), pp.
          <fpage>328</fpage>
          -
          <lpage>249</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>de la Vara</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wnuk</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Berntsson</surname>
            <given-names>Svensson</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Sánchez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            , and
            <surname>Regnell</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          <article-title>An Empirical Study on the Importance of Quality Requirements in Industry</article-title>
          ,
          <source>In Proc. of the 23rd International Conference on Software Engineering and Knowledge Engineering</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Doerr</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kerkow</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Koenig</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Olsson</surname>
            ,
            <given-names>T</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Suzuki</surname>
          </string-name>
          ,
          <string-name>
            <surname>T.</surname>
          </string-name>
          Non
          <article-title>-functional Requirements in Industry - Three Case Studies Adopting an Experience-based NFR Method</article-title>
          .
          <source>In Proc. 13th International Conference on Requirements Engineering</source>
          , pp.
          <fpage>373</fpage>
          -
          <lpage>382</lpage>
          .
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Dustin</surname>
          </string-name>
          , E. Effective Software Testing: 50 Ways to Improve Your Software Testing,
          <string-name>
            <surname>Addison-Wesley</surname>
          </string-name>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Ebert</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <article-title>Putting Requirements Management into Praxis: Dealing with Non-Functional Requirements, Information</article-title>
          and Software Technology,
          <volume>40</volume>
          (
          <issue>3</issue>
          ), pp.
          <fpage>175</fpage>
          -
          <lpage>185</lpage>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Eckhard</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , Méndez Fernández D., and
          <article-title>Vogelsang A. How to Specify Non-functional Requirements to Support Seamless Modeling? A Study Design and Preliminary Results</article-title>
          ,
          <source>In Proc. of the 9th International Symposium on Empirical Software Engineering and Measurement</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Ernst</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Mylopoulus</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>On the Perception of Software Quality Requirements During the Project Lifecycle</article-title>
          ,
          <source>In the Proc. of the 16th International Working Conference on Requirements Engineering: Foundation for Software Quality</source>
          , pp.
          <fpage>143</fpage>
          -
          <lpage>157</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Glinz</surname>
          </string-name>
          , M. On
          <string-name>
            <surname>Non-Functional</surname>
            <given-names>Requirements</given-names>
          </string-name>
          ,
          <source>In Proc. of the 15th International Requirements Engineering Conference</source>
          , pp.
          <fpage>21</fpage>
          -
          <lpage>26</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Grady</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <article-title>Practical Software Metrics for Project Management</article-title>
          and
          <string-name>
            <given-names>Process</given-names>
            <surname>Improvement</surname>
          </string-name>
          . Prentice Hall,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26. ISO/IEC 25010:
          <year>2011</year>
          ,
          <source>Systems and Software Engineering - Systems and Software Quality Requirements and Evaluation (SQuaRE)</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Jarke</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Loucopoulos</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lyytinen</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mylopoulos</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Robinson</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          <source>The Brave New World of Design Requirements, Information Systems</source>
          ,
          <volume>36</volume>
          (
          <issue>7</issue>
          ), pp.
          <fpage>992</fpage>
          -
          <lpage>1008</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Larsson</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Borg</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>Revisiting the Challenges in Aligning RE and V&amp;V: Experiences from the Public Sector</article-title>
          ,
          <source>In Proc. of the 1st International Workshop on Requirements and Testing</source>
          , pp.
          <fpage>4</fpage>
          -
          <lpage>11</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , Zhang, H.,
          <string-name>
            <surname>Zhu</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jeffery</surname>
            ,
            <given-names>R</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          <article-title>Preliminary Results of a Systematic Review on Requirements Evolution</article-title>
          ,
          <source>In Proc. of the 16th International Conference on Evaluation &amp; Assessment in Software Engineering</source>
          , pp.
          <fpage>12</fpage>
          -
          <lpage>21</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <given-names>Méndez</given-names>
            <surname>Fernández</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D</given-names>
            , and
            <surname>Penzenstadler</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          <article-title>Artefact-based Requirements Engineering: The AMDiRE Approach</article-title>
          , Requirements Engineering,
          <volume>20</volume>
          (
          <issue>4</issue>
          ), pp.
          <fpage>405</fpage>
          -
          <lpage>434</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Ryan</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , and
          <string-name>
            <given-names>O</given-names>
            <surname>'Conner</surname>
          </string-name>
          ,
          <string-name>
            <surname>R.</surname>
          </string-name>
          <article-title>Acquiring and Sharing Tacit Knowledge in Software Development Teams: An Empirical Study</article-title>
          ,
          <source>Information and Software Technology</source>
          ,
          <volume>55</volume>
          (
          <issue>9</issue>
          ), pp.
          <fpage>1614</fpage>
          -
          <lpage>1624</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32.
          <string-name>
            <surname>Shahrokni</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Feldt</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Towards</surname>
          </string-name>
          <article-title>a Framework for Specifying Software Robustness Requirements based on Patterns</article-title>
          ,
          <source>In Proc. of the 16th International Working Conference on Requirements Engineering: Foundation for Software Quality</source>
          , pp.
          <fpage>79</fpage>
          -
          <lpage>84</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          33.
          <string-name>
            <surname>Shahrokni</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Feldt</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <article-title>RobusTest: A Framework for Automated Testing of Software Robustness</article-title>
          ,
          <source>In Proc. of the 18th Asia-Pacific Software Engineering Conference</source>
          , pp.
          <fpage>171</fpage>
          -
          <lpage>178</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          34.
          <string-name>
            <surname>Shahrokni</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Feldt</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <article-title>Industrial Challenges with Quality Requirements in Safety Critical Software Systems</article-title>
          ,
          <source>In Proc. of the 39th Euromicro Conference Series on Software Engineering and Advanced Applications</source>
          , pp.
          <fpage>78</fpage>
          -
          <lpage>81</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          35.
          <string-name>
            <surname>Stapel</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Schneider</surname>
          </string-name>
          ,
          <source>K. Managing Knowledge on Communication and Information Flow in Global Software Projects. Expert Systems</source>
          , doi: 10.1111/j.1468-
          <fpage>0394</fpage>
          .
          <year>2012</year>
          .
          <volume>00649</volume>
          .x,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          36.
          <string-name>
            <surname>Sommerville</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          <article-title>Integrated Requirements Engineering: A Tutorial</article-title>
          .
          <source>IEEE Software</source>
          ,
          <volume>22</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>16</fpage>
          -
          <lpage>23</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>