Expertise recommender: a flexible recommendation system and architecture
CSCW '00 Proceedings of the 2000 ACM conference on Computer supported cooperative work
Visualization of test information to assist fault localization
Proceedings of the 24th International Conference on Software Engineering
Expertise browser: a quantitative approach to identifying expertise
Proceedings of the 24th International Conference on Software Engineering
Scalable statistical bug isolation
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
SOBER: statistical model-based bug localization
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
How Developers Drive Software Evolution
IWPSE '05 Proceedings of the Eighth International Workshop on Principles of Software Evolution
Proceedings of the 28th international conference on Software engineering
Automating bug report assignment
Proceedings of the 28th international conference on Software engineering
Mining version archives for co-changed lines
Proceedings of the 2006 international workshop on Mining software repositories
Supporting change request assignment in open source development
Proceedings of the 2006 ACM symposium on Applied computing
Determining Implementation Expertise from Bug Reports
MSR '07 Proceedings of the Fourth International Workshop on Mining Software Repositories
Identifying Changed Source Code Lines from Version Repositories
MSR '07 Proceedings of the Fourth International Workshop on Mining Software Repositories
Does a programmer's activity indicate knowledge of code?
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Extraction of bug localization benchmarks from history
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
Proceedings of the 30th international conference on Software engineering
Branching and merging in the repository
Proceedings of the 2008 international working conference on Mining software repositories
Mining usage expertise from version archives
Proceedings of the 2008 international working conference on Mining software repositories
SZZ revisited: verifying when changes induce fixes
DEFECTS '08 Proceedings of the 2008 workshop on Defects in large software systems
Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering
Assigning bug reports using a vocabulary-based expertise model of developers
MSR '09 Proceedings of the 2009 6th IEEE International Working Conference on Mining Software Repositories
Improving bug triage with bug tossing graphs
Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Optimized assignment of developers for fixing bugs an initial evaluation for eclipse projects
ESEM '09 Proceedings of the 2009 3rd International Symposium on Empirical Software Engineering and Measurement
A degree-of-knowledge model to capture source code familiarity
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
"Not my bug!" and other reasons for software bug report reassignments
Proceedings of the ACM 2011 conference on Computer supported cooperative work
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
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Hi-index | 0.00 |
This paper describes a new technique, which automatically selects the most appropriate developers for fixing the fault represented by a failing test case, and provides a diagnosis of where to look for the fault. This technique works by incorporating three key components: (1) fault localization to inform locations whose execution correlate with failure, (2) history mining to inform which developers edited each line of code and when, and (3) expertise assignment to map locations to developers. To our knowledge, the technique is the first to assign developers to execution failures, without the need for textual bug reports. We implement this technique in our tool, WhoseFault, and describe an experiment where we utilize a large, open-source project to determine the frequency in which our tool suggests an assignment to the actual developer who fixed the fault. Our results show that 81% of the time, WhoseFault produced the same developer that actually fixed the fault within the top three suggestions. We also show that our technique improved by a difference between 4% and 40% the results of a baseline technique. Finally, we explore the influence of each of the three components of our technique over its results, and compare our expertise algorithm against an existing expertise assessment technique and find that our algorithm provides greater accuracy, by up to 37%.