Temporal dynamics of requirements engineering from mobile app reviews

View article
Loading...
PeerJ Computer Science

Main article text

 

Introduction

  • Although there are promising methods for extracting candidate software requirements from application reviews, such methods do not consider that users describe the same software requirement in different ways with non-technical and informal language. Our MAPP-Reviews method introduces software requirements clustering to standardize different software requirement writing variations. In this case, we explore contextual word embeddings for software requirements representation, which have recently been proposed to support natural language processing. When considering the clustering structure, we can more accurately quantify the number of negative user mentions of a software requirement over time.

  • We present a method to generate the temporal dynamics of negative ratings of a software requirements cluster by using time series. Our method uses equal-interval segmentation to calculate the frequency of software requirements mentions in each time interval. Thus, a time series is obtained and used to analyze and visualize the temporal dynamics of the cluster, where we are especially interested in intervals where sudden changes happen.

  • Time series forecasting is useful to identify in advance an upward trend of negative reviews for a given software requirement. However, most existing forecasting models do not consider domain-specific information that affects user behavior, such as holidays, new app releases and updates, marketing campaigns, and other external events. In the MAPP-Reviews method, we investigate the incorporation of software domain-specific information through trend changepoints. We explore both automatic and manual changepoint estimation.

The Mapp-Reviews Method

App reviews

Requirements extraction

where ˆr is a corrupted token sequence of requirement r, ˉr is the masked tokens, mt is equal to 1 when tj is masked and 0 otherwise. The ct represents context information for the token tj, usually the neighboring tokens. We extract token embeddings from the pre-trained BERT model, where hcj is a context embedding and wtj is a word embedding of the token tj. The term texp(hTcwt) is a normalization factor using all tokens t′ from a context c. BERT uses the Transformer deep neural network to solve p(ˉr|ˆr) of the Eq. (1). Figure 3 illustrates a set of software requirements in a two-dimensional space obtained from contextual word embeddings. Note that the vector space of embeddings preserves the proximity of similar requirements, but written in different ways by users such as “search items”, “find items”, “handles my searches” and “find special items”.

Requirements clustering

Time series generation

where xnormalized is the result of the normalization, where x is the frequency of cluster (time series observation) C in the period p, zp is the total frequency of the period.

Predictive models

Results

where realt is the real value and predt is the predicted value by the method, and h is the number of forecast observations in the estimation period (prediction horizon). In practical terms, MAPE is a measure of the percentage error that, in a simulation, indicates how close the prediction was made to the known values of the time series. We consider a prediction horizon (h) ranging from 1 to 4, with weekly seasonality.

Discussion

Limitations

Conclusions

Supplemental Information

App reviews dataset and results.

The GitHub repository at https://github.com/vitormesaque/mapp-reviews contains the source code, all additional information, and details of each stage of the method, as well as the raw data and all the results obtained.

DOI: 10.7717/peerj-cs.874/supp-1

Additional Information and Declarations

Competing Interests

The authors declare that they have no competing interests.

Author Contributions

Vitor Mesaque Alves de Lima conceived and designed the experiments, performed the experiments, analyzed the data, performed the computation work, prepared figures and/or tables, authored or reviewed drafts of the paper, and approved the final draft.

Adailton Ferreira de Araújo conceived and designed the experiments, analyzed the data, performed the computation work, authored or reviewed drafts of the paper, and approved the final draft.

Ricardo Marcondes Marcacini performed the computation work, authored or reviewed drafts of the paper, and approved the final draft.

Data Availability

The following information was supplied regarding data availability:

The data and codes are available at GitHub: https://github.com/vitormesaque/mapp-reviews.

Funding

This study was supported by the Brazilian National Council for Scientific and Technological Development (CNPq) [process number 426663/2018-7], the Federal University of Mato Grosso do Sul (UFMS), the São Paulo Research Foundation (FAPESP) [process number 2019/25010-5 and 2019/07665-4], BIRDIE.AI (Project CEIA/UFG-PEIA-2105.0011), and the Brazilian Company of Research and Industrial Innovation (EMBRAPII). The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.

12 Citations 2,020 Views 177 Downloads

Your institution may have Open Access funds available for qualifying authors. See if you qualify

Publish for free

Comment on Articles or Preprints and we'll waive your author fee
Learn more

Five new journals in Chemistry

Free to publish • Peer-reviewed • From PeerJ
Find out more