全部 标题 作者
关键词 摘要

OALib Journal期刊
ISSN: 2333-9721
费用:99美元

查看量下载量

相关文章

更多...

Can Faulty Modules Be Predicted by Warning Messages of Static Code Analyzer?

DOI: 10.1155/2012/924923

Full-Text   Cite this paper   Add to My Lib

Abstract:

We have proposed a detection method of fault-prone modules based on the spam filtering technique, “Fault-prone filtering.” Fault-prone filtering is a method which uses the text classifier (spam filter) to classify source code modules in software. In this study, we propose an extension to use warning messages of a static code analyzer instead of raw source code. Since such warnings include useful information to detect faults, it is expected to improve the accuracy of fault-prone module prediction. From the result of experiment, it is found that warning messages of a static code analyzer are a good source of fault-prone filtering as the original source code. Moreover, it is discovered that it is more effective than the conventional method (that is, without static code analyzer) to raise the coverage rate of actual faulty modules. 1. Introduction Recently, machine learning approaches have been widely used for fault-proneness detection [1]. We have introduced a text feature-based approach to detect fault-prone modules [2]. In this approach, we extract text features from the frequency information of words in source code modules. In other words, we construct a large metrics set representing the frequency of words in source code modules. Once the text features are obtained, the Bayesian classifier is constructed from text features. In the fault-prone module detection of new modules, we also extract text features from source code modules, and Bayesian model classifies modules into either fault-prone or nonfault-prone. Since less effort or cost needed to collect text feature metrics than other software metrics, it may be applied to software development projects easily. On the other hand, since this approach accepts any input with text files, the accuracy of prediction could be improved by selecting appropriate input other than raw source code. We then try to find another input but source code. In this study, we use warning messages of a static code analyzer. Among many static code analyzers, we used PMD in this study. By replacing the input of fault-prone filtering from raw source code to warning messages of PMD, we can get the results of prediction by PMD and fault-prone filtering. The rest of this paper is organized as follows. Section 2 describes the objective of this research. Section 3 shows a brief summary of the fault-prone filtering technique with PMD. In Section 4, the experiments conducted in this study are described. Section 5 discusses the result of the experiments. Finally, Section 6 concludes this study. 2. Objective 2.1. Fault-Prone Module

References

[1]  C. Catal and B. Diri, “A systematic review of software fault prediction studies,” Expert Systems with Applications, vol. 36, no. 4, pp. 7346–7354, 2009.
[2]  O. Mizuno and T. Kikuno, “Training on errors experiment to detect fault-prone software modules by spam filter,” in Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, pp. 405–414, 2007.
[3]  N. Rutar, C. B. Almazan, and J. S. Foster, “A comparison of bug finding tools for java,” in Proceedings of the 15th International Symposium on Software Reliability Engineering, pp. 245–256, IEEE Computer Society, Washington, DC, USA, 2004.
[4]  T. Copeland, PMD—What does “PMD” mean?, http://pmd.sourceforge.net/meaning.html.
[5]  T. Copeland, PMD Applied, Centennial Books, Arexandria, Va, USA, 2005.
[6]  W. S. Yerazunis, CRM114—the Controllable Regex Mutilator, http://crm114.sourceforge.net/.
[7]  S. Chhabra, W. S. Yerazunis, and C. Siefkes, “Spam filtering using a markov random field model with variable weighting schemas,” in Proceedings of the 4th IEEE International Conference on Data Mining, (ICDM '04), pp. 347–350, Riverside, Calif, USA, November 2004.
[8]  C. Siefkes, F. Assis, S. Chhabra, and W. S. Yerazunis, “Combining winnow and orthogonal sparse bigrams for incremental spam filtering,” in Proceedings of the Conference on Machine Learning/European Conference on Principles and Practice of Knowledge Discovery in Databases (ECML PKDD '04), 2004.
[9]  J. ?liwerski, T. Zimmermann, and A. Zeller, “When do changes induce fixes? (on Fridays),” in Proceedings of the 2nd International Workshop on Mining Software Repositories, pp. 24–28, St. Louis, Mo, USA, May 2005.
[10]  C. J. van Rijsbergen, Information Retrieval, Butterworth, Boston, Mass, USA, 2nd edition, 1979.

Full-Text

comments powered by Disqus

Contact Us

service@oalib.com

QQ:3279437679

WhatsApp +8615387084133

WeChat 1538708413