Investigating the Significance of the Bellwether Effect to Improve Software Effort Prediction: Further Empirical Study.
Abstract
Context: In addressing how best to estimate how much effort is required to develop software, a recent study found that using exemplary and recently completed projects [forming Bellwether moving windows (BMW)] in software effort prediction (SEP) models leads to relatively improved accuracy. More studies need to be conducted to determine whether the BMW yields improved accuracy in general, since different sizing and aging parameters of the BMW are known to affect accuracy. Objective: To investigate the existence of exemplary projects (Bellwethers) with defined window size and age parameters, and whether their use in SEP improves prediction accuracy. Method: We empirically investigate the moving window assumption based on the theory that the prediction outcome of a future event depends on the outcomes of prior events. Sampling of Bellwethers was undertaken using three introduced Bellwether methods (SSPM, SysSam, and RandSam). The ergodic Markov chain was used to determine the stationarity of the Bell-wethers. Results: Empirical results show that 1) Bellwethers exist in SEP and 2) the BMW has an approximate size of 50 to 80 exemplary projects that should not be more than 2 years old relative to the new projects to be estimated. Conclusion: The study's results add further weight to the recommended use of Bellwethers for improved prediction accuracy in SEP. A. Acronyms DNN BIC BMW EMC GP MAE MCMC RandSam SEP SSPM SysSam TPM B. Notation ๐ฟ ๐บ ๐!"# ๐$%&& ๐ค' ๐'() ๐ท ๐ ๐ ๐ ๐' Deep neural networks. Bayesian information criteria. Bellwether moving window. Ergodic Markov chain. Growing portfolio. Mean absolute error. Markov chain Monte Carlo. Random sampling. Software effort prediction. Stratification, sampling, and prediction method. Systematic sampling. Transition probability matrix. Cliff's delta effect size. Sample space. Feature set of new projects. Feature set of Bellwether projects. Projects within the ๐๐กโ window. Probability that state ๐ will move to j after n steps. Number of historical projects from a dataset. Number of projects sorted in ascending order. Subset of recently completed projects. Number of partitions or clusters. Hold-out project(s) whose target is to