Automated Software Engineering

, Volume 19, Issue 2, pp 141–165 | Cite as

Applying the Mahalanobis-Taguchi strategy for software defect diagnosis

Article

Abstract

The Mahalanobis-Taguchi (MT) strategy combines mathematical and statistical concepts like Mahalanobis distance, Gram-Schmidt orthogonalization and experimental designs to support diagnosis and decision-making based on multivariate data. The primary purpose is to develop a scale to measure the degree of abnormality of cases, compared to “normal” or “healthy” cases, i.e. a continuous scale from a set of binary classified cases. An optimal subset of variables for measuring abnormality is then selected and rules for future diagnosis are defined based on them and the measurement scale. This maps well to problems in software defect prediction based on a multivariate set of software metrics and attributes. In this paper, the MT strategy combined with a cluster analysis technique for determining the most appropriate training set, is described and applied to well-known datasets in order to evaluate the fault-proneness of software modules. The measurement scale resulting from the MT strategy is evaluated using ROC curves and shows that it is a promising technique for software defect diagnosis. It compares favorably to previously evaluated methods on a number of publically available data sets. The special characteristic of the MT strategy that it quantifies the level of abnormality can also stimulate and inform discussions with engineers and managers in different defect prediction situations.

Keywords

Software defect prediction Fault-proneness Software testing Mahalanobis-Taguchi strategy 

Abbreviations

MT

Mahalanobis-Taguchi;

MD

Mahalanobis distance;

MTS

Mahalanobis-Taguchi system;

MTGS

Mahalanobis-Taguchi Gram-Schmidt process;

ROC

Receiver Operating Characteristic;

AUC

Area under the curve

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Afzal, W., Torkar, R., Feldt, R., Gorschek, T.: Genetic programming of cross-release fault count predictions in large and complex software projects. In: Chis, M. (ed.) Evolutionary Computation and Optimization Algorithms in Software Engineering; Application and Techniques. IGI Global, Hershey (2009, pp. 94–126). doi:10.4018/978-1-61520-809-8.ch006 Google Scholar
  2. Arisholm, E., Briand, L.C., Johannessen, E.B.: A systematic and comprehensive investigation of methods to build and evaluate fault prediction models. J. Syst. Softw. 83(1), 2–17 (2010) CrossRefGoogle Scholar
  3. Briand, L., Melo, W., Wust, J.: Assessing the applicability of fault-proneness models across object-oriented software projects. IEEE Trans. Softw. Eng. 28(7), 706–720 (2002) CrossRefGoogle Scholar
  4. Chiu, T., Fang, D., Chen, J., Wang, Y., Jeris, C.: A robust and scalable clustering algorithm for mixed type attributes in large database environment. In: Proceedings of the Seventh ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, San Francisco, CA. ACM, New York (2001) Google Scholar
  5. Cudney, E.A., Paryani, K., Ragsdell, K.M.: Applying the Mahalanobis–Taguchi system to vehicle handling. Concurr. Eng. 14, 343–354 (2006) CrossRefGoogle Scholar
  6. Cudney, E.A., Paryani, K., Ragsdell, K.M.: Identifying useful variables for vehicle braking using the adjoint matrix approach to the Mahalanobis-Taguchi system. J. Ind. Syst. Eng. 1(4), 281–292 (2008) Google Scholar
  7. Das, P., Datta, S.: Exploring the effects of chemical composition in hot rolled steel product using Mahalanobis distance scale under Mahalanobis–Taguchi system. Comput. Mater. Sci. 38, 671–677 (2007) CrossRefGoogle Scholar
  8. Dolado, J.: On the problem of the software cost function. Inf. Softw. Technol. 43(1), 61–72 (2001) CrossRefGoogle Scholar
  9. Fenton, N., Pfleeger, S.: Software Metrics: A Rigorous and Practical Approach. Springer, Berlin (1998) Google Scholar
  10. Fenton, N., Neil, M., Marsh, W., Hearty, P., Radlinski, L., Krause, P.: On the effectiveness of early life cycle defect prediction with Bayesian Nets. Empir. Softw. Eng. 13(5), 499–537 (2008) CrossRefGoogle Scholar
  11. Goel, B., Singh, Y.: Empirical Investigation of Metrics for Fault Prediction on Object-Oriented Software. Studies in Computational Intelligence, pp. 255–265. Springer, Berlin (2008) Google Scholar
  12. Hedayat, A.S., Sloane, N.J.A., Stufken, J.: Orthogonal Arrays: Theory and Applications. Springer, New York (1999) MATHGoogle Scholar
  13. Holmes, J.: Optimizing the software life cycle. ASQ Soft. Qual. Prof. 5, 14–23 (2003) Google Scholar
  14. Huang, M.L., Chen, H.Y.: Development and comparison of automated classifiers for glaucoma diagnosis using stratus optical coherence tomography. Investig. Ophthalmol. Vis. Sci. 46(11), 4121–4129 (2005) CrossRefGoogle Scholar
  15. Huang, C.L., Hsu, T.S., Liu, C.M.: The Mahalanobis–Taguchi system—neural network algorithm for data-mining in dynamic environments. Expert Syst. Appl. 36, 5475–5480 (2009) CrossRefGoogle Scholar
  16. Johnson, R.A., Wichern, D.W.: Applied Multivariate Statistical Analysis. Prentice Hall, New York (1992) MATHGoogle Scholar
  17. Khoshgoftaar, T., Seliya, N., Sundaresh, N.: An empirical study of predicting software faults with case-based reasoning. Softw. Qual. J. 14(2), 85–111 (2006) CrossRefGoogle Scholar
  18. Krzanowski, W.J., Hand, D.J.: ROC Curves for Continuous Data. Chapman & Hall/CRC, London (2009) CrossRefMATHGoogle Scholar
  19. Kubat, M., Matwin, S.: Addressing the curse of imbalanced training set: one-sided selection. In: Proc. 14th Int’1 Conf. Machine Learning (ICML ’97) (1997) Google Scholar
  20. Lessmann, S., Baesens, B., Mues, C., Pietsch, S.: Benchmarking classification models for software defect prediction: a proposed framework and novel findings. IEEE Trans. Softw. Eng. 34(4), 485–496 (2008) CrossRefGoogle Scholar
  21. Ma, Y., Guo, L., Cukic, B.: Statistical framework for the prediction of fault-proneness. Advances in Machine Learning—Applications in Software Engineering. Idea Group (2007) Google Scholar
  22. Mahalanobis, P.C.: On the generalized distance in statistics. Proc. Natl. Inst. Sci. India 2, 49–55 (1936) MATHGoogle Scholar
  23. Ohlsson, N., Alberg, H.: Predicting fault-prone software modules in telephone switches. IEEE Trans. Softw. Eng. 22(12), 886–894 (1996) CrossRefGoogle Scholar
  24. Pal, A., Maiti, J.: Development of a hybrid methodology for dimensionality reduction in Mahalanobis–Taguchi system using Mahalanobis distance and binary particle swarm optimization. Expert Syst. Appl. 37, 1286–1293 (2010) CrossRefGoogle Scholar
  25. R Development Core Team: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna (2005). ISBN 3-900051-07-0, http://www.R-project.org Google Scholar
  26. Su, C.T., Hsiao, Y.H.: An evaluation of the robustness of MTS for imbalanced data. IEEE Trans. Knowl. Data Eng. 19(10), 1321–1332 (2007) CrossRefGoogle Scholar
  27. Su, C.T., Hsiao, Y.H.: Multiclass MTS for simultaneous feature selection and classification. IEEE Trans. Knowl. Data Eng. 21(2), 192–205 (2009) CrossRefGoogle Scholar
  28. Taguchi, G., Jugulum, R.: The Mahalanobis-Taguchi Strategy. A Pattern Technology System. Wiley, New York (2002) CrossRefGoogle Scholar
  29. Taguchi, G., Rajesh, J.: New trends in multivariate diagnosis. Sankhya, Ser. B 62, 233–248 (2000) MATHMathSciNetGoogle Scholar
  30. Wohlin, C., Host, M., Runeson, P., Ohlsson, M.C., Regnell, B., Wesslen, A.: Experimentation in Software Engineering: An Introduction. Kluwer Academic, Norwell (2000) CrossRefMATHGoogle Scholar
  31. Woodall, W.H., Koudelik, R., Tsui, K.L., Kim, S.B., Stoumbos, Z.G., Carvounis, C.P.: A review and analysis of the Mahalanobis-Taguchi system [with discussion and response]. Technometrics 45(1), 1–30 (2003) CrossRefMathSciNetGoogle Scholar
  32. Zhang, T., Ramakrishnon, R., Livny, M.: BIRCH: an efficient data clustering method for very large databases. In: Proceedings of the ACM SIGMOD Conference on Management of Data, Montreal, Canada. ACM, New York (1996) Google Scholar
  33. Zhou, Y., Leung, H.: Empirical analysis of object-oriented design metrics for predicting high and low severity faults. IEEE Trans. Softw. Eng. 32(10), 771–789 (2006) CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2011

Authors and Affiliations

  • Dimitris Liparas
    • 1
  • Lefteris Angelis
    • 1
  • Robert Feldt
    • 2
  1. 1.Department of InformaticsAristotle University of ThessalonikiThessalonikiGreece
  2. 2.Department of Computer Science and EngineeringChalmers University of TechnologyGothenburgSweden

Personalised recommendations