Bilkent University
Department of Computer Engineering
M.S.THESIS PRESENTATION

 

ASSESSING SOFTWARE EVOLUTION WITH THE STICKINESS SCORE: EVALUATING CODE PERSISTENCE ACROSS FILES, FOLDERS, AND DEVELOPERS

 

Selen Uysal
Master Student
(Supervisor: Asst.Prof.Eray Tüzün)
Computer Engineering Department
Bilkent University

Abstract: Software evolution is a dynamic process characterized by ongoing changes in code stability. Understanding the patterns and correlations with code changes is essential for improving development practices and avoiding recurring mistakes. This study introduces the “Stickiness Score", a metric reflecting the longevity of lines of code (LOC) in a project, and a tool, Devotion, to calculate the Stickiness Scores. It examines correlations between a file's Stickiness Scores and five factors: the file's contributor count, the average of its developer Stickiness Scores, commit-weighted and LOC-weighted average developer Stickiness Scores, and the file's cyclomatic complexity. The Stickiness Scores for developers, files, and folders are calculated using the Devotion tool across six open-source projects. The Spearman correlation test was used to analyze the relationship between file Stickiness Scores and the specified five file-related factors. Across all six projects, files with more contributors had lower Stickiness Scores, indicating that coordination challenges and fragmented knowledge reduce code stickiness. Positive correlations were observed in three projects between file Stickiness Scores and the average Stickiness Score of contributors, highlighting the stabilizing effect of developers with higher scores. Commit-weighted developer Stickiness Score averages showed positive correlations in five projects, emphasizing the value of frequent contributions, while four projects showed similar results for LOC-weighted developer Stickiness Score averages, underscoring the role of high-volume contributions. Cyclomatic complexity exhibited inconsistent correlations with file Stickiness Score, suggesting its impact varies by project.

 

DATE: January 13, Monday @ 13:30 Place: EA 409