Login | Register

Fine-Grained Source Code Tracking and Visualization in Commit History

Title:

Fine-Grained Source Code Tracking and Visualization in Commit History

Hasan, Mohammed Tayeeb (2023) Fine-Grained Source Code Tracking and Visualization in Commit History. Masters thesis, Concordia University.

[thumbnail of Hasan_MCS_F2023.pdf]
Preview
Text (application/pdf)
Hasan_MCS_F2023.pdf - Accepted Version
Available under License Spectrum Terms of Access.
7MB

Abstract

CodeTracker is the current state-of-the-art program element change history generator with a reported precision and recall of 99.9% in method and variable tracking [1]. In this thesis, we extend the granularity of CodeTracker to support the tracking of control-flow blocks (e.g., for, while, if, try, catch, etc.) with a precision and recall of 98.12% and 97.62% respectively, providing researchers and developers with finer-grained information about the evolution of source code. We accompany this extension with a manually validated oracle, which includes the change histories of 1280 code blocks. These code blocks are contained within 200 methods from 20 open-source Java projects (10 methods from each project) comprising the method change history oracle created by Grund et al. [2]. We also present a code change history visualization and navigation tool for CodeTracker, named CodeTracker Visualizer, that overlays the GitHub user interface with change history information enabling users to track code elements directly from the commit page by simply selecting the desired code element. Finally, we compare CodeTracker’s block tracking precision and recall using two different tools that provide statement mappings, namely RefactoringMiner [3, 4], the current state-of-the-art refactoring detection tool, and GumTree [5], the current state-of-the-art Abstract Syntax Tree (AST) Diff tool. The enhanced version of CodeTracker along with the extended oracle are made publicly available to facilitate reproducibility and future research on code element tracking techniques [6].

Divisions:Concordia University > Gina Cody School of Engineering and Computer Science > Computer Science and Software Engineering
Item Type:Thesis (Masters)
Authors:Hasan, Mohammed Tayeeb
Institution:Concordia University
Degree Name:M. Comp. Sc.
Program:Computer Science
Date:1 September 2023
Thesis Supervisor(s):Tsantalis, Nikolaos
ID Code:992989
Deposited By: Mohammed Tayeeb Hasan
Deposited On:14 Nov 2023 19:55
Last Modified:14 Nov 2023 19:55
All items in Spectrum are protected by copyright, with all rights reserved. The use of items is governed by Spectrum's terms of access.

Repository Staff Only: item control page

Downloads per month over past year

Research related to the current document (at the CORE website)
- Research related to the current document (at the CORE website)
Back to top Back to top