Continuously Managing NFRs: Opportunities and Challenges in Practice

03/12/2021
by   Colin Werner, et al.
0

Non-functional requirements (NFR), which include performance, availability, and maintainability, are vitally important to overall software quality. However, research has shown NFRs are, in practice, poorly defined and difficult to verify. Continuous software engineering practices, which extend agile practices, emphasize fast paced, automated, and rapid release of software that poses additional challenges to handling NFRs. In this multi-case study we empirically investigated how three organizations, for which NFRs are paramount to their business survival, manage NFRs in their continuous practices. We describe four practices these companies use to manage NFRs, such as offloading NFRs to cloud providers or the use of metrics and continuous monitoring, both of which enable almost real-time feedback on managing the NFRs. However, managing NFRs comes at a cost as we also identified a number of challenges these organizations face while managing NFRs in their continuous software engineering practices. For example, the organizations in our study were able to realize an NFR by strategically and heavily investing in configuration management and infrastructure as code, in order to offload the responsibility of NFRs; however, this offloading implied potential loss of control. Our discussion and key research implications show the opportunities, trade-offs, and importance of the unique give-and-take relationship between continuous software engineering and NFRs. Research artifacts may be found at https://doi.org/10.5281/zenodo.3376342.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/03/2020

The Lack of Shared Understanding of Non-Functional Requirements in Continuous Software Engineering: Accidental or Essential?

Building shared understanding of requirements is key to ensuring downstr...
research
05/18/2022

A Case Study of Building Shared Understanding of Non-Functional Requirements in a Remote Software Organization

Building a shared understanding of non-functional requirements (NFRs) is...
research
06/18/2020

Identification of Practices and Capabilities in API Management: A Systematic Literature Review

Traditional organizations are increasingly becoming software producing o...
research
02/27/2023

Mapping and Comparing Data Governance Frameworks: A benchmarking exercise to inform global data governance deliberations

Data has become a critical resource for organizations and society. Yet, ...
research
04/09/2021

Managing Traceability Information Models: Not such a simple task after all?

Practitioners are poorly supported by the scientific literature when man...
research
07/29/2022

What to share, when, and where: balancing the objectives and complexities of open source software contributions

Context: Software-intensive organizations' rationale for sharing Open So...
research
03/23/2022

Continuous Software Engineering in the Wild

Software is becoming a critical component of most products and organizat...

Please sign up or login with your details

Forgot password? Click here to reset