본문 바로가기
KERD
논문KCI 등재

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

1

조회

0

다운로드

1

인용

0

참고문헌

키워드

초록

Bug report processing is a key element of bug fixing in modern software maintenance. Bug reports are notprocessed immediately after submission and involve several processes such as bug report deduplication andbug report triage before bug fixing is initiated; however, this method of bug fixing is very inefficient because allthese processes are performed manually. Software engineers have persistently highlighted the need to automatethese 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 toimprove the accuracy of existing techniques for bug report processing. Reviews of each method proposed inthis study consist of a description, used techniques, experiments, and comparison results. The results of thisstudy indicate that research in the field of bug deduplication still lacks and therefore requires numerous studiesthat integrate clustering and natural language processing. This study further indicates that although all studiesin the field of triage are based on machine learning, results of studies on deep learning are still insufficient.

Abstract

Bug report processing is a key element of bug fixing in modern software maintenance. Bug reports are notprocessed immediately after submission and involve several processes such as bug report deduplication andbug report triage before bug fixing is initiated; however, this method of bug fixing is very inefficient because allthese processes are performed manually. Software engineers have persistently highlighted the need to automatethese 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 toimprove the accuracy of existing techniques for bug report processing. Reviews of each method proposed inthis study consist of a description, used techniques, experiments, and comparison results. The results of thisstudy indicate that research in the field of bug deduplication still lacks and therefore requires numerous studiesthat integrate clustering and natural language processing. This study further indicates that although all studiesin the field of triage are based on machine learning, results of studies on deep learning are still insufficient.

참고문헌 (77)

  1. S. Just, "Towards the next generation of bug tracking systems", Proceedings of 2008 IEEE Symposium on Visual Languages and Human-Centric Computing, Herrsching am Ammersee, pp.82~85 (2008)
  2. N. Bettenburg, "Duplicate bug reports considered harmful…really?", Proceedings of 2008 IEEE International Conference on Software Maintenance, pp.337~345 (2008)
  3. T. Dal Sasso, "In∗ bug: visual analytics of bug repositories", Proceedings of 2014 Software Evolution Week-IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMRWCRE), pp.415~419
  4. A. Hora, "Bug maps: a tool for the visual exploration and analysis of bugs", Proceedings of 2012 16th European Conference on Software Maintenance and Reengineering, pp.523~526 (2012)
  5. M. D'Ambros, "Supporting software evolution analysis with historical dependencies and defect information", Proceedings of 2008 IEEE International Conference on Software Maintenance, pp.412~415 (2008)
  6. "Life cycle of a bug"[URL]
  7. P. Knab, "Interactive views for analyzing problem reports", Proceedings of 2009 IEEE International Conference on Software Maintenance, pp.527~530 (2009)
  8. Y. Takama, "Application of monitoring support visualization to bug tracking systems", Proceedings of 2013 IEEE International Symposium on Industrial Electronics, pp.1~5 (2013)
  9. T. Dal Sasso, "What makes a satisficing bug report?", Proceedings of 2016 IEEE International Conference on Software Quality, Reliability and Security (QRS), pp.164~174 (2016)
  10. J. Anvik, "Coping with an open bug repository", Proceedings of the 2005OOPSLA Workshop on Eclipse Technology eXchange, pp.35~39 (2005)
  11. J. Anvik, "Who should fix this bug?", Proceedings of the 28th International Conference on Software Engineering, pp.361~370 (2006)
  12. "Bug report: BE-268 in JIRA"[URL]
  13. "Bug report: projects and category (not global categories)" (2013)[URL]
  14. "Bug report: Bug 1449567 in Bugzilla"[URL]
  15. A. Alipour, "A contextual approach towards more accurate duplicate bug report detection", Proceedings of 2013 10th Working Conference on Mining Software Repositories (MSR), pp.183~192 (2013)
  16. A. T. Nguyen, "Duplicate bug report detection with a combination of information retrieval and topic modeling", Proceedings of the 27th IEEE, 2012, 70~79
  17. C. Sun, "A discriminative model approach for accurate duplicate bug report retrieval", Proceedings of the 32nd ACM, 2010, 45~54
  18. P. Runeson, "Detection of duplicate defect reports using natural language processing", Proceedings of the 29th International Conference on Software Engineering, pp.499~510 (2007)
  19. C. Sun, "Towards more accurate retrieval of duplicate bug reports", Proceedings of the 2011 26th IEEE, 2011, 253~262
  20. N. Jalbert, "Automated duplicate detection for bug tracking systems", Proceedings of 2008IEEE International Conference on Dependable Systems and Networks With FTCS and DCC (DSN), pp.52~61 (2008)
  21. D. M. Blei, "Latent Dirichlet allocation", Journal of Machine Learning Research, 3, pp.993~1022 (2003)
  22. S. S. Baek, "Detecting duplicate bug reports for reducing developers workload", Proceedings of the 2016 KISS Conference, pp.634~636 (2016)
  23. "Bug classification: feature extraction and comparison of event model using naive Bayes approach" (2013)[URL]
  24. J. Zou, "Automated duplicate bug report detection using multi-factor analysis", IEICE Transactions on Information and Systems, 99(7), pp.1762~1775 (2016)
  25. W. Maalej, "Bug report, feature request, or simply praise? On automatically classifying app reviews", Proceedings of 2015 IEEE 23rd International Requirements Engineering Conference (RE), pp.116~125 (2015)
  26. A. Sureka, "Detecting duplicate bug report using character n-gram-based features", Proceedings of 2010 Asia Pacific Software Engineering Conference, pp.366~374 (2010)
  27. S. Banitaan, "Tram: an approach for assigning bug reports using their metadata", Proceedings of 2013 3rd International Conference on Communications and Information Technology (ICCIT), pp.215~219 (2013)
  28. V. Guana, "Do the stars align? Multidimensional analysis of Android's layered architecture", Proceedings of the 9th IEEE Working Conference on Mining Software Repositories, pp.124~127 (2012)
  29. A. Hindle, "Automated topic naming to support cross-project analysis of software maintenance activities", Proceedings of the 8th Working Conference on Mining Software Repositories, pp.163~172 (2011)
  30. D. Han, "Understanding android fragmentation with topic analysis of vendor-specific bugs", Proceedings of 2012 19th Working Conference on Reverse Engineering, pp.83~92 (2012)
  31. K. Aggarwal, "Detecting duplicate bug reports with software engineering domain knowledge", Proceedings of 22nd IEEE International Conference on Software Analysis, Evolution, and Reengineering, pp.211~220 (2015)
  32. L. Hiew, "Assisted detection of duplicate bug reports", M.S., pp.2006
  33. R. P. Gopalan, "Duplicate bug report detection using clustering", Proceedings of 2014 23rd Australian Software Engineering Conference, pp.104~109 (2014)
  34. J. Chang, "Relational topic models for document networks", Proceedings of the 12th International Conference on Artificial Intelligence and Statistics, pp.81~88 (2009)
  35. M. J. Lin, "Enhancements for duplication detection in bug reports with manifold correlation features", Journal of Systems and Software, 121, pp.223~233 (2016)
  36. Y. Tian, "Improved duplicate bug report identification", Proceedings of 2012 16th European Conference on Software Maintenance and Reengineering, pp.385~390 (2012)
  37. X. Wang, "Extracting paraphrases of technical terms from noisy parallel software corpora", Proceedings of the ACL-IJCNLP 2009 Conference Short Papers, pp.197~200 (2009)
  38. J. A. Suykens, "Least squares support vector machine classifiers", Neural Processing Letters, 9(3), pp.293~300 (1999)
  39. S. Tong, "Support vector machine active learning for image retrieval", Proceedings of the 9th ACM International Conference on Multimedia, pp.107~118 (2001)
  40. H. Zhang, "SVM-KNN: discriminative nearest neighbor classification for visual category recognition", Proceedings of 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp.2126~2136 (2006)
  41. A. McCallum, "A comparison of event models for naive Bayes text classification", Proceedings of AAAI-98 Workshop on Learning for Text Categorization, pp.41~48 (1998)
  42. D. D. Lewis, "Machine Learning: ECML-98", pp.4~15 (1998), Springer
  43. A. Y. Ng, "On discriminative vs. generative classifiers: a comparison of logistic regression and naive Bayes", Advances in Neural Information Processing Systems, 15, pp.841~848 (2002)
  44. I. Rish, "An empirical study of the naive Bayes classifier", Proceedings of IJCAI 2001 Workshop on Empirical Methods in Artificial Intelligence, pp.41~46 (2001)
  45. J. Anvik, "Reducing the effort of bug report triage: recommenders for developmentoriented decisions", ACM Transactions on Software Engineering and Methodology, 20(3) (2011)
  46. "Multi-label text classification with a mixture model trained by EM" (1999)[URL]
  47. D. Cubranic, "Automatic bug triage using text categorization", Proceedings of the 16th International Conference on Software Engineering & Knowledge Engineering, pp.92~97 (2004)
  48. P. Bhattacharya, "Fine-grained incremental learning and multi-feature tossing graphs to improve bug triaging", Proceedings of 2010 IEEE International Conference on Software Maintenance, pp.1~10 (2010)
  49. J. Kanwal, "Bug prioritization to facilitate bug report triage", Journal of Computer Science and Technology, 27(2), pp.397~412 (2012)
  50. X. Peng, "Improving bug triage with relevant search", Proceedings of the 29th International Conference on Software Engineering and Knowledge Engineering, pp.123~128 (2017)
  51. J. Xuan, "Developer prioritization in bug repositories", Proceedings of 201234th International Conference on Software Engineering (ICSE), pp.25~35 (2012)
  52. J. Xuan, "Towards effective bug triage with software data reduction techniques", IEEE Transactions on Knowledge and Data Engineering, 27(1), pp.264~280 (2014)
  53. 양근석, "토픽 모델과 버그 리포트 메타 필드를 이용한 버그 심각도 예측 방법", 정보과학회 컴퓨팅의 실제 논문지, 21(9), pp.616~621 (2015), 한국정보과학회
  54. G. Yang, "An emotion similarity based severity prediction of software bugs : a case study of open source projects", IEICE Transactions on Information and Systems, 101(8), pp.2015~2026 (2018)
  55. W. Zhang, "KSAP : an approach to bug report assignment using KNN search and heterogeneous proximity", Information and Software Technology, 70, pp.68~84 (2016)
  56. M. L. Zhang, "ML-KNN : a lazy learning approach to multi-label learning", Pattern Recognition, 40(7), pp.2038~2048 (2007)
  57. X. Xia, "Accurate developer recommendation for bug resolution", Proceedings of 2013 20th Working Conference on Reverse Engineering (WCRE), pp.72~81 (2013)
  58. W. Wu, "Drex: developer recommendation with k-nearest-neighbor search and expertise ranking", Proceedings of 2011 18th Asia-Pacific Software Engineering Conference, pp.389~396 (2011)
  59. X. Xie, "Dretom: developer recommendation based on topic models for bug resolution", Proceedings of the 8th International Conference on Predictive Models in Software Engineering, pp.19~28 (2012)
  60. A. Tamrawi, "Fuzzy set and cache-based approach for bug triaging", Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, pp.365~375 (2011)
  61. T. Zhang, "Towards more accurate severity prediction and fixer recommendation of software bugs", Journal of Systems and Software, 117, pp.166~184 (2016)
  62. H. M. Wallach, "Topic modeling: beyond bag-of-words", Proceedings of the 23rd International Conference on Machine Learning, pp.977~984 (2006)
  63. J. Yang, "Evaluating bag-of-visual-words representations in scene classification", Proceedings of the International Workshop on Workshop on Multimedia Information Retrieval, pp.197~206 (2007)
  64. B. Sriram, "Short text classification in twitter to improve information filtering", Proceedings of the 33rd International ACM SIGIR Conference on Research and Development in Information Retrieval, pp.841~842 (2010)
  65. "DeepTriage: exploring the effectiveness of deep learning for bug triaging" (2018)[URL]
  66. A. S. Badashian, "Crowdsourced bug triaging", Proceedings of 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp.506~510 (2015)
  67. L. Jonsson, "Automated bug assignment : ensemble-based machine learning in large scale industrial contexts", Empirical Software Engineering, 21(4), pp.1533~1578 (2016)
  68. D. H. Wolpert, "Stacked generalization", Neural Networks, 5(2), pp.241~259 (1992)
  69. N. Li, "Predicting software black-box defects using stacked generalization", Proceedings of 2011 6th International Conference on Digital Information Management, pp.294~299 (2011)
  70. A. Amamra, "Computer Applications for Software Engineering, Disaster Recovery, and Business Continuity", pp.131~137 (2012), Springer
  71. R. Shokripour, "A time-based approach to automatic bug report assignment", Journal of Systems and Software, 102, pp.109~122 (2015)
  72. R. Shokripour, "Why so complicated? Simple term filtering and weighting for location-based bug report assignment recommendation", Proceedings of 2013 10th Working Conference on Mining Software Repositories (MSR), pp.2~11 (2013)
  73. S. Wang, "FixerCache: unsupervised caching active developers for diverse bug triage", Proceedings of the 8th ACM, 2014, ~
  74. W. Wen, "Colua: automatically predicting configuration bug reports and extracting configuration options", Proceedings of 2016 IEEE 27th International Symposium on Software Reliability Engineering (ISSRE), pp.150~161 (2016)
  75. P. Bhattacharya, "Graph-based analysis and prediction for software evolution", Proceedings of 2012 34th International Conference on Software Engineering (ICSE), pp.419~429 (2012)
  76. G. Erkan, "Lexrank : graph-based lexical centrality as salience in text summarization", Journal of Artificial Intelligence Research, 22, pp.457~479 (2004)
  77. P. Liu, "Analysis and Prediction of Water Quality Using LSTM Deep Neural Networks in IoT Environment", Sustainability, 11(7), pp.2058~ (2019)

관련 논문AI추천

이 간행물의 다른 논문 (18건)