Finding expert developers using artifact traceability graphs

buir.advisorTüzün, Eray
dc.contributor.authorHanhan, İdil
dc.date.accessioned2024-09-19T08:54:50Z
dc.date.available2024-09-19T08:54:50Z
dc.date.copyright2024-09
dc.date.issued2024-09
dc.date.submitted2024-09-13
dc.descriptionCataloged from PDF version of article.
dc.descriptionThesis (Master's): Bilkent University, Department of Computer Engineering, İhsan Doğramacı Bilkent University, 2024.
dc.descriptionIncludes bibliographical references (leaves 81-87).
dc.description.abstractMentoring is a commonly used practice in the software industry where mentors and mentees are matched to ease the onboarding process of the mentee, who is a newcomer. Also, during a project’s life cycle, developers work on sections of the codebase that are unfamiliar to them. Both cases raise the task of finding an expert developer to contact for possible questions. With this study, we aim to construct an algorithm that recommends expert developers for a specific part of the codebase, namely folders, files, and methods, based on previous developer activities such as commits and code reviews. We construct an artifact traceability graph using commit history, method change history, code review history, and issue history. The relationships in the graph are weighted according to recency and a weight coefficient we determine intuitively. Utilizing this graph, we calculate a score representing the developer’s expertise level on a folder, file, or method, and recommend developers with the highest expertise. To evaluate the success of our algorithm, Expert Developer Finder, we compare its recommendation with the developers who commented on related issues. We run our algorithm on three open-source projects - Nutch, OpenNLP, and Curator. On average, for weighted recommendations, we reached up to 84% accuracy for folders, 82% accuracy for files, and 88% accuracy for methods. On average, for unweighted recommendations, we reached up to 84% accuracy for folders, 84% accuracy for files, and 93% accuracy for methods. We believe that our results show that the Expert Developer Finder algorithm is able to recommend experts by utilizing the historical data of projects. However, further work is required to fine-tune the weights set in the artifact traceability graph.
dc.description.provenanceSubmitted by Serengül Gözaçık (serengul.gozacik@bilkent.edu.tr) on 2024-09-19T08:54:50Z No. of bitstreams: 1 B162645.pdf: 1761377 bytes, checksum: dcf7efb697e7fe3df7c42b79e2274325 (MD5)en
dc.description.provenanceMade available in DSpace on 2024-09-19T08:54:50Z (GMT). No. of bitstreams: 1 B162645.pdf: 1761377 bytes, checksum: dcf7efb697e7fe3df7c42b79e2274325 (MD5) Previous issue date: 2024-09en
dc.description.statementofresponsibilityby İdil Hanhan
dc.embargo.release2025-03-13
dc.format.extentxii, 89 leaves : color illustrations, charts ; 30 cm.
dc.identifier.itemidB162645
dc.identifier.urihttps://hdl.handle.net/11693/115832
dc.language.isoEnglish
dc.rightsinfo:eu-repo/semantics/openAccess
dc.subjectKey developer
dc.subjectArtifact traceability graph
dc.subjectExpert developer
dc.subjectMentor recommendation
dc.subjectExpert recommendation
dc.subjectDeveloper recommendation
dc.titleFinding expert developers using artifact traceability graphs
dc.title.alternativeYapı izlenebilirlik çizgelerini kullanarak uzman geliştiricileri bulma
dc.typeThesis
thesis.degree.disciplineComputer Engineering
thesis.degree.grantorBilkent University
thesis.degree.levelMaster's
thesis.degree.nameMS (Master of Science)

Files

Original bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
B162645.pdf
Size:
1.68 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
2.1 KB
Format:
Item-specific license agreed upon to submission
Description: