Measuring developer experience with abstract syntax trees

dc.contributor.authorDeutekom, Steven M.
dc.contributor.authorUniversity of Lethbridge. Faculty of Arts and Science
dc.contributor.supervisorRice, Jacqueline E.
dc.contributor.supervisorAnvik, John
dc.date.accessioned2023-11-30T16:50:12Z
dc.date.available2023-11-30T16:50:12Z
dc.date.issued2023
dc.degree.levelMasters
dc.description.abstractAccurately representing a developer's programming knowledge and experience is difficult. Traditional metrics rely on counting the number of times a developer has used or made changes to pieces of code. When a developer has modified a file in the past they are less likely to introduce defects with a change. However, these metrics do not contain any general information on the structure or purpose of a piece of code and are only useful when developers work on a piece of code more than once. We investigated the use of several new metrics based on abstract syntax trees (ASTs) as a possible way to more completely measure a developer's experience. By using the ASTs of code previously modified by a developer we may be able to identify their experience with a piece of code they are modifying even if they have never modified that specific code before. Through statistical analysis and machine learning predictions we show that AST-based metrics capture a more general programming experience than count-based metrics. In their current form, AST-based metrics do not offer any significant improvements over existing metrics for defect prediction. However, our work offers a starting point for future use of ASTs for representation of knowledge and experience in defect prediction and other relevant areas.
dc.identifier.urihttps://hdl.handle.net/10133/6638
dc.language.isoen
dc.proquestyesNo
dc.publisherLethbridge, Alta. : University of Lethbridge, Dept. of Mathematics and Computer Science
dc.publisher.departmentDepartment of Mathematics and Computer Science
dc.publisher.facultyArts and Science
dc.relation.ispartofseriesThesis (University of Lethbridge. Faculty of Arts and Science)
dc.subjectsoftware developer's experience
dc.subjectmeasuring developer's knowledge
dc.subjectprogramming expertise
dc.subjectevaluation metrics
dc.subjectabstract syntax trees
dc.subjectcoding modifications
dc.subject.lcshComputer programmers
dc.subject.lcshExpertise--Evaluation
dc.subject.lcshAbility--Evaluation
dc.subject.lcshCompilers (Computer programs)
dc.subject.lcshExecution traces (Computer program testing)
dc.subject.lcshDissertations, Academic
dc.titleMeasuring developer experience with abstract syntax trees
dc.typeThesis
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
DEUTEKOM_STEVEN_MSC_2023.pdf
Size:
1.68 MB
Format:
Adobe Portable Document Format
Description:
License bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
3.25 KB
Format:
Item-specific license agreed upon to submission
Description: