Litcius/Paper detail

How do requirements evolve during elicitation? An empirical study combining interviews and app store analysis

Alessio Ferrari, Paola Spoletini, Sourav Debnath

2022Requirements Engineering20 citationsDOIOpen Access PDF

Abstract

Abstract Requirements are elicited from the customer and other stakeholders through an iterative process of interviews, prototyping, and other interactive sessions. Then, requirements can be further extended, based on the analysis of the features of competing products available on the market. Understanding how this process takes place can help to identify the contribution of the different elicitation phases, thereby allowing requirements analysts to better distribute their resources. In this work, we empirically study in which way requirements get transformed from initial ideas into documented needs, and then evolve based on the inspiration coming from similar products. To this end, we select 30 subjects that act as requirements analysts, and we perform interview-based elicitation sessions with a fictional customer. After the sessions, the analysts produce a first set of requirements for the system. Then, they are required to search similar products in the app stores and extend the requirements, inspired by the identified apps. The requirements documented at each step are evaluated, to assess to which extent and in which way the initial idea evolved throughout the process. Our results show that only between 30% and 38% of the requirements produced after the interviews include content that can be fully traced to initial customer’s ideas. The rest of the content is dedicated to new requirements, and up to 21% of it belongs to completely novel topics. Furthermore, up to 42% of the requirements inspired by the app stores cover additional features compared to the ones identified after the interviews. The results empirically show that requirements are not elicited in strict sense, but actually co-created through interviews, with analysts playing a crucial role in the process. In addition, we show evidence that app store-inspired elicitation can be particularly beneficial to complete the requirements.

Topics & Concepts

Requirements elicitationRequirements analysisRequirements managementComputer scienceRequirements engineeringRequirementUser requirements documentProcess (computing)Business requirementsSet (abstract data type)System requirementsSoftware requirements specificationFunctional requirementNon-functional requirementCover (algebra)Requirement prioritizationWorld Wide WebProcess managementSoftware engineeringWork in processEngineeringBusiness processSoftwareOperations managementSoftware developmentSoftware constructionMechanical engineeringOperating systemSoftware designProgramming languageSoftware Engineering Techniques and PracticesSoftware Engineering ResearchAdvanced Software Engineering Methodologies