Abstract
This paper applies the learning-to-rank approach to software defect prediction. Ranking software modules in order of defect-proneness is important to ensure that testing resources are allocated efficiently. However, prediction models that are optimized for predicting explicitly the number of defects often fail to correctly predict rankings based on those defect numbers. We show in this paper that the model construction methods, which include the ranking performance measure in the objective function, perform better in predicting defect-proneness rankings of multiple modules. We present the experimental results, in which our method is compared against three other methods from the literature, using five publicly available data sets.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Briand, L.C., Wuest, J.: Empirical Studies of Quality Models in Object-Oriented Systems. Advances in Computers 59, 97–166 (2002)
Weyuker, E.J., Ostrand, T.J., Bell, R.M.: Comparing the Effectiveness of Several Modeling Methods for Fault Prediction. Empir. Software Eng. 15, 277–295 (2010)
Ohlsson, N., Alberg, H.: Predicting Fault-Prone Software Modules in Telephone Switches. IEEE Transactions on Software Engineering 22(12), 886–894 (1996)
Denaro, G., Pezze, M.: An Empirical Evaluation of Fault-Proneness Models. In: Proc. of the 24th International Conf. on Software Engineering, pp. 241–251 (2002)
Succi, G., Pedrycz, W., Stefanovic, M., Miller, J.: Practical Assessment of the Models for Identification of Defect-Prone Classes in Object-Oriented Commercial Systems Using Design Metrics. J. Syst. Softw. 65(1), 1–12 (2003)
Karimzadehgan, M., Li, W., Zhang, R., Mao, J.: A Stochastic Learning-To-Rank Algorithm and its Application to Contextual Advertising. In: Proceedings of the 20th International Conference on World Wide Web, pp. 377–386 (2011)
Wang, Y., Cai, Z., Zhang, Q.: Differential Evolution with Composite Trial Vector Generation Strategies and Control Parameters. IEEE Transactions on Evolutionary Computation 15(1), 55–66 (2011)
Ostrand, T.J., Weyuker, E.J., Bell, R.M.: Where the Bugs Are. In: Proc. ACM/ISSTA 2004, pp. 86–96 (2004)
Ostrand, T.J., Weyuker, E.J., Bell, R.M.: Predicting the Location and Number of Faults in Large Software Systems. IEEE Transaction on Software Engineering 31(4), 340–355 (2005)
Bell, R.M., Ostrand, T.J., Weyuker, E.J.: Looking For Bugs in All the Right Places. In: ISSTA 2006, pp. 61–72 (2006)
Ostrand, T.J., Weyuker, E.J., Bell, R.M.: Automating Algorithms for the Identification of Fault-Prone Files. In: ISSTA 2007, pp. 219–227 (2007)
Weyuker, E.J., Ostrand, T.J., Bell, R.M.: Comparing Negative Binomial and Recursive Partitioning Models for Fault Prediction. In: Proceedings of the 4th International Workshop on Predictor Models in Software Engineering, pp. 3–10 (2008)
D‘Ambros, M., Lanza, M., Robbes, R.: Evaluating Defect Prediction Approaches: A Benchmark and an Extensive Comparison. Emp. Soft. Eng., 1–47 (2011)
Graves, T.L., Karr, A.F., Marron, J.S., Siy, H.: Predicting Fault Incidence Using Software Change History. IEEE Trans. on Soft. Eng. 26(7), 653–661 (2000)
Arisholm, E., Briand, L.C.: Predicting Fault-prone Components in a Java Legacy System. In: Proceedings of the 2006 ACM/IEEE International Symposium on Empirical Software Engineering, pp. 8–17 (2006)
Storn, R., Price, K.: Differential Evolution - A Simple and Efficient Heuristic for Global Optimization over Continuous Spaces. Journal of Global Optimization 11(4), 341–359 (1997)
Hall, M., Frank, E., Holmes, G., Pfahringer, B., Reutemann, P., Witten, I.H.: The WEKA Data Mining Software: An Update. SIGKDD Expl. 11(1), 10–18 (2009)
Wang, Z., Tang, K., Yao, X.: Multi-objective Approaches to Optimal Testing Resource Allocation in Modular Software Systems. IEEE Transactions on Reliability 59(3), 563–575 (2010)
Yang, Z., Tang, K., Yao, X.: Scalability of Generalized Adaptive Differential Evolution for Large-Scale Continuous Optimization. Soft. Computing 15(11), 2141–2155 (2011)
Li, X., Yao, X.: Cooperatively Coevolving Particle Swarms for Large Scale Optimization. IEEE Transactions on Evolutionary Computation 16(2), 210–224 (2012)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Yang, X., Tang, K., Yao, X. (2012). A Learning-to-Rank Algorithm for Constructing Defect Prediction Models. In: Yin, H., Costa, J.A.F., Barreto, G. (eds) Intelligent Data Engineering and Automated Learning - IDEAL 2012. IDEAL 2012. Lecture Notes in Computer Science, vol 7435. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32639-4_21
Download citation
DOI: https://doi.org/10.1007/978-3-642-32639-4_21
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-32638-7
Online ISBN: 978-3-642-32639-4
eBook Packages: Computer ScienceComputer Science (R0)