416 citations · 1.4k across the 24 of their papers we have counts for
26 papers
Enabling Global, Human-Centered Explanations for LLMs:From Tokens to Interpretable Code and Test Generation
Dipin Khati, Daniel Rodriguez-Cardenas, David N. Palacio +3
As Large Language Models for Code (LM4Code) become integral to software engineering, establishing trust in their output becomes critical. However, standard accuracy metrics obscure…
Reinforcement Learning from Automatic Feedback for High-Quality Unit Test Generation
Benjamin Steenhoek, Michele Tufano, Neel Sundaresan +1
Software testing is a crucial but time-consuming aspect of software development, and recently, Large Language Models (LLMs) have gained popularity for automated test case generatio…
AutoDev: Automated AI-Driven Development
Michele Tufano, Anisha Agarwal, Jinu Jang +2
The landscape of software development has witnessed a paradigm shift with the advent of AI-powered assistants, exemplified by GitHub Copilot. However, existing solutions are not le…
Copilot Evaluation Harness: Evaluating LLM-Guided Software Programming
Anisha Agarwal, Aaron Chan, Shubham Chandel +6
The integration of Large Language Models (LLMs) into Development Environments (IDEs) has become a focal point in modern software development. LLMs such as OpenAI GPT-3.5/4 and Code…
Reinforcement Learning from Automatic Feedback for High-Quality Unit Test Generation
Benjamin Steenhoek, Michele Tufano, Neel Sundaresan +1
Software testing is a crucial aspect of software development, and the creation of high-quality tests that adhere to best practices is essential for effective maintenance. Recently,…
Predicting Code Coverage without Execution
Michele Tufano, Shubham Chandel, Anisha Agarwal +2
Code coverage is a widely used metric for quantifying the extent to which program elements, such as statements or branches, are executed during testing. Calculating code coverage i…
InferFix: End-to-End Program Repair with LLMs
Matthew Jin, Syed Shahriar, Michele Tufano +4
Software development life cycle is profoundly influenced by bugs: their introduction, identification, and eventual resolution account for a significant portion of software cost. Th…
An Empirical Investigation into the Use of Image Captioning for Automated Software Documentation
Kevin Moran, Ali Yachnes, George Purnell +5
Existing automated techniques for software documentation typically attempt to reason between two main sources of information: code and natural language. However, this reasoning pro…
Exploring and Evaluating Personalized Models for Code Generation
Andrei Zlotchevski, Dawn Drain, Alexey Svyatkovskiy +3
Large Transformer models achieved the state-of-the-art status for Natural Language Understanding tasks and are increasingly becoming the baseline model architecture for modeling so…
Methods2Test: A dataset of focal methods mapped to test cases
Michele Tufano, Shao Kun Deng, Neel Sundaresan +1
Unit testing is an essential part of the software development process, which helps to identify issues with source code in early stages of development and prevent regressions. Machi…
Long-Range Modeling of Source Code Files with eWASH: Extended Window Access by Syntax Hierarchy
Colin B. Clement, Shuai Lu, Xiaoyu Liu +5
Statistical language modeling and translation with transformers have found many successful applications in program understanding and generation tasks, setting high benchmarks for t…
CodeXGLUE: A Machine Learning Benchmark Dataset for Code Understanding and Generation
Shuai Lu, Daya Guo, Shuo Ren +19
Benchmark datasets have a significant impact on accelerating research in programming language tasks. In this paper, we introduce CodeXGLUE, a benchmark dataset to foster machine le…
Towards Automating Code Review Activities
Rosalia Tufano, Luca Pascarella, Michele Tufano +2
Code reviews are popular in both industrial and open source projects. The benefits of code reviews are widely recognized and include better code quality and lower likelihood of int…
Generating Accurate Assert Statements for Unit Test Cases using Pretrained Transformers
Michele Tufano, Dawn Drain, Alexey Svyatkovskiy +1
Unit testing represents the foundational basis of the software testing pyramid, beneath integration and end-to-end testing. Automated software testing researchers have proposed a v…
Unit Test Case Generation with Transformers and Focal Context
Michele Tufano, Dawn Drain, Alexey Svyatkovskiy +2
Automated unit test case generation tools facilitate test-driven development and support developers by suggesting tests intended to identify flaws in their code. Existing approache…
On Learning Meaningful Assert Statements for Unit Test Cases
Cody Watson, Michele Tufano, Kevin Moran +2
Software testing is an essential part of the software lifecycle and requires a substantial amount of time and effort. It has been estimated that software developers spend close to…
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…
On Learning Meaningful Code Changes via Neural Machine Translation
Michele Tufano, Jevgenija Pantiuchina, Cody Watson +2
Recent years have seen the rise of Deep Learning (DL) techniques applied to source code. Researchers have exploited DL to automate several development and maintenance tasks, such a…
Towards Predicting the Impact of Software Changes on Building Activities
Michele Tufano, Hitesh Sajnani, Kim Herzig
The pervasive adoption of Continuous Integration practices -- both in industry and open source projects -- has led software building to become a daily activity for thousands of dev…
Guigle: A GUI Search Engine for Android Apps
Carlos Bernal-Cardenas, Kevin Moran, Michele Tufano +4
The process of developing a mobile application typically starts with the ideation and conceptualization of its user interface. This concept is then translated into a set of mock-up…
SequenceR: Sequence-to-Sequence Learning for End-to-End Program Repair
Zimin Chen, Steve Kommrusch, Michele Tufano +3
This paper presents a novel end-to-end approach to program repair based on sequence-to-sequence learning. We devise, implement, and evaluate a system, called SequenceR, for fixing…
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…
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…