Abstract
Online feature request management systems are popular tools for gathering stakeholders’ change requests during system evolution. Deciding which feature requests require attention and how much upfront analysis to perform on them is an important problem in this context: too little upfront analysis may result in inadequate functionalities being developed, costly changes, and wasted development effort; too much upfront analysis is a waste of time and resources. Early predictions about which feature requests are most likely to fail due to insufficient or inadequate upfront analysis could facilitate such decisions. Our objective is to study whether it is possible to make such predictions automatically from the characteristics of the online discussions on feature requests. This paper presents a study of feature request failures in seven large projects, an automated tool-implemented framework for constructing failure prediction models, and a comparison of the performance of the different prediction techniques for these projects. The comparison relies on a cost-benefit model for assessing the value of additional upfront analysis. In this model, the value of additional upfront analysis depends on its probability of success in preventing failures and on the relative cost of the failures it prevents compared to its own cost. We show that for reasonable estimations of these two parameters, automated prediction models provide more value than a set of baselines for many failure types and projects. This suggests automated failure prediction during requirements elicitation to be a promising approach for guiding requirements engineering efforts in online settings.








Similar content being viewed by others
Notes
References
Abrahams, AS, Becker A, Fleder D, MacMillan IC (2005) Handling generalized cost functions in the partitioning optimization problem through sequential binary programming Data Mining. In: Fifth IEEE international conference on, 2005
Berry D, Damian D, Finkelstein A, Gause D, Hall R, Wassyng A et al. (2005) To do or not to do: If the requirements engineering payoff is so good, why aren’t more companies doing it? In: International conference on requirements engineering, 2005
Bird C, Pattison D, D’Souza R (2008) Latent social structure in open source projects. In: ACM SIGSOFT international symposium on foundations of software engineering, 2008
Boehm B, Papaccio P (2002) Understanding and controlling software costs. In: IEEE transactions on software engineering
Boehm B, Turner R (2003) Balancing agility and discipline: a guide for the perplexed. Addison-Wesley Professional, New York
Cleland-Huang J, Dumitru H, Duan C, Castro-Herrera C (2009) Automated support for managing feature requests in open forums. ACM Commun 52:68–74
Damian D (2004) RE challenges in multi-site software development organisations. Int Conf Requir Eng 8:149–160
Fenton N, Neil M, Marsh W, Hearty P, Ł Radliński, Krause P (2008) On the effectiveness of early life-cycle defect prediction with bayesian nets. Empir Softw Eng 13(5):499–537
Fitzgerald C (2009) Support for collaborative elaboration of requirements models. Internal UCL report
Fitzgerald C (2012) Collaborative reviewing and early failure prediction in feature request management systems. UCL doctoral thesis
Fitzgerald C, Letier E, Finkelstein A (2011) Early failure prediction in feature request management systems. International Conference on Requirements Engineering, pp 229–238
Gnesi S, Lami G, Trentanni G (2005) An automatic tool for the analysis of natural language requirements. Comput Syst Sci Eng
Granger C (1969) Investigating causal relations by econometric models and cross-spectral methods. Econometrica
Guyon I, Elisseeff A (2003) An introduction to variable and feature selection. J Mach Learn Res
Hall M, Frank E, Holmes G, Pfahringer B, Reutemann P, Witten I (2009) The weka data mining software: An update. ACM SIGKDD Explor Newslett 11:10–18
Kaufhold J, Abbott J, Kaucic R (2006) Distributed cost boosting and bounds on mis-classification cost. In: IEEE computer society conference on computer vision and pattern recognition, vol 1. pp 146–153
Kiyavitskaya N, Zeni N, Mich L, Berry D (2008) Requirements for tools for ambiguity identification and measurement in natural language requirements specifications. Int Conf Requir Eng 1:146–153
Laurent P, Cleland-Huang J (2009) Lessons learned from open source projects for facilitating online requirements processes. In: Lecture notes in computer science, requirements engineering: foundation for software quality, vol 5512. pp 240–255
Laurent P, Cleland-Huang J, Duan C (2007) Towards automated requirements triage. Int Conf Requir Eng, pp 131–140
Madachy R, Boehm B (2008) Assessing quality processes with ODC COQUALMO. In: Lecture notes in computer science, making globally distributed software development a success story
McConnell S (2004) Code complete, vol 2. Microsoft Press, Washington
Musa J (2004) Software reliability engineering: more reliable software, faster and cheaper. Tata McGraw-Hill, New York
Nagappan N, Ball T, Zeller A (2006) Mining metrics to predict component failures. In: International conference on software engineering
Nuseibeh B, Easterbrook SM (2000) Requirements engineering—a roadmap. In: ICSE: Future of SE Track. pp 35–46
Sebastiani F (2002) Machine learning in automated text categorization. ACM Comput Surv 34:1–47
Shull F, Basili V, Boehm B, Brown A, Costa P, Lindvall M, Port D, Rus I, Tesoriero R, Zelkowitz M (2002) What we have learned about fighting defects. In: IEEE symposium software metrics
van Lamsweerde A (2009) Requirements engineering: from system goals to UML models to software specifications. Wiley, New York
Verma K, Kass A (2008) Requirements analysis tool: a tool for automatically analyzing software requirements documents. In: International semantic web conference
Widmer G, Kubat M (1996) Learning in the presence of concept drift and hidden contexts. Mach Learn 23:69–101
Witten I, Frank E (2005) Data mining: practical machine learning tools and techniques. Morgan Kaufmann Pub, Cambridge
Wolf T, Schroter A, Damian D, Nguyen T (2009) Predicting build failures using social network analysis on developer communication. In: IEEE international conference on software engineering
Zimmermann T, Premraj R, Zeller A (2007) Predicting defects for eclipse. In: International workshop on predictor models in software engineering
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Fitzgerald, C., Letier, E. & Finkelstein, A. Early failure prediction in feature request management systems: an extended study. Requirements Eng 17, 117–132 (2012). https://doi.org/10.1007/s00766-012-0150-7
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00766-012-0150-7