DOI: 10.1002/smr.70166 ISSN: 2047-7473

Requirements Engineering Challenges and Solutions in Open‐Source Software Development

Fazli Rabi, Muhammad Ilyas, Nasir Rashid, Abid Ghaffar

ABSTRACT

In the rapidly evolving field of software development, open‐source software (OSS) has gained significant momentum due to its collaborative nature and emphasis on knowledge sharing. OSS source code is available under a license that allows users to inspect, improve, and modify it. In OSS, requirements are often created through informal online discussions, developer brainstorming, feature requests, and user feedback. Ambiguous or conflicting requirements can harm the software development process. The requirements engineering (RE) process in OSS faces several challenges, such as incomplete and ambiguous requirements, poor requirements prioritization, and conflicts among stakeholders over requirements. This research aims to identify and validate key challenges and their solutions within the RE process for open‐source software development (OSSD). A Multivocal Literature Review (MLR) was conducted using a customized search string aligned with our research questions (RQs). Following the MLR, an empirical study using a questionnaire survey (QS) was conducted to validate the findings. The results from the QS align with the conclusions drawn from the MLR. We identified a total of nine challenges across 47 selected articles (37 formal literature, 10 gray literature). To address these challenges, 66 practices/solutions are proposed. The best practices include involving developers and users in the RE process, along with formal requirements documentation and prioritization. The findings from this research will help OSS practitioners and academic researchers gain insights into the RE process, thereby improving it within OSS projects.

More from our Archive