Should I Bug You? Identifying Domain Experts in Software Projects Using Code Complexity Metrics
This work addresses the challenge of efficiently locating experts in software development teams to improve collaboration and knowledge management, representing an incremental advancement in using code metrics for expertise identification.
The paper tackled the problem of identifying domain experts in software projects by proposing a framework that uses code complexity metrics over time to recommend experts and detect knowledge gaps. The results, evaluated at a medium-sized company, showed that aggregated code metrics identified experts rated as acceptable candidates in over 90% of cases.
In any sufficiently complex software system there are experts, having a deeper understanding of parts of the system than others. However, it is not always clear who these experts are and which particular parts of the system they can provide help with. We propose a framework to elicit the expertise of developers and recommend experts by analyzing complexity measures over time. Furthermore, teams can detect those parts of the software for which currently no, or only few experts exist and take preventive actions to keep the collective code knowledge and ownership high. We employed the developed approach at a medium-sized company. The results were evaluated with a survey, comparing the perceived and the computed expertise of developers. We show that aggregated code metrics can be used to identify experts for different software components. The identified experts were rated as acceptable candidates by developers in over 90% of all cases.