Recommending expert developers using usage and implementation expertise
University of Lethbridge. Faculty of Arts and Science
Lethbridge, Alta. : University of Lethbridge, Dept. of Mathematics and Computer Science
Knowing the expert developers of a software development project has great significance in large-scale and geographically distributed projects. However, finding these expert developers can be challenging, which becomes more complicated over time as the development team gets bigger and more distributed. This thesis presents an expert developer recommender system for methods, based on the usage expertise, implementation expertise, and the combination of both, for the developers of a software project. A developer acquires usage expertise on a method by calling or using it and implementation expertise by creating or modifying it. To determine the method expertise of the developers, we mine both the source code repository and the version histories of a software development project. We determine the accuracy of our system by calculating the percentage of successful recommendations within the Top-N results. Through several experiments, we found that our recommender system produces around 90% average accuracy for Top-10 recommendations.
Computer programmers , Computer-aided software engineering , Dissertations, Academic , Information retrieval , Programming (Computers) , Recommendation systems (Information filtering) , Software engineering.