Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/2820518.2820532acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Using developer-interaction trails to triage change requests

Published: 16 May 2015 Publication History

Abstract

The paper presents an approach, namely iHDev, to recommend developers who are most likely to implement incoming change requests. The basic premise of iHDev is that the developers who interacted with the source code relevant to a given change request are most likely to best assist with its resolution. A machine-learning technique is first used to locate source code entities relevant to the textual description of a given change request. iHDev then mines interaction trails (i.e., Mylyn sessions) associated with these source code entities to recommend a ranked list of developers. iHDev integrates the interaction trails in a unique way to perform its task, which was not investigated previously.
An empirical study on open source systems Mylyn and Eclipse Project was conducted to assess the effectiveness of iHDev. A number of change requests were used in the evaluated benchmark. Recall for top one to five recommended developers and Mean Reciprocal Rank (MRR) values are reported. Furthermore, a comparative study with two previous approaches that use commit histories and/or the source code authorship information for developer recommendation was performed. Results show that iHDev could provide a recall gain of up to 127.27% with equivalent or improved MRR values by up to 112.5%.

References

[1]
J. Anvik, L. Hiew, and G. C. Murphy, "Who should fix this bug?," in proceedings of 28th ACM International Conference on Software Engineering, ICSE '06, pp. 361--370, 2006.
[2]
H. Kagdi, M. Gethers, D. Poshyvanyk, and M. Hammad, "Assigning change requests to software developers," Journal of Software: Evolution and Process, vol. 24, no. 1, pp. 3--33, 2012.
[3]
M. Linares-Vasquez, K. Hossen, H. Dang, H. Kagdi, M. Gethers, and D. Poshyvanyk, "Triaging incoming change requests: Bug or commit history, or code authorship?," in proceedings of 28th IEEE International Conference on Software Maintenance (ICSM), 2012, pp. 451--460, 2012.
[4]
A. Tamrawi, T. T. Nguyen, J. M. Al-Kofahi, and T. N. Nguyen, "Fuzzy set and cache-based approach for bug triaging," in proceedings of 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ESEC/FSE '11, pp. 365--375, 2011.
[5]
X. Xia, D. Lo, X. Wang, and B. Zhou, "Accurate developer recommendation for bug resolution," in Proceedings of 20th Working Conference on Reverse Engineering (WCRE), 2013, pp. 72--81, 2013.
[6]
K. Hossen, H. Kagdi, and D. Poshyvanyk, "Amalgamating source code authors, maintainers, and change proneness to triage change requests," in Proceedings of the 22th IEEE International Conference on Program Comprehension, ICPC, 2014.
[7]
F. Bantelay, M. Zanjani, and H. Kagdi, "Comparing and combining evolutionary couplings from interactions and commits," in Proceedings of the 20th Working Conference on Reverse Engineering (WCRE), pp. 311--320, Oct 2013.
[8]
M. B. Zanjani, G. Swartzendruber, and H. Kagdi, "Impact analysis of change requests on source code based on interaction and commit histories," in Proceedings of the 11th Working Conference on Mining Software Repositories, MSR 2014, (New York, NY, USA), pp. 162--171, ACM, 2014.
[9]
G. Murphy, M. Kersten, and L. Findlater, "How are java software developers using the elipse ide?," IEEE Transactions on Software Engineering, vol. 23, pp. 76--83, July 2006.
[10]
M.-L. Zhang and Z.-H. Zhou, "Ml-knn: A lazy learning approach to multi-label learning," Pattern Recogn., vol. 40, pp. 2038--2048, July 2007.
[11]
A. Mockus and J. D. Herbsleb, "Expertise browser: A quantitative approach to identifying expertise," in proceedings of 24th International Conference on Software Engineering, ICSE '02, (New York, NY, USA), pp. 503--512, ACM, 2002.
[12]
S. Wang and D. Lo, "Version history, similar report, and structure: Putting them together for improved bug localization," in Proceedings of the 22Nd International Conference on Program Comprehension, ICPC 2014, (New York, NY, USA), pp. 53--63, ACM, 2014.
[13]
G. Gousios, M. Pinzger, and A. van Deursen, "An exploratory study of the pull-based software development model.," in ICSE, pp. 345--355, 2014.
[14]
J. Xuan, H. Jiang, Z. Ren, and W. Zou, "Developer prioritization in bug repositories," in Proceedings of the 34th International Conference on Software Engineering, ICSE '12, (Piscataway, NJ, USA), pp. 25--35, IEEE Press, 2012.
[15]
N. Bettenburg, R. Premraj, T. Zimmermann, and S. Kim, "Duplicate bug reports considered harmful .... really?," in Software Maintenance, 2008. ICSM 2008. IEEE International Conference on, pp. 337--345, Sept 2008.
[16]
A. Tamrawi, T. T. Nguyen, J. M. Al-Kofahi, and T. N. Nguyen, "Fuzzy set and cache-based approach for bug triaging," in Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ESEC/FSE '11, (New York, NY, USA), pp. 365--375, ACM, 2011.
[17]
L. Zou, M. Godfrey, and A. Hassan, "Detecting interaction coupling from task interaction histories," in Proceedings of the 15th IEEE International Conference on Program Comprehension, ICPC '07, pp. 135--144, June 2007.
[18]
S. Rastkar and G. Murphy, "On what basis to recommend: Changesets or interactions?," in Proceedings of the 6th IEEE International Working Conference on Mining Software Repositories, MSR '09, pp. 155--158, May 2009.
[19]
R. Robbes, "Mining a change-based software repository," in Proceedings of the Fourth International Workshop on Mining Software Repositories, 2007. ICSE Workshops MSR '07., pp. 15--15, May 2007.
[20]
C. Parnin and C. Gorg, "Building usage contexts during program comprehension," in Proceedings of the 14th IEEE International Conference on Program Comprehension, ICPC, pp. 13--22, 2006.
[21]
K. Schneider, C. Gutwin, R. Penner, and D. Paquette, "Mining a software developer's local interaction history," in Proceedings of the IEEE International Conference on Software Engineering Workshop on Mining Software Repositories, 2004.
[22]
S. Minto and G. Murphy, "Recommending emergent teams," in proceedings of fourth International Workshop on Mining Software Repositories, 2007. ICSE Workshops MSR '07., pp. 5--5, 2007.
[23]
M. Cataldo, P. A. Wagstrom, J. D. Herbsleb, and K. M. Carley, "Identification of coordination requirements: Implications for the design of collaboration and awareness tools," in proceedings of 2006 20th Anniversary Conference on Computer Supported Cooperative Work, CSCW '06, pp. 353--362, 2006.
[24]
J. Anvik and G. Murphy, "Determining implementation expertise from bug reports," in proceedings of fourth International Workshop on Mining Software Repositories (MSR), 2007 ICSE Workshops MSR '07, pp. 2--2, 2007.
[25]
G. Jeong, S. Kim, and T. Zimmermann, "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, ESEC/FSE '09, (New York, NY, USA), pp. 111--120, ACM, 2009.
[26]
D. Matter, A. Kuhn, and O. Nierstrasz, "Assigning bug reports using a vocabulary-based expertise model of developers," in proceedings of 6th IEEE International Working Conference on Mining Software Repositories, 2009. MSR '09., pp. 131--140, 2009.
[27]
T. Fritz, J. Ou, G. C. Murphy, and E. Murphy-Hill, "A degree-of-knowledge model to capture source code familiarity," in Proceedings of the 32Nd ACM/IEEE International Conference on Software Engineering - Volume 1, ICSE '10, (New York, NY, USA), pp. 385--394, ACM, 2010.
[28]
F. Rahman and P. Devanbu, "Ownership, experience and defects: A fine-grained study of authorship," in proceedings of 33rd International Conference on Software Engineering, ICSE '11, pp. 491--500, 2011.
[29]
C. Bird, N. Nagappan, B. Murphy, H. Gall, and P. Devanbu, "Don't touch my code!: Examining the effects of ownership on software quality," in proceedings of 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ESEC/FSE '11, pp. 4--14, 2011.
[30]
C. Bird, A. Gourley, P. Devanbu, M. Gertz, and A. Swaminathan, "Mining email social networks," in proceedings of 2006 International Workshop on Mining Software Repositories, MSR '06, pp. 137--143, 2006.
[31]
D. Ma, D. Schuler, T. Zimmermann, and J. Sillito, "Expert recommendation with usage expertise," in proceedings of IEEE International Conference on Software Maintenance, ICSM 2009., pp. 535--538, 2009.
[32]
P. Weissgerber, M. Pohl, and M. Burch, "Visual data mining in software archives to detect how developers work together," in proceedings of fourth International Workshop on Mining Software Repositories, 2007. ICSE Workshops MSR '07., pp. 9--9, 2007.
[33]
D. German, "An empirical study of fine-grained software modifications," in proceedings of 20th IEEE International Conference on Software Maintenance, 2004., pp. 316--325, 2004.
[34]
M. Fischer, M. Pinzger, and H. Gall, "Populating a release history database from version control and bug tracking systems," in proceedings of International Conference on Software Maintenance, 2003. ICSM 2003., pp. 23--32, 2003.
[35]
G. Bortis and A. v. d. Hoek, "Porchlight: A tag-based approach to bug triaging," in proceedings of 2013 International Conference on Software Engineering, ICSE '13, pp. 342--351, IEEE Press, 2013.
[36]
R. Shokripour, J. Anvik, Z. M. Kasirun, and S. Zamani, "Why so complicated? simple term filtering and weighting for location-based bug report assignment recommendation," in proceedings of 10th IEEE Working Conference on Mining Software Repositories (MSR), 2013, pp. 2--11, 2013.
[37]
A. Begel, Y. P. Khoo, and T. Zimmermann, "Codebook: Discovering and exploiting relationships in software repositories," in proceedings of 32Nd ACM/IEEE International Conference on Software Engineering - Volume 1, ICSE '10, pp. 125--134, 2010.
[38]
R. Robbes and D. Röthlisberger, "Using developer interaction data to compare expertise metrics," in Proceedings of the 10th Working Conference on Mining Software Repositories, MSR '13, (Piscataway, NJ, USA), pp. 297--300, IEEE Press, 2013.

Cited By

View all
  • (2020)Mining expertise of developers from software repositoriesInternational Journal of Computer Applications in Technology10.1504/ijcat.2020.10658162:3(227-239)Online publication date: 10-Apr-2020
  • (2018)Understanding and leveraging developer inexpertiseProceedings of the 40th International Conference on Software Engineering: Companion Proceeedings10.1145/3183440.3195029(404-405)Online publication date: 27-May-2018
  • (2016)Effective assignment and assistance to software developers and reviewersProceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering10.1145/2950290.2983960(1091-1093)Online publication date: 1-Nov-2016
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
MSR '15: Proceedings of the 12th Working Conference on Mining Software Repositories
May 2015
542 pages
ISBN:9780769555942

Sponsors

Publisher

IEEE Press

Publication History

Published: 16 May 2015

Check for updates

Qualifiers

  • Research-article

Conference

ICSE '15
Sponsor:

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 25 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2020)Mining expertise of developers from software repositoriesInternational Journal of Computer Applications in Technology10.1504/ijcat.2020.10658162:3(227-239)Online publication date: 10-Apr-2020
  • (2018)Understanding and leveraging developer inexpertiseProceedings of the 40th International Conference on Software Engineering: Companion Proceeedings10.1145/3183440.3195029(404-405)Online publication date: 27-May-2018
  • (2016)Effective assignment and assistance to software developers and reviewersProceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering10.1145/2950290.2983960(1091-1093)Online publication date: 1-Nov-2016
  • (2016)Recommending developers with supplementary information for issue request resolutionProceedings of the 38th International Conference on Software Engineering Companion10.1145/2889160.2892644(707-709)Online publication date: 14-May-2016

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media