IEEE Access | 2021

A Qualitative Study on Non-Functional Requirements in Agile Software Development

 
 

Abstract


Context: Widespread use of agile software development (ASD) methods can be observed nowadays. Non-functional requirements (NFRs) are often reported to be a problematic issue for agile projects, since ASD methods tend to neglect NFRs while focusing on incremental delivery of functional features. Despite that, only very few studies have explored the requirements engineering practices used in ASD and dedicated particularly to NFRs. Objective: We aimed to identify and investigate the practices used in industrial ASD projects to identify, elicit and document NFRs. Method: We conducted a systematic literature review (SLR) and used its findings to prepare an interview guide. We then conducted a series of semi-structured interviews with 10 experienced practitioners. Results: The SLR revealed a number of strategies related to the timing of NFR identification as well as 13 elicitation practices and 20 documentation techniques. At least some of these findings show discrepancies between ASD theory and practice. The interviews provided a more in-depth understanding of the practices used, and their context. The main findings from the interviews include: practitioners’ attempts to start identifying NFRs early in the project, a lack of elicitation techniques aimed at NFRs only, and different choices about documentation techniques, including the additional techniques introduced to cope specifically with NFRs. Conclusions: It was not confirmed that requirements engineering activities related to NFRs are perceived by ASD practitioners as a problem, as they developed effective practices to deal with this issue. Moreover, our findings show that different approaches to NFRs can be used and give satisfactory results.

Volume 9
Pages 40458-40475
DOI 10.1109/ACCESS.2021.3064424
Language English
Journal IEEE Access

Full Text