Skip to main content

Showing 1–21 of 21 results for author: Peruma, A

.
  1. arXiv:2404.10194  [pdf, other

    cs.SE cs.HC

    Impostor Syndrome in Final Year Computer Science Students: An Eye Tracking and Biometrics Study

    Authors: Alyssia Chen, Carol Wong, Katy Tarrit, Anthony Peruma

    Abstract: Imposter syndrome is a psychological phenomenon that affects individuals who doubt their skills and abilities, despite possessing the necessary competencies. This can lead to a lack of confidence and poor performance. While research has explored the impacts of imposter syndrome on students and professionals in various fields, there is limited knowledge on how it affects code comprehension in softw… ▽ More

    Submitted 15 April, 2024; originally announced April 2024.

    Comments: Accepted at: 18th International Conference, AC 2024, Held as Part of the 26th HCI International Conference, HCII 2024

  2. arXiv:2404.10185  [pdf, other

    cs.SE

    Insights from the Field: Exploring Students' Perspectives on Bad Unit Testing Practices

    Authors: Anthony Peruma, Eman Abdullah AlOmar, Wajdi Aljedaani, Christian D. Newman, Mohamed Wiem Mkaouer

    Abstract: Educating students about software testing practices is integral to the curricula of many computer science-related courses and typically involves students writing unit tests. Similar to production/source code, students might inadvertently deviate from established unit testing best practices, and introduce problematic code, referred to as test smells, into their test suites. Given the extensive cata… ▽ More

    Submitted 15 April, 2024; originally announced April 2024.

    Comments: Accepted at: 2024 Innovation and Technology in Computer Science Education V. 1 (ITiCSE 2024)

  3. arXiv:2311.00256  [pdf

    cs.SE

    How is Software Reuse Discussed in Stack Overflow?

    Authors: Eman Abdullah AlOmara, Anthony Peruma, Mohamed Wiem Mkaouer, Christian Newman, Ali Ouni

    Abstract: Software reuse is a crucial external quality attribute targeted by open-source and commercial projects. Despite that software reuse has experienced an increased adoption throughout the years, little is known about what aspects of code reuse developers discuss. In this paper, we present an empirical study of 1,409 posts to better understand the challenges developers face when reusing code. Our find… ▽ More

    Submitted 31 October, 2023; originally announced November 2023.

    Comments: 2023 Conference on Systems Engineering Research

  4. arXiv:2303.04234  [pdf, other

    cs.SE

    Do the Test Smells Assertion Roulette and Eager Test Impact Students' Troubleshooting and Debugging Capabilities?

    Authors: Wajdi Aljedaani, Mohamed Wiem Mkaouer, Anthony Peruma, Stephanie Ludi

    Abstract: To ensure the quality of a software system, developers perform an activity known as unit testing, where they write code (known as test cases) that verifies the individual software units that make up the system. Like production code, test cases are subject to bad programming practices, known as test smells, that hurt maintenance activities. An essential part of most maintenance activities is progra… ▽ More

    Submitted 7 March, 2023; originally announced March 2023.

    Comments: This study has been accepted at: The 45th IEEE/ACM International Conference on Software Engineering (ICSE 2023); Track: Software Engineering Education and Training

  5. arXiv:2303.02258  [pdf, other

    cs.SE

    An Exploratory Study on the Occurrence of Self-Admitted Technical Debt in Android Apps

    Authors: Gregory Wilder II, Riley Miyamoto, Samuel Watson, Rick Kazman, Anthony Peruma

    Abstract: Technical debt describes situations where developers write less-than-optimal code to meet project milestones. However, this debt accumulation often results in future developer effort to live with or fix these quality issues. To better manage this debt, developers may document their sub-optimal code as comments in the code (i.e., self-admitted technical debt or SATD). While prior research has inves… ▽ More

    Submitted 3 March, 2023; originally announced March 2023.

    Comments: This study has been accepted at: The 6th International Conference on Technical Debt (TechDebt 2023)

  6. arXiv:2303.01035  [pdf, other

    cs.SE

    Performance Comparison of Binary Machine Learning Classifiers in Identifying Code Comment Types: An Exploratory Study

    Authors: Amila Indika, Peter Y. Washington, Anthony Peruma

    Abstract: Code comments are vital to source code as they help developers with program comprehension tasks. Written in natural language (usually English), code comments convey a variety of different information, which are grouped into specific categories. In this study, we construct 19 binary machine learning classifiers for code comment categories that belong to three different programming languages. We pre… ▽ More

    Submitted 2 March, 2023; v1 submitted 2 March, 2023; originally announced March 2023.

    Comments: This study has been accepted at: The 2nd International Workshop on Natural Language-based Software Engineering (NLBSE 2023); Tool Competition Track

  7. arXiv:2303.00169  [pdf, other

    cs.SE

    An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases

    Authors: Taryn Takebayashi, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman

    Abstract: Unit testing is a vital part of the software development process and involves developers writing code to verify or assert production code. Furthermore, to help comprehend the test case and troubleshoot issues, developers have the option to provide a message that explains the reason for the assertion failure. In this exploratory empirical study, we examine the characteristics of assertion messages… ▽ More

    Submitted 28 February, 2023; originally announced March 2023.

    Comments: This study has been accepted at: The 2nd International Workshop on Natural Language-based Software Engineering (NLBSE 2023)

  8. arXiv:2302.11632  [pdf, other

    cs.SE

    Rename Chains: An Exploratory Study on the Occurrence and Characteristics of Identifiers Undergoing Multiple Renamings

    Authors: Anthony Peruma, Christian D. Newman

    Abstract: Identifier names play a significant role in program comprehension activities, with high-quality names improving developer productivity and system quality. To correct poor-quality names, developers rename identifiers to reflect their intended purpose better. However, renames do not always result in high-quality, long-lasting names; in many cases, developers perform multiple rename operations on the… ▽ More

    Submitted 23 February, 2023; v1 submitted 22 February, 2023; originally announced February 2023.

    Comments: This study has been accepted at: The 6th International Workshop on Refactoring (IWoR 2022)

  9. arXiv:2203.10221  [pdf, other

    cs.SE

    An Exploratory Study on Refactoring Documentation in Issues Handling

    Authors: Eman Abdullah AlOmar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni

    Abstract: Understanding the practice of refactoring documentation is of paramount importance in academia and industry. Issue tracking systems are used by most software projects enabling developers, quality assurance, managers, and users to submit feature requests and other tasks such as bug fixing and code review. Although recent studies explored how to document refactoring in commit messages, little is kno… ▽ More

    Submitted 18 March, 2022; originally announced March 2022.

  10. arXiv:2203.05660  [pdf, other

    cs.SE

    Refactoring Debt: Myth or Reality? An Exploratory Study on the Relationship Between Technical Debt and Refactoring

    Authors: Anthony Peruma, Eman Abdullah AlOmar, Christian D. Newman, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: To meet project timelines or budget constraints, developers intentionally deviate from writing optimal code to feasible code in what is known as incurring Technical Debt (TD). Furthermore, as part of planning their correction, developers document these deficiencies as comments in the code (i.e., self-admitted technical debt or SATD). As a means of improving source code quality, developers often ap… ▽ More

    Submitted 10 March, 2022; originally announced March 2022.

    Comments: This study has been accepted for publication at: The 19th International Conference on Mining Software Repositories (MSR 2022)

  11. arXiv:2203.00113  [pdf, other

    cs.SE

    Understanding Digits in Identifier Names: An Exploratory Study

    Authors: Anthony Peruma, Christian D. Newman

    Abstract: Before any software maintenance can occur, developers must read the identifier names found in the code to be maintained. Thus, high-quality identifier names are essential for productive program comprehension and maintenance activities. With developers free to construct identifier names to their liking, it can be difficult to automatically reason about the quality and semantics behind an identifier… ▽ More

    Submitted 15 March, 2022; v1 submitted 28 February, 2022; originally announced March 2022.

    Comments: This study has been accepted for publication at: The 1st International Workshop on Natural Language-based Software Engineering (NLBSE 2022)

  12. How Do I Refactor This? An Empirical Study on Refactoring Trends and Topics in Stack Overflow

    Authors: Anthony Peruma, Steven Simmons, Eman Abdullah AlOmar, Christian D. Newman, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: An essential part of software maintenance and evolution, refactoring is performed by developers, regardless of technology or domain, to improve the internal quality of the system, and reduce its technical debt. However, choosing the appropriate refactoring strategy is not always straightforward, resulting in developers seeking assistance. Although research in refactoring is well-established, with… ▽ More

    Submitted 23 October, 2021; originally announced October 2021.

    Comments: Part of a collection: Collective Knowledge in Software Engineering ISSN: 1382-3256 (Print) 1573-7616 (Online)

    Journal ref: Empir Software Eng 27, 11 (2022)

  13. arXiv:2109.11089  [pdf, other

    cs.SE

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

    Authors: Eman Abdullah AlOmar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni

    Abstract: 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 co** with design defects. Previous refactoring surveys have shown that code refactoring activities are mainly executed by developers who have sufficient knowledge of the system's design and disposing of leadership roles in… ▽ More

    Submitted 22 September, 2021; originally announced September 2021.

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

    Authors: Christian D. Newman, Michael J. Decker, Reem S. AlSuhaibani, Anthony Peruma, Satyajit Mohapatra, Tejal Vishnoi, Marcos Zampieri, Mohamed W. Mkaouer, Timothy J. Sheldon, Emily Hill

    Abstract: 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 part-of-speech taggers to annotate natural language text at a higher quality than the part-of-speech taggers are able to obtain independently. Our ensemble uses three state-of-the-art part-of-speech taggers: SWUM, POSSE… ▽ More

    Submitted 1 September, 2021; originally announced September 2021.

    Comments: 18 pages. arXiv admin note: text overlap with arXiv:2007.08033

    Journal ref: in IEEE Transactions on Software Engineering, vol. , no. 01, pp. 1-1, 5555

  15. arXiv:2107.08344  [pdf, other

    cs.SE

    IDEAL: An Open-Source Identifier Name Appraisal Tool

    Authors: Anthony Peruma, Venera Arnaoudova, Christian D. Newman

    Abstract: 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 tooling that supports developers in understanding their naming practices; whether the names they choose make sense, whether they are consistent, and whether they convey the information required of them. In this paper, we… ▽ More

    Submitted 17 July, 2021; originally announced July 2021.

    Comments: Accepted at: The 37th International Conference on Software Maintenance and Evolution (ICSME '21)

  16. arXiv:2104.14640  [pdf, other

    cs.SE

    Test Smell Detection Tools: A Systematic Map** Study

    Authors: Wajdi Aljedaani, Anthony Peruma, Ahmed Aljohani, Mazen Alotaibi, Mohamed Wiem Mkaouer, Ali Ouni, Christian D. Newman, Abdullatif Ghallab, Stephanie Ludi

    Abstract: 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 smell detection tools to investigate the impact of test smells on the quality and maintenance of test suites. However, little is known about the characteristics, type of smells, target language, and availability of thes… ▽ More

    Submitted 3 May, 2021; v1 submitted 29 April, 2021; originally announced April 2021.

    Comments: Accepted at: The International Conference on Evaluation and Assessment in Software Engineering (EASE '21)

  17. Towards a Model to Appraise and Suggest Identifier Names

    Authors: Anthony Peruma

    Abstract: 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 developers to not only misunderstand the behavior of the code but also increases comprehension time and thereby causes a loss in productivity. Even though correcting poor names through rename operations is a viable option for sol… ▽ More

    Submitted 25 March, 2021; originally announced March 2021.

  18. arXiv:2103.09388  [pdf, other

    cs.SE

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

    Authors: Anthony Peruma, Christian D. Newman

    Abstract: 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 verifying the system's intended behavior under test. However, unit test code is subject to issues, ranging from bugs in the code to poor test case design (i.e., test smells). In this study, we compare and contrast the oc… ▽ More

    Submitted 16 March, 2021; originally announced March 2021.

  19. arXiv:2103.09190  [pdf, other

    cs.SE

    Using Grammar Patterns to Interpret Test Method Name Evolution

    Authors: Anthony Peruma, Emily Hu, Jiajun Chen, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Christian D. Newman

    Abstract: 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 who will maintain them. Unfortunately, there is little automated support for writing or maintaining the names of test methods. This can lead to inconsistent and low-quality test names and increase the maintenance cost o… ▽ More

    Submitted 16 March, 2021; originally announced March 2021.

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

    Authors: Eman Abdullah AlOmar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian Newman, Ali Ouni, Marouane Kessentini

    Abstract: 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 practice that has attracted a significant amount of research presuming that refactoring is primarily motivated by the need to improve system structures. However, recent studies have shown that developers may incorporate re… ▽ More

    Submitted 26 October, 2020; originally announced October 2020.

    Journal ref: Expert Systems with Applications. 167 (2021) 114176

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

    Authors: Christian D. Newman, Reem S. AlSuhaibani, Michael J. Decker, Anthony Peruma, Dishant Kaushik, Mohamed Wiem Mkaouer, Emily Hill

    Abstract: 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 others create. Therefore, understanding the patterns latent in identifier naming practices and how accurately we are able to automatically model these patterns is vital if researchers are to support developers and automated a… ▽ More

    Submitted 15 July, 2020; originally announced July 2020.

    Comments: 69 pages, 3 figures, 16 tables

    Journal ref: Journal of Systems and Software, 2020, 110740, ISSN 0164-1212