The Lack of Shared Understanding of Non-Functional Requirements in Continuous Software Engineering: Accidental or Essential?
Colin Werner, Ze Shi Li, Neil Ernst, Daniela Damian

TL;DR
This study investigates how small organizations practicing continuous software engineering manage non-functional requirements, revealing that most misunderstandings leading to rework are avoidable and proposing strategies to improve shared understanding.
Contribution
It provides an empirical analysis of factors affecting shared understanding of NFRs in small CSE organizations and offers mitigation strategies based on case study insights.
Findings
78% of NFR-related rework was due to avoidable misunderstandings
Factors like lack of domain knowledge and communication issues contribute to misunderstandings
Recommended strategies include better requirements management and knowledge sharing
Abstract
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
