86 citations · 150 across the 12 of their papers we have counts for
14 papers
Future of Software Engineering Research: The SIGSOFT Perspective
Massimiliano Di Penta, Kelly Blincoe, Marsha Chechik +4
As software engineering conferences grow in size, rising costs and outdated formats are creating barriers to participation for many researchers. These barriers threaten the inclusi…
CodeGenLink: A Tool to Find the Likely Origin and License of Automatically Generated Code
Daniele Bifolco, Guido Annicchiarico, Pierluigi Barbiero +2
Large Language Models (LLMs) are widely used in software development tasks nowadays. Unlike reusing code taken from the Web, for LLMs' generated code, developers are concerned abou…
Automated Refactoring of Non-Idiomatic Python Code: A Differentiated Replication with LLMs
Alessandro Midolo, Massimiliano Di Penta
In the Python ecosystem, the adoption of idiomatic constructs has been fostered because of their expressiveness, increasing productivity and even efficiency, despite controversial…
A Taxonomy of Self-Admitted Technical Debt in Deep Learning Systems
Federica Pepe, Fiorella Zampetti, Antonio Mastropaolo +2
The development of Machine Learning (ML)- and, more recently, of Deep Learning (DL)-intensive systems requires suitable choices, e.g., in terms of technology, algorithms, and hyper…
An Empirical Study on the Usage of BERT Models for Code Completion
Matteo Ciniselli, Nathan Cooper, Luca Pascarella +3
Code completion is one of the main features of modern Integrated Development Environments (IDEs). Its objective is to speed up code writing by predicting the next code token(s) the…
Why Developers Refactor Source Code: A Mining-based Study
Jevgenija Pantiuchina, Fiorella Zampetti, Simone Scalabrino +4
Refactoring aims at improving code non-functional attributes without modifying its external behavior. Previous studies investigated the motivations behind refactoring by surveying…
On the Relationship between Refactoring Actions and Bugs: A Differentiated Replication
Massimiliano Di Penta, Gabriele Bavota, Fiorella Zampetti
Software refactoring aims at improving code quality while preserving the system's external behavior. Although in principle refactoring is a behavior-preserving activity, a study pr…
DeepMutation: A Neural Mutation Tool
Michele Tufano, Jason Kimko, Shiya Wang +4
Mutation testing can be used to assess the fault-detection capabilities of a given test suite. To this aim, two characteristics of mutation testing frameworks are of paramount impo…
Assessing the Quality of the Steps to Reproduce in Bug Reports
Oscar Chaparro, Carlos Bernal-Cardenas, Jing Lu +5
A major problem with user-written bug reports, indicated by developers and documented by researchers, is the (lack of high) quality of the reported steps to reproduce the bugs. Low…
Learning How to Mutate Source Code from Bug-Fixes
Michele Tufano, Cody Watson, Gabriele Bavota +3
Mutation testing has been widely accepted as an approach to guide test case generation or to assess the effectiveness of test suites. Empirical studies have shown that mutants are…
An Empirical Study on Learning Bug-Fixing Patches in the Wild via Neural Machine Translation
Michele Tufano, Cody Watson, Gabriele Bavota +3
Millions of open-source projects with numerous bug fixes are available in code repositories. This proliferation of software development histories can be leveraged to learn how to f…
Assessing Test Case Prioritization on Real Faults and Mutants
Qi Luo, Kevin Moran, Denys Poshyvanyk +1
Test Case Prioritization (TCP) is an important component of regression testing, allowing for earlier detection of faults or helping to reduce testing time and cost. While several T…
MDroid+: A Mutation Testing Framework for Android
Kevin Moran, Michele Tufano, Carlos Bernal-Cárdenas +5
Mutation testing has shown great promise in assessing the effectiveness of test suites while exhibiting additional applications to test-case generation, selection, and prioritizati…
Enabling Mutation Testing for Android Apps
Mario Linares-Vásquez, Gabriele Bavota, Michele Tufano +5
Mutation testing has been widely used to assess the fault-detection effectiveness of a test suite, as well as to guide test case generation or prioritization. Empirical studies hav…