Table of Contents
Fetching ...

Enhancing User-Feedback Driven Requirements Prioritization

Aurek Chattopadhyay, Nan Niu, Hui Liu, Jianzhang Zhang

Abstract

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.

Enhancing User-Feedback Driven Requirements Prioritization

Abstract

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.

Paper Structure

This paper contains 13 sections, 4 equations, 6 figures, 6 tables.

Figures (6)

  • Figure 1: Compared with ReFeed Kifetew-IST21 that associates user-feedback messages to a single requirement, our approach of iReFeed associates messages to a cluster of interconnected requirements. The "i" in iReFeed emphasizes this interconnectedness.
  • Figure 2: Overview of iReFeed processing pipeline.
  • Figure 3: Answering RQ$_1$ with average performances of ReFeed and the four variants of iReFeed: LDA, LDA-C, BERTopic, and BERTopic-C.
  • Figure 4: Examples from a Microsoft 365 Word instance illustrating the differences between ReFeed (left) and iReFeed (right).
  • Figure 5: One run of RQ$_3$ with search results from the baseline NSGA-II and the iReFeed D-value variant NSGA-II.
  • ...and 1 more figures