More Accurate Recommendations for Method-Level Changes

08/10/2017
by   Georg Dotzler, et al.
0

During the life span of large software projects, developers often apply the same code changes to different code locations in slight variations. Since the application of these changes to all locations is time-consuming and error-prone, tools exist that learn change patterns from input examples, search for possible pattern applications, and generate corresponding recommendations. In many cases, the generated recommendations are syntactically or semantically wrong due to code movements in the input examples. Thus, they are of low accuracy and developers cannot directly copy them into their projects without adjustments. We present the Accurate REcommendation System (ARES) that achieves a higher accuracy than other tools because its algorithms take care of code movements when creating patterns and recommendations. On average, the recommendations by ARES have an accuracy of 96 manually performed in commits of source code archives. At the same time ARES achieves precision and recall values that are on par with other tools.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/29/2023

Leveraging Data Mining Algorithms to Recommend Source Code Changes

Context: Recent research has used data mining to develop techniques that...
research
05/21/2021

Changes from the Trenches: Should We Automate Them?

Code changes constitute one of the most important features of software e...
research
02/15/2021

Investigating and Recommending Co-Changed Entities for JavaScript Programs

JavaScript (JS) is one of the most popular programming languages due to ...
research
04/11/2023

A Data Set of Generalizable Python Code Change Patterns

Mining repetitive code changes from version control history is a common ...
research
07/19/2021

Detecting Oxbow Code in Erlang Codebases with the Highest Degree of Certainty

The presence of source code that is no longer needed is a handicap to pr...
research
01/21/2021

A Critical Comparison on Six Static Analysis Tools: Detection, Agreement, and Precision

Background. Developers use Automated Static Analysis Tools (ASATs) to co...
research
02/17/2023

Towards the Assisted Decomposition of Large-Active Files

Tightly coupled and interdependent systems inhibit productivity by requi...

Please sign up or login with your details

Forgot password? Click here to reset