activity
20202025
most citedHow We Refactor and How We Document it? On the Use of Supervised Machine Learning Algorithms to Classify Refactoring Documentation

61 citations · 120 across the 10 of their papers we have counts for

collaborators

11 papers

cs.SE2025

On the Structure and Semantics of Identifier Names Containing Closed Syntactic Category Words

Christian D. Newman, Anthony Peruma, Eman Abdullah AlOmar +8

Identifier names are crucial components of code, serving as primary clues for developers to understand program behavior. This paper investigates the linguistic structure of identif…

cs.SE2025

SCALAR: A Part-of-speech Tagger for Identifiers

Christian D. Newman, Brandon Scholten, Sophia Testa +10

The paper presents the Source Code Analysis and Lexical Annotation Runtime (SCALAR), a tool specialized for mapping (annotating) source code identifier names to their corresponding…

cs.SE2021

Behind the Scenes: On the Relationship Between Developer Experience and Refactoring

Eman Abdullah AlOmar, Anthony Peruma, Mohamed Wiem Mkaouer +2

Refactoring is widely recognized as one of the efficient techniques to manage technical debt and maintain a healthy software project through enforcing best design practices or copi…

cs.SE2021★ 18 cited

An Ensemble Approach for Annotating Source Code Identifiers with Part-of-speech Tags

Christian D. Newman, Michael J. Decker, Reem S. AlSuhaibani +7

This paper presents an ensemble part-of-speech tagging approach for source code identifiers. Ensemble tagging is a technique that uses machine-learning and the output from multiple…

cs.SE2021

IDEAL: An Open-Source Identifier Name Appraisal Tool

Anthony Peruma, Venera Arnaoudova, Christian D. Newman

Developers must comprehend the code they will maintain, meaning that the code must be legible and reasonably self-descriptive. Unfortunately, there is still a lack of research and…

cs.SE2021★ 4 cited

Test Smell Detection Tools: A Systematic Mapping Study

Wajdi Aljedaani, Anthony Peruma, Ahmed Aljohani +6

Test smells are defined as sub-optimal design choices developers make when implementing test cases. Hence, similar to code smells, the research community has produced numerous test…

cs.SE2021★ 4 cited

Towards a Model to Appraise and Suggest Identifier Names

Anthony Peruma

Unknowingly, identifiers in the source code of a software system play a vital role in determining the quality of the system. Ambiguous and confusing identifier names lead developer…

cs.SE2021

On the Distribution of "Simple Stupid Bugs" in Unit Test Files: An Exploratory Study

Anthony Peruma, Christian D. Newman

A key aspect of ensuring the quality of a software system is the practice of unit testing. Through unit tests, developers verify the correctness of production source code, thereby…

cs.SE2021

Using Grammar Patterns to Interpret Test Method Name Evolution

Anthony Peruma, Emily Hu, Jiajun Chen +3

It is good practice to name test methods such that they are comprehensible to developers; they must be written in such a way that their purpose and functionality are clear to those…

cs.SE2020★ 61 cited

How We Refactor and How We Document it? On the Use of Supervised Machine Learning Algorithms to Classify Refactoring Documentation

Eman Abdullah AlOmar, Anthony Peruma, Mohamed Wiem Mkaouer +3

Refactoring is the art of improving the design of a system without altering its external behavior. Refactoring has become a well established and disciplined software engineering pr…

cs.SE2020★ 33 cited

On the Generation, Structure, and Semantics of Grammar Patterns in Source Code Identifiers

Christian D. Newman, Reem S. AlSuhaibani, Michael J. Decker +4

Identifiers make up a majority of the text in code. They are one of the most basic mediums through which developers describe the code they create and understand the code that other…