English
Related papers

Related papers: Toward the Automatic Classification of Self-Affirm…

200 papers

A typical compiler flow relies on a uni-directional sequence of translation/optimization steps that lower the program abstract representation, making it hard to preserve higher-level program information across each transformation step. On…

Programming Languages · Computer Science 2022-02-10 Vinicius Couto , Luciano Zago , Hervé Yviquel , Guido Araújo

Docker, the industry standard for packaging and deploying applications, leverages Infrastructure as Code (IaC) principles to facilitate the creation of images through Dockerfiles. However, maintaining Dockerfiles presents significant…

Software Engineering · Computer Science 2025-01-27 Emna Ksontini , Meriem Mastouri , Rania Khalsi , Wael Kessentini

Software refactoring plays an important role in increasing code quality. One of the most popular refactoring types is the Move Method refactoring. It is usually applied when a method depends more on members of other classes than on its own…

Software Engineering · Computer Science 2020-02-18 Zarina Kurbatova , Ivan Veselov , Yaroslav Golubev , Timofey Bryksin

Commit messages are crucial for documenting software changes, aiding in program comprehension and maintenance. However, creating effective commit messages is often overlooked by developers due to time constraints and varying levels of…

Software Engineering · Computer Science 2025-04-18 Varun Kumar Palakodeti , Abbas Heydarnoori

Refactoring is an indispensable practice of improving the quality and maintainability of source code in software evolution. Rename refactoring is the most frequently performed refactoring that suggests a new name for an identifier to…

Software Engineering · Computer Science 2023-05-30 Hao Liu , Yanlin Wang , Zhao Wei , Yong Xu , Juhong Wang , Hui Li , Rongrong Ji

Classifying requirements into functional requirements (FR) and non-functional ones (NFR) is an important task in requirements engineering. However, automated classification of requirements written in natural language is not straightforward,…

Software Engineering · Computer Science 2017-07-11 Zahra Shakeri Hossein Abad , Oliver Karras , Parisa Ghazi , Martin Glinz , Guenther Ruhe , Kurt Schneider

Software architecture consists of series of decisions taken to give a structural solution that meets all the technical and operational requirements. The paper involves code refactoring. Code refactoring is a process of changing the internal…

Software Engineering · Computer Science 2014-12-25 Manpreet Kaur , Ravjeet Singh , Sukhveer Kaur , Baljot Singh , Savpreet Kaur , Navkaran Singh , Aman Ohri , Ravenna Sharma

Source code is changed for a reason, e.g., to adapt, correct, or adapt it. This reason can provide valuable insight into the development process but is rarely explicitly documented when the change is committed to a source code repository.…

Software Engineering · Computer Science 2021-05-03 Sebastian Hönel , Morgan Ericsson , Welf Löwe , Anna Wingkvist

Context: Dependency Injection (DI) is a commonly applied mechanism to decouple classes from their dependencies in order to provide higher modularization. However, bad DI practices often lead to negative consequences, such as increasing…

Software Engineering · Computer Science 2021-10-19 Rodrigo Laigner , Diogo Mendonça , Alessandro Garcia , Marcos Kalinowski

Self-admitted technical debt (SATD) refers to comments in which developers explicitly acknowledge code issues, workarounds, or suboptimal solutions. SATD is known to significantly increase software maintenance effort. While extensive…

Software Engineering · Computer Science 2025-12-22 Shahidul Islam , Md Nahidul Islam Opu , Shaowei Wang , Shaiful Chowdhury

In today's world, the focus of programmers has shifted from writing complex, error-prone code to prioritizing simple, clear, efficient, and sustainable code that makes programs easier to understand. Code refactoring plays a critical role in…

Software Engineering · Computer Science 2025-12-01 Md. Raihan Tapader , Md. Mostafizer Rahman , Ariful Islam Shiplu , Md Faizul Ibne Amin , Yutaka Watanobe

Refactoring tools in popular Integrated Development Environments (IDEs) can introduce unintended behavioral changes or compilation errors, a persistent challenge that undermines developer trust in automated transformations. Traditional…

Software Engineering · Computer Science 2026-05-05 Rohit Gheyi , Rian Melo , Jonhnanthan Oliveira , Marcio Ribeiro , Baldoino Fonseca

Cloud-based software-as-a-service (SaaS) have gained popularity due to their low cost and elasticity. However, like other software, SaaS applications suffer from code smells, which can drastically affect functionality and resource usage.…

Software Engineering · Computer Science 2020-08-17 Asif Imran , Tevfik Kosar

Comments are an integral part of software development; they are natural language descriptions associated with source code elements. Understanding explicit associations can be useful in improving code comprehensibility and maintaining the…

Computation and Language · Computer Science 2019-12-17 Sheena Panthaplackel , Milos Gligoric , Raymond J. Mooney , Junyi Jessy Li

(Note: This work is a preprint.) Static analysis (SA) tools produce many diagnostic alerts indicating that source code in C or C++ may be defective and potentially vulnerable to security exploits. Many of these alerts are false positives.…

Software Engineering · Computer Science 2025-08-06 David Svoboda , Lori Flynn , William Klieber , Michael Duggan , Nicholas Reimer , Joseph Sible

Graphs of developer networks are important for software engineering research and practice. For these graphs to realistically represent the networks, accurate developer identities are imperative. We aim to identify developer identity errors…

Software Engineering · Computer Science 2019-01-14 Sadika Amreen , Audris Mockus , Chris Bogart , Yuxia Zhang , Russell Zaretzki

Metamorphic Testing (MT) addresses the test oracle problem by examining the relations between inputs and outputs of test executions. Such relations are known as Metamorphic Relations (MRs). In current practice, identifying and selecting…

Software Engineering · Computer Science 2022-07-28 Alejandra Duque-Torres , Dietmar Pfahl , Rudolf Ramler , Claus Klammer

We introduce a new paradigm for AutoRegressive (AR) image generation, termed Set AutoRegressive Modeling (SAR). SAR generalizes the conventional AR to the next-set setting, i.e., splitting the sequence into arbitrary sets containing…

Computer Vision and Pattern Recognition · Computer Science 2024-10-15 Wenze Liu , Le Zhuo , Yi Xin , Sheng Xia , Peng Gao , Xiangyu Yue

Refactoring is a critical task in software maintenance, and is usually performed to enforce better design and coding practices, while coping with design defects. The Extract Method refactoring is widely used for merging duplicate code…

Context. Behaviour-Driven Development (BDD) software test suites accumulate duplicated step subsequences. Three published refactoring patterns are available (within-file Background, within-repo reusable-scenario invocation,…

Software Engineering · Computer Science 2026-05-15 Ali Hassaan Mughal , Noor Fatima , Muhammad Bilal