Bug fixes are interesting, since they not only provide the source code of a bug. It also provides source code for how the bug is fixed. BugMem is popular tool to find duplicated bugs using bug fix memories: a project-specific bug and fix knowledge base developed by analysing the history of bug fixes. The change history of a software project contains a rich collection of code changes that record previous development experience. In the repository that records a software project’s change history, there are various changes where developers fix bugs (known as bug fix changes) as opposed to adding new features or re-factoring source code. Changes that fix bugs are notably interesting, since they record both the old buggy code and the new fixed code. This paper presents an approach for extracting bugs fix patterns using BugMem tool and then automatically fixing the most recurrent bugs fixes using Naive Bayes classifier. Naive Bayes classifier is the best known classifier for text mining as it does not use iterative steps and hence is fast and less time consuming. Naive Bayes classifier is simple to understand and implement yet powerful. Automatically fixing the recurrent bugs will save a lot of time in debugging the software and also will save time which is put to fix the same type of bugs again which are already fixed in previous versions. Afterwards the performance of approach is checked by using ROC (receiver optimization curve) considering the false positives and true positives and also Area, Confident interval, Standard deviation.
Osman, Haidar, Mircea Lungu, and Oscar Nierstrasz. \"Mining frequent bug-fix code changes.\" Software Maintenance, Reengineering and Reverse Engineering (CSMR-WCRE), 2014 Software Evolution Week-IEEE Conference on. IEEE, 2014.
S.Kim, K. Pan and E. E. J Whitehead, Jr., \"\"Memories of bug fixes,\"\" in Proceedings of 14th ACM SIGSOFT International symposium on Foundations of software engineering, SIGSOFT \" 06/FSE-14,(New York, NY USA).
https://www.princeton.edu/~achaney/tmve/wiki100k/docs/Naive_Bayes_classifier.html
http://in.mathworks.com/help/stats/naivebayesclass.html?nocookie=true
Anvik, J., Hiew, L., and Murphy, G. C., \"Who Should Fix This Bug?\" in Proceedings of 28th International Conference on Software Engineering (ICSE\"06), Shanghai, China May 20-28 2006, pp. 361-370.
http://scikit-learn.org/stable/modules/naive_bayes.html
http://en.wikipedia.org/wiki/Naive_Bayes_classifier#Training.
Daniel M. German\" Mining CVS repositories, the softChange experience\" Proceedings of the International Workshop on Software Clones (IWSC). 2009.
http://www.statsoft.com/textbook/naive-bayes-classifier
T.J. Ostrand, E.J. Weyuker, and R.M. Bell, “Where the Bugs Are,” Proc. 2004 ACM SIGSOFT Int’l Symp. Software Testing and Analysis (ISSTA ’04), July 2004.
T.L. Graves, A.F. Karr, J.S. Marron, and H. Siy, “Predicting Fault Incidence Using Software Change History,” IEEE Trans. Software Eng., vol. 26, no. 7, pp. 653-661, July 2000.
http://en.wikipedia.org/wiki/Naive_Bayes_classifier.
Mockus, A., Fielding, T., and Herbsleb, D., \"Two Case Studies of Open Source Software Development: Apache and Mozilla\", ACM Transactions on Software Engineering and Methodology vol. 11, no. 3, July 2002, pp. 309-346.
http://www.thearling.com/text/dmtechniques/dmtechniques.htm.
http://en.wikipedia.org/wiki/GitHub.
https://github.com/git/git.
Bug, Fix, Open source software, Bug finding tool, Prediction, Patterns.