Abstract
Data stream mining is considered one of the new generations in data mining. Analyzing big data in a fast and reliable way is essential for identifying program failures and their reasons. Widely used data mining algorithms for this purpose rely on offline data, but the new trend is toward collaborative environments, in which data stream classification can be of high value. In this paper, the properties, characteristics, and requirements of data used in debugging are identified. Then, experiments are conducted, using the Massive Online Analysis Framework for Stream Classification and Clustering (MOA), to specify the most suitable class of data stream classification algorithms in this framework. Results showed that when applying data stream classification algorithms to data streams and data sets having similar characteristics to those expected in software debugging environments, the Hoeffding algorithms group showed notable competence in reference to other data stream classification algorithms. Further, although ensemble-based methods are known to be better performing, they have not shown noteworthy added value in the case of mining debugging software engineering data. Therefore, we recommend applying the Hoeffding algorithms group since it does not require additional cost in terms of time, memory, and model size, which is required when applying the ensemble algorithms group.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Pressman, R.: Software Engineering: A Practitioner’s Approach, 7th edn. McGraw-Hill, New York (2009)
Halkidi, M., Spinellis, D., Tsatsaronis, G., Vazirgiannis, M.: Data mining in software engineering. Intelligent Data Anal. 15(3), 413–441 (2011)
Podgurski, A., Leon, D., Francis, P., Masri, W., Minch, M., Sun J., Wang, B.: Automated support for classifying software failure reports. In: 25th International Proceedings on Software Engineering, pp. 465–475. IEEE, Portland (2003)
Francis, P., Leon, D., Minch, M., Podgurski, A.: Tree-based methods for classifying software failures. In: 15th International Symposium on Software Reliability Engineering, pp. 451–462 IEEE, Saint-Malo (2004)
Liu, C., Yan, X., Han, J.: Mining control flow abnormality for logic error isolation. In: 6th International Proceedings of SIAM International Conference on Data Mining, pp. 106–117. Society for Industrial and Applied Mathematics, Bethesda (2006)
Han, J., Kamber, M., Pei, J.: Data Mining: Concepts and Techniques, 3rd edn. Elsevier, Waltham (2011)
Xie, T., Thummalapenta, S., Lo, D., Liu, C.: Data mining for software engineering. IEEE Comput. 42(8), 35–42 (2009)
Stephens, R.: Implementing client-support for collaborative spaces. In: Zemliansky, P., St. Amant, K. (eds.) Handbook of Research on Virtual Workplaces and the New Nature of Business Practices 2008, pp. 582–594, 1st edn. IGI Global, New York (2008)
Zeller, A.: Why Programs Fail: A Guide to Systematic Debugging, 2nd edn. Elsevier, Burlington (2009)
Liu, C., Yan, X., Yu, H., Han, J., Yu, P.: Mining behavior graphs for “Backtrace” of noncrashing bugs. In: 5th International Proceedings of the SIAM Conference on Data Mining, pp. 286–297. Society for Industrial and Applied Mathematics, Newport Beach (2005)
Renieres, M., Reiss, S.: Fault localization with nearest neighbor queries. In: 18th International Proceedings of IEEE Conference on Automated Software Engineering, pp. 30–39. IEEE, Montreal (2003)
Wong, W., Debroy, V., Golden, R., Xu, X., Thuraisingham, B.: Effective software fault localization using an RBF neural network. IEEE Trans. Reliability 61(1), 149–169 (2012)
Park, B.-J., Oh, S.-K., Pedrycz, W.: The design of polynomial function-based neural network predictors for detection of software defects. Inf. Sci. 229, 40–57 (2013)
Zeller, A.: Isolating cause-effect chains from computer programs. In: 10th International Proceedings of ACM SIGSOFT Symposium on Foundations of Software Engineering, pp. 1–10. ACM, Charleston (2002)
Zimmermann, T., Zeller, A.: Visualizing memory graphs. In: Diehl, S. (ed.) Software Visualization 2002. LNCS, vol. 2269, pp. 191–204. Springer, Heidelberg (2002)
Bifet, A., Holmes, G., Pfahringer, B., Kranen, P., Kremer, H., Jansen T., Seidl, T.: MOA: massive online analysis a framework for stream classification and clustering. J. Mach. Learn. Res. (JMLR) 11, 44–50 (2010). Workshop and Conference Proceedings on Applications of Pattern Analysis
Domingos, P., Hulten, G.: Mining high-speed data streams. In: 6th International Proceedings of ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 71–80. ACM, Boston (2000)
Bifet, A., Holmes, G., Pfahringer, B., Kirkby, R., Gavaldá, R.: New ensemble methods for evolving data streams. In: 15th International Proceedings of ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 139–148. ACM, Paris (2009)
Bifet, A., Gavaldà, R.: Adaptive learning from evolving data streams. In: Adams, N., Robardet, C., Siebes, A., Boulicaut, J.F. (eds.) Advances in Intelligent Data Analysis VIII 2009. LNCS, vol. 5772, pp. 249–260. Springer, Heidelberg (2009)
Pfahringer, B., Holmes, G., Kirkby, R.: New options for Hoeffding trees. In: International Proceedings of the Australasian Joint Conference on Artificial Intelligence, pp. 90–99. Springer, Heidelberg (2007)
Oza, N., Stuart, R.: Online bagging and boosting. In: 8th International Workshop on Artificial Intelligence and Statistics, pp. 105–112. Morgan Kaufmann, Florida (2001)
Gama, J., Kosina, P.: Learning decision rules from data streams. In: 22nd International Proceedings of the Joint Conference on Artificial Intelligence, pp. 1255–1260. AAAI Press, Menlo Park (2011)
Quinlan, J.: C4.5: Programs for Machine Learning. 1st edn. Morgan Kaufmann, San Francisco (1993)
Agrawal, R., Imielinski, T., Swami, A.: Database mining: a performance perspective. IEEE Trans. Knowl. Data Eng. 5(6), 914–925 (1993)
Hulten, G., Spencer, L., Domingos, P.: Mining time-changing data streams. In: 7th International Proceedings of ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 97–106. ACM, San Francisco (2001)
Breiman, L., Friedman, J., Olshen, R., Stone, C.: Classification and Regression Trees, 1st edn. Wadsworth, Belmont (1984)
Street, W., Kim, Y.: A streaming ensemble algorithm (SEA) for large-scale classification. In: 7th International Proceedings of ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 377–382. ACM, San Francisco (2001)
Schlimmer, J., Granger, R.: Incremental learning from noisy data. Mach. Learn. 1(3), 317–354 (1986)
Acknowledgements
We would like to thank the reviewers for their valuable comments that improved the quality of the manuscript.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
AlMuhaideb, S.A., AlMuhanna, S.M. (2018). Toward Stream Analysis of Software Debugging Data. In: Alenezi, M., Qureshi, B. (eds) 5th International Symposium on Data Mining Applications. Advances in Intelligent Systems and Computing, vol 753. Springer, Cham. https://doi.org/10.1007/978-3-319-78753-4_9
Download citation
DOI: https://doi.org/10.1007/978-3-319-78753-4_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-78752-7
Online ISBN: 978-3-319-78753-4
eBook Packages: EngineeringEngineering (R0)