Automated Bug Assignment in Software Maintenance Using Graph Databases

Full Text (PDF, 640KB), PP.27-36

Views: 0 Downloads: 0

Author(s)

Satish C J 1,* Anand Mahendran 1

1. School of Computer Science and Engineering, VIT University, Vellore, 632014, India

* Corresponding author.

DOI: https://doi.org/10.5815/ijisa.2018.02.03

Received: 28 May 2017 / Revised: 29 Jun. 2017 / Accepted: 21 Jul. 2017 / Published: 8 Feb. 2018

Index Terms

Software maintenance, Software engineering, Bug Assignment, Graph Databases

Abstract

Processes involved in maintaining a system play a crucial role in enhancing customer satisfaction and longevity of the system. Maintenance engineers are the most critical resources in Software Maintenance. They play a significant role in fixing bugs and ensuring the normal functioning of systems. Software maintenance is a tedious task for novice engineers who are new to the system domain. The lack of up-to-date documentation makes system comprehension more challenging for inexperienced engineers. Assignment of high priority bugs to novice engineers may lead to inappropriate fixes and delay in the revival of an impacted system. Such issues may degrade customer satisfaction and also poor fixes can have a severe impact on the functioning of the system at a later stage. Our research is focussed on identification of engineers with the right level of experience to fix a given bug. We have used the concept of page ranking and graph databases to compute the importance of bugs and assignees in a graph. A newly reported bug will be scored and matched with bugs that have a similar score in the graph database. Assignees who have fixed a bug that closely maps the score of the reported bug will be assigned the task of fixing the bug. We have implemented this methodology using bug reports from QT framework on neo4j graph database. Our results are promising and will definitely pave way for a new bug assignment strategy in software maintenance.

Cite This Paper

Satish C J, Anand Mahendran, "Automated Bug Assignment in Software Maintenance Using Graph Databases", International Journal of Intelligent Systems and Applications(IJISA), Vol.10, No.2, pp.27-36, 2018. DOI:10.5815/ijisa.2018.02.03

Reference

[1]Khan, A. S., & Mattsson, M. K. “Management of documentation and maintainability in the context of software handover.” In Computing Technology and Information Management (ICCM), 2012 8th International Conference on IEEE. Vol. 1, pp. 238-243,April 2012
[2]Satish, C. J, and T. Raghuveera. "Visualizing object oriented software using virtual worlds." In: Proc. of the 4th WSEAS International Conf. on Software Engineering, Parallel & Distributed Systems. World Scientific and Engineering Academy and Society (WSEAS), 2005.
[3]Satish, C. J. and M. Anand. "Software Documentation Management Issues and Practices: A Survey." Indian Journal of Science and Technology Vol. 9, Issue 20, 2016.
[4]Banerjee, S., Syed, Z., Helmick, J., Culp, M., Ryan, K. and Cukic, B.,”Automated triaging of very large bug repositories.” Information and Software Technology,2016
[5]Jeong, G., Kim, S. and Zimmermann, T., “Improving bug triage with bug tossing graphs.” In Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering pp. 111-120. ACM,2009
[6]Xia, Xin, et al. "Improving automated bug triaging with specialized topic model." IEEE Transactions on Software Engineering 43.3, pp 272-297, 2017.
[7]Jonsson, L., Borg, M., Broman, D., Sandahl, K., Eldh, S. and Runeson, P., “Automated bug assignment: Ensemble-based machine learning in large scale industrial contexts.” Empirical Software Engineering, 21(4), pp.1533-1578,2016
[8]Bhattacharya, P., Neamtiu, I. and Shelton, C.R., “Automated, highly-accurate, bug assignment using machine learning and tossing graphs.” Journal of Systems and Software, 85(10), pp.2275-2292,2012
[9]Zhang, T. and Lee, B., March. “A hybrid bug triage algorithm for developer recommendation.” In Proceedings of the 28th annual ACM symposium on applied computing pp. 1088-1094. ACM,2013
[10]Nagwani, N.K. and Verma, S., January. “Predicting expert developers for newly reported bugs using frequent terms similarities of bug attributes.” In ICT and Knowledge Engineering (ICT & Knowledge Engineering), 2011 9th International Conference on IEEE, pp. 113-117,2013
[11]Tian, Y., Lo, D., Xia, X. and Sun, C.”Automated prediction of bug report priority using multi-factor analysis.” Empirical Software Engineering, 20(5), pp.1354-1383.2015
[12]Zhang, W., Wang, S. and Wang, Q.,”KSAP: An approach to bug report assignment using KNN search and heterogeneous proximity. Information and Software Technology, 70, pp.68-84. 2016
[13]Khatun, Afrina, and Kazi Sakib. "A bug assignment technique based on bug fixing expertise and source commit recency of developers." Computer and Information Technology (ICCIT), 2016 19th International Conference on. IEEE, 2016.
[14]Page, L., Brin, S., Motwani, R. and Winograd, T.,“The PageRank citation ranking: Bringing order to the web”. Stanford InfoLab ,1999
[15]QT issues download page https://bugreports.qt.io/browse/QTWEBSITE-745?jql=, Nov 2016