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

07/03/2020
by   Colin Werner, et al.
0

Building shared understanding of requirements is key to ensuring downstream software activities are efficient and effective. However, in continuous software engineering (CSE) some lack of shared understanding is an expected, and essential, part of a rapid feedback learning cycle. At the same time, there is a key trade-off with avoidable costs, such as rework, that come from accidental gaps in shared understanding. This trade-off is even more challenging for non-functional requirements (NFRs), which have significant implications for product success. Comprehending and managing NFRs is especially difficult in small, agile organizations. How such organizations manage shared understanding of NFRs in CSE is understudied. We conducted a case study of three small organizations scaling up CSE to further understand and identify factors that contribute to lack of shared understanding of NFRs, and its relationship to rework. Our in-depth analysis identified 41 NFR-related software tasks as rework due to a lack of shared understanding of NFRs. Of these 41 tasks 78 understanding of NFRs. Using a mixed-methods approach we identify factors that contribute to lack of shared understanding of NFRs, such as the lack of domain knowledge, rapid pace of change, and cross-organizational communication problems. We also identify recommended strategies to mitigate lack of shared understanding through more effective management of requirements knowledge in such organizations. We conclude by discussing the complex relationship between shared understanding of requirements, rework and, CSE.

READ FULL TEXT

page 1

page 3

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
03/12/2021

Continuously Managing NFRs: Opportunities and Challenges in Practice

Non-functional requirements (NFR), which include performance, availabili...
research
06/12/2023

Motivational models for validating agile requirements in Software Engineering subjects

This paper describes how motivational models can be used to cross check ...
research
02/08/2021

Moderator Factors of Software Security and Performance Verification

Context: Security and performance (S P) are critical non-functional re...
research
04/05/2023

Human Error Management in Requirements Engineering: Should We Fix the People, the Processes, or the Environment?

Context: Software development is human-centric and vulnerable to human e...
research
11/21/2017

Direct and mediating influences of user-developer perception gaps in requirements understanding on user participation

User participation is considered an effective way to conduct requirement...

Please sign up or login with your details

Forgot password? Click here to reset