Search papers, labs, and topics across Lattice.
This paper enhances ReFeed, a state-of-the-art requirements prioritization technique, by incorporating the interconnectedness of requirements derived from user feedback. They cluster requirements into topically coherent groups using mobile app store feedback and auto-generate "requires" relations between them. Integrating these relations into a search-based software engineering solution, they demonstrate improved prioritization performance compared to ReFeed across 94 instances from four real-world applications.
Stop treating software requirements as independent entities: modeling their interconnectedness via user feedback boosts prioritization performance.
Context: Requirements prioritization is a challenging problem that is aimed to deliver the most suitable subset from a pool of candidate requirements. The problem is NP-hard when formulated as an optimization problem. Feedback from end users can offer valuable support for software evolution, and ReFeed represents a state-of-the-art in automatically inferring a requirement's priority via quantifiable properties of the feedback messages associated with a candidate requirement. Objectives: In this paper, we enhance ReFeed by shifting the focus of prioritization from treating requirements as independent entities toward interconnecting them. Additionally, we explore if interconnecting requirements provides additional value for search-based solutions. Methods: We leverage user feedback from mobile app store to group requirements into topically coherent clusters. Such interconnectedness, in turn, helps to auto-generate additional"requires"relations in candidate requirements. These"requires"pairs are then integrated into a search-based software engineering solution. Results: The experiments on 94 requirements prioritization instances from four real-world software applications show that our enhancement outperforms ReFeed. In addition, we illustrate how incorporating interconnectedness among requirements improves search-based solutions. Conclusion: Our findings show that requirements interconnectedness improves user feedback driven requirements prioritization, helps uncover additional"requires"relations in candidate requirements, and also strengthens search-based release planning.