International Journal of Advanced Computer Research (IJACR) ISSN (P): 2249-7277 ISSN (O): 2277-7970 Vol - 8, Issue - 39, November 2018
  1. 1
    Google Scholar
  2. 4
    Impact Factor
Automatic clustering of bug reports

Maen Hammad, Ruba Alzyoudi and Ahmed Fawzi Otoom

Abstract

It is widely accepted that most development cost is spent for maintenance and most of the maintenance cost is spent on comprehension. Maintainers need to understand the current status of the code before updating it. For this reason, they examine pervious change requests and previous code changes to understand how the current code was evolved. The problem that faces them is how to locate related previous change requests that handled a specific feature or topic in the code. Quickly locating previous related change requests help developers to quickly understand the current status of the code and hence reduce the maintenance cost which is our ultimate goal. This paper proposes an automated technique to identify related previous change requests stored in bug reports. The technique is based on clustering bug reports based on their textual similarities. The result of the clustering is disjoint clusters of related bug reports that have common issues, topic or feature. A set of terms is extracted from each cluster, as tags, to help maintainers to understand the issue, topic or feature handled by the bug reports in the cluster. An experimental study is applied and discussed, followed by manual evaluation of the bug reports in the generated clusters.

Keyword

Software maintenance, Bug reports, Clustering, Textual similarities.

Cite this article

Refference

[1][1]Schach SR. Object-oriented and classical software engineering. New York: McGraw-Hill; 2007.

[2][2]Antoniol G, Ayari K, Di Penta M, Khomh F, Gueheneuc YG. Is it a bug or an enhancement?: a text-based approach to classify change requests. In proceedings of the conference of the center for advanced studies on collaborative research: meeting of minds 2008. ACM.

[3][3]Thung F, Lo D, Jiang L. Automatic defect categorization. In working conference on reverse engineering 2012 (pp. 205-14). IEEE.

[4][4]Pandey N, Sanyal DK, Hudait A, Sen A. Automated classification of software issue reports using machine learning techniques: an empirical study. Innovations in Systems and Software Engineering. 2017; 13(4):279-97.

[5][5]Pingclasai N, Hata H, Matsumoto KI. Classifying bug reports to bugs and other requests using topic modeling. In Asia-pacific software engineering conference 2013 (pp. 13-8). IEEE.

[6][6]Menzies T, Marcus A. Automated severity assessment of software defect reports. In international conference on software maintenance 2008 (pp. 346-55). IEEE.

[7][7]Podgurski A, Leon D, Francis P, Masri W, Minch M, Sun J, et al. Automated support for classifying software failure reports. In proceedings of international conference on software engineering 2003 (pp. 465-75). IEEE.

[8][8]Zanetti MS, Scholtes I, Tessone CJ, Schweitzer F. Categorizing bugs with social networks: a case study on four open source software communities. In proceedings of the international conference on software engineering 2013 (pp. 1032-41). IEEE Press.

[9][9]Kanwal J, Maqbool O. Bug prioritization to facilitate bug report triage. Journal of Computer Science and Technology. 2012; 27(2):397-412.

[10][10]Lamkanfi A, Demeyer S, Soetens QD, Verdonck T. Comparing mining algorithms for predicting the severity of a reported bug. In European conference on software maintenance and reengineering 2011 (pp. 249-58). IEEE.

[11][11]Otoom AF, Al-Shdaifat D, Hammad M, Abdallah EE. Severity prediction of software bugs. In international conference on information and communication systems 2016 (pp. 92-5). IEEE.

[12][12]Zhou Y, Tong Y, Gu R, Gall H. Combining text mining and data mining for bug report classification. Journal of Software: Evolution and Process. 2016; 28(3):150-76.

[13][13]Nagwani NK, Verma S. CLUBAS: an algorithm and java based tool for software bug classification using bug attributes similarities. Journal of Software Engineering and Applications. 2012; 5(6):436-47.

[14][14]Nagwani NK, Verma S, Mehta KK. Generating taxonomic terms for software bug classification by utilizing topic models based on latent Dirichlet allocation. In international conference on ICT and knowledge engineering 2013(pp. 1-5). IEEE.

[15][15]Limsettho N, Hata H, Monden A, Matsumoto K. Automatic unsupervised bug report categorization. In international workshop on empirical software engineering in practice 2014 (pp. 7-12). IEEE.

[16][16]Limsettho N, Hata H, Monden A, Matsumoto K. Unsupervised bug report categorization using clustering and labeling algorithm. International Journal of Software Engineering and Knowledge Engineering. 2016; 26(7):1027-53.

[17][17]Sandusky RJ, Gasser L, Ripoche G. Bug report networks: varieties, strategies, and impacts in F/OSS development community. International conference on software engineering workshop 2004 (pp. 80-4).

[18][18]Fry ZP, Weimer W. Clustering static analysis defect reports to reduce maintenance costs. In working conference on reverse engineering 2013 (pp. 282-91). IEEE.

[19][19]Rus V, Nan X, Shiva SG, Chen Y. Clustering of defect reports using graph partitioning algorithms. In SEKE 2009 (pp. 442-5).

[20][20]Kumaresh S, Baskaran R. Ontology assisted semi-supervised bug report classification. Journal of Theoretical & Applied Information Technology. 2015; 78(2):170-80.

[21][21]Gopalan RP, Krishna A. Duplicate bug report detection using clustering. In Australian software engineering conference 2014 (pp. 104-9). IEEE.

[22][22]Cui JF, Chae HS. Applying agglomerative hierarchical clustering algorithms to component identification for legacy systems. Information and Software Technology. 2011; 53(6):601-14.

[23][23]Rousidis D, Tjortjis C. Clustering data retrieved from java source code to support software maintenance: a case study. In European conference on software maintenance and reengineering 2005 (pp. 276-9). IEEE.

[24][24]Hammad M. Identifying related commits from software repositories. International Journal of Computer Applications in Technology. 2015; 51(3):212-8.

[25][25]Maqbool O, Babri H. Hierarchical clustering for software architecture recovery. IEEE Transactions on Software Engineering. 2007; 33(11):759-80.

[26][26]Maqbool O, Babri HA. Automated software clustering: an insight using cluster labels. Journal of Systems and Software. 2006; 79(11):1632-48.