Browse > Article
http://dx.doi.org/10.3745/JIPS.04.0130

Systematic Review of Bug Report Processing Techniques to Improve Software Management Performance  

Lee, Dong-Gun (Dept. of Computer Engineering, Yeungnam University)
Seo, Yeong-Seok (Dept. of Computer Engineering, Yeungnam University)
Publication Information
Journal of Information Processing Systems / v.15, no.4, 2019 , pp. 967-985 More about this Journal
Abstract
Bug report processing is a key element of bug fixing in modern software maintenance. Bug reports are not processed immediately after submission and involve several processes such as bug report deduplication and bug report triage before bug fixing is initiated; however, this method of bug fixing is very inefficient because all these processes are performed manually. Software engineers have persistently highlighted the need to automate these processes, and as a result, many automation techniques have been proposed for bug report processing; however, the accuracy of the existing methods is not satisfactory. Therefore, this study focuses on surveying to improve the accuracy of existing techniques for bug report processing. Reviews of each method proposed in this study consist of a description, used techniques, experiments, and comparison results. The results of this study indicate that research in the field of bug deduplication still lacks and therefore requires numerous studies that integrate clustering and natural language processing. This study further indicates that although all studies in the field of triage are based on machine learning, results of studies on deep learning are still insufficient.
Keywords
Bug Report; Clustering; Duplication Detection; Information Retrieval; Machine Learning; Priority; Severity; Software Developer Assignment; Software Management; Triage;
Citations & Related Records
연도 인용수 순위
  • Reference
1 J. Yang, Y. G. Jiang, A. G. Hauptmann, and C. W. Ngo, "Evaluating bag-of-visual-words representations in scene classification," in Proceedings of the International Workshop on Workshop on Multimedia Information Retrieval, Augsburg, Germany, 2007, pp. 197-206.
2 C. Sun, D. Lo, S. C. Khoo, and J. Jiang, "Towards more accurate retrieval of duplicate bug reports," in Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering, Lawrence, KS, 2011, pp. 253-262.
3 N. Jalbert and W. Weimer, "Automated duplicate detection for bug tracking systems," in Proceedings of 2008 IEEE International Conference on Dependable Systems and Networks With FTCS and DCC (DSN), Anchorage, AK, 2008, pp. 52-61.
4 D. M. Blei, A. Y. Ng, and M. I. Jordan, "Latent Dirichlet allocation," Journal of Machine Learning Research, vol. 3, pp. 993-1022, 2003.
5 S. S. Baek, G. S. Yang, J. W. Lee, and B. J. Lee, "Detecting duplicate bug reports for reducing developers' workload," in Proceedings of the 2016 KISS Conference, 2016, pp. 634-636.
6 S. J. Dommati, R. Agrawal, R. M. Reddy G, and S. S. Kamath, "Bug classification: feature extraction and comparison of event model using naive Bayes approach," 2013 [Online]. Available: https://arxiv.org/abs/1304.1677.
7 J. Zou, L. Xu, M. Yang, X. Zhang, J. Zeng, and S. Hirokawa, "Automated duplicate bug report detection using multi-factor analysis," IEICE Transactions on Information and Systems, vol. 99, no. 7, pp. 1762-1775, 2016.   DOI
8 B. Sriram, D. Fuhry, E. Demir, H. Ferhatosmanoglu, and M. Demirbas, "Short text classification in twitter to improve information filtering," in Proceedings of the 33rd International ACM SIGIR Conference on Research and Development in Information Retrieval, Geneva, Switzerland, 2010, pp. 841-842.
9 S. Mani, A. Sankaran, and R. Aralikatte, "DeepTriage: exploring the effectiveness of deep learning for bug triaging," 2018 [Online]. Available: https://arxiv.org/abs/1801.01275.
10 A. S. Badashian, A. Hindle, and E. Stroulia, "Crowdsourced bug triaging," in Proceedings of 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME), Bremen, Germany, 2015, pp. 506-510.
11 L. Jonsson, M. Borg, D. Broman, K. Sandahl, S. Eldh, and P. Runeson, "Automated bug assignment: ensemble-based machine learning in large scale industrial contexts," Empirical Software Engineering, vol. 21, no. 4, pp. 1533-1578, 2016.   DOI
12 D. H. Wolpert, "Stacked generalization," Neural Networks, vol. 5, no. 2, pp. 241-259, 1992.   DOI
13 N. Li, Z. Li, Y. Nie, X. Sun, and X. Li, "Predicting software black-box defects using stacked generalization," in Proceedings of 2011 6th International Conference on Digital Information Management, Melbourn, Australia, 2011, pp. 294-299.
14 A. Amamra, C. Talhi, J. M. Robert, and M. Hamiche, "Enhancing smartphone malware detection performance by applying machine learning hybrid classifiers," in Computer Applications for Software Engineering, Disaster Recovery, and Business Continuity. Heidelberg: Springer, 2012, pp. 131-137.
15 T. Dal Sasso and M. Lanza, "In* bug: visual analytics of bug repositories," in Proceedings of 2014 Software Evolution Week-IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMRWCRE), Antwerp, Belgium, pp. 415-419.
16 W. Maalej and H. Nabil, "Bug report, feature request, or simply praise? On automatically classifying app reviews," in Proceedings of 2015 IEEE 23rd International Requirements Engineering Conference (RE), Ottawa, Canada, 2015, pp. 116-125.
17 A. Sureka and P. Jalote, "Detecting duplicate bug report using character n-gram-based features," in Proceedings of 2010 Asia Pacific Software Engineering Conference, Sydney, Australia, 2010, pp. 366-374.
18 S. Banitaan and M. Alenezi, "Tram: an approach for assigning bug reports using their metadata," in Proceedings of 2013 3rd International Conference on Communications and Information Technology (ICCIT), Beirut, Lebanon, 2013, pp. 215-219.
19 S. Just, R. Premraj, and T. Zimmermann, "Towards the next generation of bug tracking systems," in Proceedings of 2008 IEEE Symposium on Visual Languages and Human-Centric Computing, Herrsching am Ammersee, Germany, 2008, pp. 82-85.
20 N. Bettenburg, R. Premraj, T. Zimmermann, and S. Kim, "Duplicate bug reports considered harmful. really?," in Proceedings of 2008 IEEE International Conference on Software Maintenance, Beijing, China, 2008, pp. 337-345.
21 P. Bhattacharya and I. Neamtiu, "Fine-grained incremental learning and multi-feature tossing graphs to improve bug triaging," in Proceedings of 2010 IEEE International Conference on Software Maintenance, Timisoara, Romania, 2010, pp. 1-10.
22 J. Anvik and G. C. Murphy, "Reducing the effort of bug report triage: recommenders for developmentoriented decisions," ACM Transactions on Software Engineering and Methodology, vol. 20, no. 3, article no. 10, 2011.
23 A. McCallum, "Multi-label text classification with a mixture model trained by EM," 1999 [Online]. Available: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.35.888.
24 D. Cubranic and G. Murphy, "Automatic bug triage using text categorization," in Proceedings of the 16th International Conference on Software Engineering & Knowledge Engineering, Banff, Canada, 2004, pp. 92-97.
25 J. Kanwal and O. Maqbool, "Bug prioritization to facilitate bug report triage," Journal of Computer Science and Technology, vol. 27, no. 2, pp. 397-412, 2012.   DOI
26 X. Peng, P. Zhou, J. Liu, and X. Chen, "Improving bug triage with relevant search," in Proceedings of the 29th International Conference on Software Engineering and Knowledge Engineering, Pittsburgh, PA, 2017, pp. 123-128.
27 P. Knab, B. Fluri, H. C. Gall, and M. Pinzger, "Interactive views for analyzing problem reports," in Proceedings of 2009 IEEE International Conference on Software Maintenance, Edmonton, Canada, 2009, pp. 527-530.
28 A. Hora, N. Anquetil, S. Ducasse, M. Bhatti, C. Couto, M. T. Valente, and J. Martins, "Bug maps: a tool for the visual exploration and analysis of bugs," in Proceedings of 2012 16th European Conference on Software Maintenance and Reengineering, Szeged, Hungary, 2012, pp. 523-526.
29 M. D'Ambros, "Supporting software evolution analysis with historical dependencies and defect information," in Proceedings of 2008 IEEE International Conference on Software Maintenance, Beijing, China, 2008, pp. 412-415.
30 Life cycle of a bug [Online]. Available: https://www.bugzilla.org/docs/2.18/html/lifecycle.html.
31 Y. Takama and T. Kurosawa, "Application of monitoring support visualization to bug tracking systems," in Proceedings of 2013 IEEE International Symposium on Industrial Electronics, Taipei, Taiwan, 2013, pp. 1-5.
32 T. Dal Sasso, A. Mocci, and M. Lanza, "What makes a satisficing bug report?," in Proceedings of 2016 IEEE International Conference on Software Quality, Reliability and Security (QRS), Vienna, Austria, 2016, pp. 164-174.
33 D. Han, C. Zhang, X. Fan, A. Hindle, K. Wong, and E. Stroulia, "Understanding android fragmentation with topic analysis of vendor-specific bugs," in Proceedings of 2012 19th Working Conference on Reverse Engineering, Kingston, Canada, 2012, pp. 83-92.
34 J. Xuan, H. Jiang, Z. Ren, and W. Zou, "Developer prioritization in bug repositories," in Proceedings of 2012 34th International Conference on Software Engineering (ICSE), Zurich, Switzerland, 2012, pp. 25-35.
35 J. Xuan, H. Jiang, Y. Hu, Z. Ren, W. Zou, Z. Luo, and X. Wu, "Towards effective bug triage with software data reduction techniques," IEEE Transactions on Knowledge and Data Engineering, vol. 27, no. 1, pp. 264-280, 2014.   DOI
36 G. Yang and B. Lee, "Predicting bug severity by utilizing topic model and bug report meta-field," KIISE Transactions on Computing Practices, vol. 21, no. 9, pp. 616-621, 2015.   DOI
37 V. Guana, F. Rocha, A. Hindle, and E. Stroulia, "Do the stars align? Multidimensional analysis of Android's layered architecture," in Proceedings of the 9th IEEE Working Conference on Mining Software Repositories, Zurich, Switzerland, 2012, pp. 124-127.
38 A. Hindle, N. A. Ernst, M. W. Godfrey, and J. Mylopoulos, "Automated topic naming to support cross-project analysis of software maintenance activities," in Proceedings of the 8th Working Conference on Mining Software Repositories, Honolulu, HI, 2011, pp. 163-172.
39 R. Shokripour, J. Anvik, Z. M. Kasirun, and S. Zamani, "Why so complicated? Simple term filtering and weighting for location-based bug report assignment recommendation," in Proceedings of 2013 10th Working Conference on Mining Software Repositories (MSR), San Francisco, CA, 2013, pp. 2-11.
40 R. Shokripour, J. Anvik, Z. M. Kasirun, and S. Zamani, "A time-based approach to automatic bug report assignment," Journal of Systems and Software, vol. 102, pp. 109-122, 2015.   DOI
41 S. Wang, W. Zhang, and Q. Wang, "FixerCache: unsupervised caching active developers for diverse bug triage," in Proceedings of the 8th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, 2014.
42 W. Wen, T. Yu, and J. H. Hayes, "Colua: automatically predicting configuration bug reports and extracting configuration options," in Proceedings of 2016 IEEE 27th International Symposium on Software Reliability Engineering (ISSRE), Ottawa, Canada, 2016, pp. 150-161.
43 P. Bhattacharya, M. Iliofotou, I. Neamtiu, and M. Faloutsos, "Graph-based analysis and prediction for software evolution," in Proceedings of 2012 34th International Conference on Software Engineering (ICSE), Zurich, Switzerland, 2012, pp. 419-429.
44 G. Erkan and D. R. Radev, "Lexrank: graph-based lexical centrality as salience in text summarization," Journal of Artificial Intelligence Research, vol. 22, pp. 457-479, 2004.   DOI
45 J. Chang and D. Blei, "Relational topic models for document networks," in Proceedings of the 12th International Conference on Artificial Intelligence and Statistics, Clearwater, FL, 2009, pp. 81-88.
46 K. Aggarwal, F. Timbers, T. Rutgers, A. Hindle, E. Stroulia, and R. Greiner, "Detecting duplicate bug reports with software engineering domain knowledge," in Proceedings of 22nd IEEE International Conference on Software Analysis, Evolution, and Reengineering, Montreal, Canada, 2015, pp. 211-220.
47 L. Hiew, "Assisted detection of duplicate bug reports," M.S. thesis, University of British Columbia, Vancouver, Canada, 2006.
48 R. P. Gopalan and A. Krishna, "Duplicate bug report detection using clustering," in Proceedings of 2014 23rd Australian Software Engineering Conference, Milsons Point, Australia, 2014, pp. 104-109.
49 M. J. Lin, C. Z. Yang, C. Y. Lee, and C. C. Chen, "Enhancements for duplication detection in bug reports with manifold correlation features," Journal of Systems and Software, vol. 121, pp. 223-233, 2016.   DOI
50 P. Liu, J. Wang, A. K. Sangaiah, Y. Xie, and X. Yin, "Analysis and Prediction of Water Quality Using LSTM Deep Neural Networks in IoT Environment," Sustainability, vol. 11, no. 7, 2058, 2019.   DOI
51 X. Xia, D. Lo, X. Wang, and B. Zhou, "Accurate developer recommendation for bug resolution," in Proceedings of 2013 20th Working Conference on Reverse Engineering (WCRE), Koblenz, Germany, 2013, pp. 72-81.
52 G. Yang, T. Zhang, and B. Lee, "An emotion similarity based severity prediction of software bugs: a case study of open source projects," IEICE Transactions on Information and Systems, vol. 101, no. 8, pp. 2015-2026, 2018.   DOI
53 W. Zhang, S. Wang, and O. Wang, "KSAP: an approach to bug report assignment using KNN search and heterogeneous proximity," Information and Software Technology, vol. 70, pp. 68-84, 2016.   DOI
54 M. L. Zhang and Z. H. Zhou, "ML-KNN: a lazy learning approach to multi-label learning," Pattern Recognition, vol. 40, no. 7, pp. 2038-2048, 2007.   DOI
55 MantisBT, "Bug report: projects and category (not global categories)," 2013 [Online]. Available: https://mantisbt.org/bugs/view.php?id=15501.
56 J. Anvik, L. Hiew, and G. C. Murphy, "Coping with an open bug repository," in Proceedings of the 2005 OOPSLA Workshop on Eclipse Technology eXchange, San Diego, CA, 2005, pp. 35-39.
57 J. Anvik, L. Hiew, and G. C. Murphy, "Who should fix this bug?," in Proceedings of the 28th International Conference on Software Engineering, Shanghai, China, 2006, pp. 361-370.
58 Bug report: BE-268 in JIRA [Online]. Available: https://jira.hyperledger.org/projects/BE/issues/BE-268?filter=allopenissues
59 Bug report: Bug 1449567 in Bugzilla [Online]. Available: https://bugzilla.mozilla.org/show_bug.cgi?id=1449567
60 A. Alipour, A. Hindle, and E. Stroulia, "A contextual approach towards more accurate duplicate bug report detection," in Proceedings of 2013 10th Working Conference on Mining Software Repositories (MSR), San Francisco, CA, 2013, pp. 183-192.
61 A. T. Nguyen, T. T. Nguyen, T. N. Nguyen, D. Lo, and C. Sun, "Duplicate bug report detection with a combination of information retrieval and topic modeling," in Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering, Essen, Germany, 2012, pp. 70-79.
62 C. Sun, D. Lo, X. Wang, J. Jiang, and S. C. Khoo, "A discriminative model approach for accurate duplicate bug report retrieval," in Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, Cape Town, South Africa, 2010, pp. 45-54.
63 T. Zhang, J. Chen, G. Yang, B. Lee, and X. Luo, "Towards more accurate severity prediction and fixer recommendation of software bugs," Journal of Systems and Software, vol. 117, pp. 166-184, 2016.   DOI
64 W. Wu, W. Zhang, Y. Yang, and Q. Wang, "Drex: developer recommendation with k-nearest-neighbor search and expertise ranking," in Proceedings of 2011 18th Asia-Pacific Software Engineering Conference, Ho Chi Minh, Vietnam, 2011, pp. 389-396.
65 X. Xie, W. Zhang, Y. Yang, and Q. Wang, "Dretom: developer recommendation based on topic models for bug resolution," in Proceedings of the 8th International Conference on Predictive Models in Software Engineering, Lund, Sweden, 2012, pp. 19-28.
66 A. Tamrawi, T. T. Nguyen, J. M. Al-Kofahi, and T. N. Nguyen, "Fuzzy set and cache-based approach for bug triaging," in Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, Szeged, Hungary, 2011, pp. 365-375.
67 H. M. Wallach, "Topic modeling: beyond bag-of-words," in Proceedings of the 23rd International Conference on Machine Learning, Pittsburgh, PA, 2006, pp. 977-984.
68 X. Wang, D. Lo, J. Jiang, L. Zhang, and H. Mei, "Extracting paraphrases of technical terms from noisy parallel software corpora," in Proceedings of the ACL-IJCNLP 2009 Conference Short Papers, Singapore, 2009, pp. 197-200.
69 P. Runeson, M. Alexandersson, and O. Nyholm, "Detection of duplicate defect reports using natural language processing," in Proceedings of the 29th International Conference on Software Engineering, Minneapolis, MN, 2007, pp. 499-510.
70 Y. Tian, C. Sun, and D. Lo, "Improved duplicate bug report identification," in Proceedings of 2012 16th European Conference on Software Maintenance and Reengineering, Szeged, Hungary, 2012, pp. 385-390.
71 J. A. Suykens and J. Vandewalle, "Least squares support vector machine classifiers," Neural Processing Letters, vol. 9, no. 3, pp. 293-300, 1999.   DOI
72 S. Tong and E. Chang, "Support vector machine active learning for image retrieval," in Proceedings of the 9th ACM International Conference on Multimedia, Ottawa, Canada, 2001, pp. 107-118.
73 H. Zhang, A. C. Berg, M. Maire, and J. Malik, "SVM-KNN: discriminative nearest neighbor classification for visual category recognition," in Proceedings of 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, New York, NY, 2006, pp. 2126-2136.
74 A. McCallum and K. Nigam, "A comparison of event models for naive Bayes text classification," in Proceedings of AAAI-98 Workshop on Learning for Text Categorization, Madison, WI, 1998, pp. 41-48.
75 D. D. Lewis, "Naive (Bayes) at forty: the independence assumption in information retrieval," in Machine Learning: ECML-98. Heidelberg: Springer, 1998, pp. 4-15.
76 A. Y. Ng and M. I. Jordan, "On discriminative vs. generative classifiers: a comparison of logistic regression and naive Bayes," Advances in Neural Information Processing Systems, vol. 15, pp. 841-848, 2002.
77 I. Rish, "An empirical study of the naive Bayes classifier," in Proceedings of IJCAI 2001 Workshop on Empirical Methods in Artificial Intelligence, Seattle, WA, 2001, pp. 41-46.