An Empirical Evaluation of Method Signature Similarity in Java Codebases

dc.contributor.authorKhan, Mohammaden
dc.contributor.authorElhussiny, Mohameden
dc.contributor.authorTobin, Williamen
dc.contributor.authorGulzar, Muhammaden
dc.date.accessioned2025-01-09T17:35:52Zen
dc.date.available2025-01-09T17:35:52Zen
dc.date.issued2024-09-11en
dc.date.updated2025-01-01T08:53:21Zen
dc.description.abstractModern programming languages have transformed software development by providing capabilities of enhancing productivity and reducing code redundancy. One such feature is allowing developers to choose meaningful method names for implementation and functionality. As programs evolve into APIs and libraries, developers often design methods with similar signatures to streamline code management and improve comprehensibility. In this paper, we conduct a comprehensive study to evaluate the prevalence, usage, and perception of methods with similar signatures, including both conventionally overloaded and textually similar methods. Through analyzing 6.4 million lines of code across 167 well-established Java repositories on GitHub, we statistically assess the occurrence of these methods and their impact on usability and software quality. Additionally, we explore the evolution of these methods through a longitudinal analysis of historical commit snapshots. Our research reveals that both overloaded and textually similar methods are common in leading Java repositories and are primarily driven by specific software design requirements, program logic, and developer’s programming habits. As software matures, development shifts towards maintenance tasks that rarely necessitate design changes. Our longitudinal analysis corroborates this by indicating minimal changes in methods with similar signatures in the later stages of a repository’s life.en
dc.description.versionPublished versionen
dc.format.mimetypeapplication/pdfen
dc.identifier.doihttps://doi.org/10.1145/3702138.3702152en
dc.identifier.urihttps://hdl.handle.net/10919/124007en
dc.language.isoenen
dc.publisherACMen
dc.rightsCreative Commons Attribution 4.0 Internationalen
dc.rights.holderThe author(s)en
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/en
dc.titleAn Empirical Evaluation of Method Signature Similarity in Java Codebasesen
dc.typeArticle - Refereeden
dc.type.dcmitypeTexten

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
3702138.3702152.pdf
Size:
1.04 MB
Format:
Adobe Portable Document Format
Description:
Published version
License bundle
Now showing 1 - 1 of 1
Name:
license.txt
Size:
1.5 KB
Format:
Item-specific license agreed upon to submission
Description: