How to Recommend Appropriate Developers for Bug Fixing?

Due to increased size and complexity of software, software maintenance has become a very difficult task for developers, especially on bug fixing. For famous open source systems, the number of daily submitted bug reports is very high. Unfortunately, as most of bug reports were not assigned to appropriate developers for fixing related bugs, these bug reports need to be reassigned. A larger number of reassignments cause the time of bug fixing to increase and the fixing probability to decrease. In order to resolve this problem, it is necessary to recommend appropriate developers for fixing bugs. In this paper, we propose a new developer recommendation method for assigning appropriate developers to fix bugs. This method, based on social network and experts' feedback, recommends some candidate developers. We also consider the fixing efficiency and the experience of these candidate developers to rank the candidate developers. We have validated our approach on the famous software bug repository and showed the feasibility and availability of the method by experiments.

[1]  Philip J. Guo,et al.  "Not my bug!" and other reasons for software bug report reassignments , 2011, CSCW.

[2]  Ye Yang,et al.  DREX: Developer Recommendation with K-Nearest-Neighbor Search and Expertise Ranking , 2011, 2011 18th Asia-Pacific Software Engineering Conference.

[3]  Christopher H. Brooks,et al.  Improved annotation of the blogosphere via autotagging and hierarchical clustering , 2006, WWW '06.

[4]  Nicholas Jalbert,et al.  Automated duplicate detection for bug tracking systems , 2008, 2008 IEEE International Conference on Dependable Systems and Networks With FTCS and DCC (DSN).

[5]  D.M. Mount,et al.  An Efficient k-Means Clustering Algorithm: Analysis and Implementation , 2002, IEEE Trans. Pattern Anal. Mach. Intell..

[6]  Rongxin Wu,et al.  ReLink: recovering links between bugs and changes , 2011, ESEC/FSE '11.

[7]  Daphne Koller,et al.  Support Vector Machine Active Learning with Applications to Text Classification , 2000, J. Mach. Learn. Res..

[8]  Andreas Zeller,et al.  How Long Will It Take to Fix This Bug? , 2007, Fourth International Workshop on Mining Software Repositories (MSR'07:ICSE Workshops 2007).

[9]  Tao Zhang,et al.  A Bug Rule Based Technique with Feedback for Classifying Bug Reports , 2011, 2011 IEEE 11th International Conference on Computer and Information Technology.

[10]  Mark Goadrich,et al.  The relationship between Precision-Recall and ROC curves , 2006, ICML.

[11]  Oscar Nierstrasz,et al.  Assigning bug reports using a vocabulary-based expertise model of developers , 2009, 2009 6th IEEE International Working Conference on Mining Software Repositories.

[12]  Siau-Cheng Khoo,et al.  A discriminative model approach for accurate duplicate bug report retrieval , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[13]  Cheng-Zen Yang,et al.  Implicit Social Network Model for Predicting and Tracking the Location of Faults , 2008, 2008 32nd Annual IEEE International Computer Software and Applications Conference.

[14]  Thomas Zimmermann,et al.  Improving bug triage with bug tossing graphs , 2009, ESEC/FSE '09.

[15]  Jignesh M. Patel,et al.  Estimating the selectivity of tf-idf based cosine similarity predicates , 2007, SGMD.

[16]  Gail C. Murphy,et al.  Who should fix this bug? , 2006, ICSE.