Aug 2026· Journal of Software: Evolution and Process· Vol 38· 0 citations· 58 references
TL;DR
This research aims to identify and validate key challenges and their solutions within the RE process for open‐source software development (OSSD) and propose best practices to address these challenges.
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.
The objective of this research is to obtain feedback from industry experts to understand the challenges related to the employability of future-ready software engineering undergraduate students and employs a qualitative study to gather the views of the experts.
Nor Azliana Akmal Jamaludin, Najjah Salwa Abd Razak, Ummul Fahri Abdul Rauf et al.· JOIV: International Journal...· 0 citations
Algorithm-Driven Development is introduced, a methodology developed from industrial practice to address recurring challenges in translating requirements into reliable, testable, and maintainable software behavior that provides systematic coverage of functional scenarios from the outset of development.
Philippe Jawish, Pierre Evrard, Alexandre Lemerle et al.· Journal of Systems and Softw...· 0 citations
A lifecycle-aware framework that integrates quantitative software quality assessment with Large Language Model (LLM)-based code refinement is proposed and the potential of metric-driven LLM feedback for research software quality improvement is demonstrated while highlighting its inherently multi-objective nature.
Nafis Tanveer Islam, N. Soveizi, Yutong Li et al.· 0 citations
The results show that RSEs most often improved code review by using pull requests, defining review expectations, adding lightweight process steps, and using tools and automation to reduce effort and increase consistency.
Md. Ariful Islam Malik, Jeffrey C. Carver, Nasir U. Eisty· Practice and Experience in A...· 0 citations
In Agile software development (ASD) projects requirements are incrementally and iteratively defined, with customer needs frequently expressed in User Stories (USs). However, minimal documentation has been identified as a key challenge for Requirements Engineering (RE) in ASD. Including too little information makes tracing and estimating USs more difficult, while including too many details limit the developer in their solution. In addition, development teams mainly rely on information contained in issue tracking systems, rather than speaking with their customer on a regular basis. To summarize, development teams are highly dependent on few artifacts.
This PhD dissertation studies how development teams create and use RE artifacts such as requirements and acceptance criteria, guided by the following main research question: How are Requirements Engineering artifacts used in Agile Software Development?
First, we introduce the RE4SA model as a means to support communication between requirements engineers and software architects, recognizing that requirements and architectural components should be designed in tandem. In practice, however, this alignment is difficult to achieve, often due to a lack of concrete guidance in existing models. The RE4SA model addresses this by expressing requirements as epic stories and USs, which are linked to architectural modules and features, respectively. The model is further instantiated as RE4SA-Agile, which connects common agile artifacts and introduces metrics to measure the alignment and granularity between requirements and architecture. These metrics help identify problematic situations, such as when the granularity of requirements or architectural components is inconsistent with the norm.
Then, we focus on the definition of key concepts in the field of RE. Concepts, such as those in the RE4SA model, are often interpreted in different ways. To clarify fundamental concepts in software engineering, we propose the Concept Definition Review (CDR) method. The CDR method was formalized in a second iteration, in which we defined and compared the terms “non-functional requirement” and “quality requirement”, which revealed the existence of dozens of definitions, many nearly identical, and highlighting the importance of systematic conceptual analysis for effective communication.
We also explored the impact of RE artifacts on efficiency of agile teams, focusing on the use of USs and acceptance criteria by teams. Our empirical studies show that while the quality of USs does not directly correlate with timely completion, the existence of acceptance criteria does improve efficiency; we found evidence for an increase in on-time completion and reduced completion time. Our Canonical Action Research study shows that interventions based on the Quality User Story (QUS) framework can improve the quality of USs, but practitioners sometimes find value in deviating from strict guidelines. This suggests that while guidelines are useful, they must be adaptable to the context and practitioner needs. Finally, the challenge of specifying non-functional requirements (NFRs) is addressed; practitioners expressed a need for support in defining NFRs. Unlike functional requirements, NFRs lack a widely adopted writing format and are notoriously difficult to quantify. A new NFR template is developed and validated, based on requirements from practitioners, incorporating fit criteria to make NFRs more measurable.
It is revealed that feature branches in open-source projects are long-lived, with a median lifespan exceeding two years, diverging from the short, agile iterations typically employed in software development.
Nitish Patkar, Aimen Fahmi, Timo Kehrer et al.· Empirical Software Engineeri...· 0 citations
We use cookies to run the site and, with your consent, for analytics and to show ads.
See our Cookie Policy.