• Publications
  • Influence
The Oracle Problem in Software Testing: A Survey
TLDR
This paper provides a comprehensive survey of current approaches to the test oracle problem and an analysis of trends in this important area of software testing research and practice. Expand
  • 474
  • 34
  • PDF
On the naturalness of software
TLDR
We begin with the conjecture that software is also natural, in the sense that it is created by humans at work, with all the attendant constraints and limitations — and thus, like natural language, it is also likely to be repetitive and predictable. Expand
  • 253
  • 31
Is the cure worse than the disease? overfitting in automated program repair
TLDR
This paper addresses a deficit of earlier evaluations of automated repair techniques caused by repairing programs and evaluating generated patches' correctness using the same set of tests. Expand
  • 211
  • 30
  • PDF
Suggesting accurate method and class names
TLDR
We introduce a neural probabilistic language model for source code that is specifically designed for the method naming problem. Expand
  • 259
  • 25
  • PDF
Learning natural coding conventions
TLDR
We present NATURALIZE, a framework that learns the style of a codebase, and suggests revisions to improve stylistic consistency. Expand
  • 257
  • 18
  • PDF
The plastic surgery hypothesis
TLDR
We formalize and validate the plastic surgery hypothesis and empirically measure the extent to which raw material for changes actually already exists in projects. Expand
  • 146
  • 17
  • PDF
The promises and perils of mining git
TLDR
We are now witnessing the rapid growth of decentralized source code management (DSCM) systems, in which every developer has her own repository. Expand
  • 249
  • 16
  • PDF
Runtime Support for Type-Safe Dynamic Java Classes
TLDR
We present an approach for supporting dynamic evolution of Java programs by changing their components, namely classes, during their execution. Expand
  • 229
  • 16
  • PDF
Uncertainty, risk, and information value in software requirements and architecture
TLDR
We present a systematic method allowing software architects to describe uncertainty about the impact of alternatives on stakeholders' goals; to calculate the consequences of uncertainty through Monte-Carlo simulation; to shortlist candidate architectures based on expected costs, benefits and risks; and to assess the value of obtaining additional information before making a decision. Expand
  • 88
  • 13
  • PDF
Deep learning type inference
TLDR
We propose DeepTyper, a deep learning model that understands which types naturally occur in certain contexts and relations and can provide type suggestions, which can often be verified by the type checker, even if it could not infer the type initially. Expand
  • 72
  • 13
  • PDF
...
1
2
3
4
5
...