z-logo
open-access-imgOpen Access
Automating the Refactoring Process
Author(s) -
Gábor Szőke
Publication year - 2017
Publication title -
acta cybernetica
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.143
H-Index - 18
eISSN - 2676-993X
pISSN - 0324-721X
DOI - 10.14232/actacyb.23.2.2017.16
Subject(s) - computer science , code refactoring , static program analysis , static analysis , abstract syntax tree , java , source code , software engineering , coding (social sciences) , programming language , software , abstract syntax , process (computing) , software development process , software development , syntax , parsing , artificial intelligence , semantics (computer science) , mathematics , statistics
To decrease software maintenance cost, software development companies use static source code analysis techniques. Static analysis tools are capable of finding potential bugs, anti-patterns, coding rule violations, and they can also enforce coding style standards. Although there are several available static analyzers to choose from, they only support issue detection. The elimination of the issues is still performed manually by developers. Here, we propose a process that supports the automatic elimination of coding issues in Java. We introduce a tool that uses a third-party static analyzer as input and enables developers to automatically fix the detected issues for them. Our tool uses a special technique, called reverse AST-search, to locate source code elements in a syntax tree, just based on location information. Our tool was evaluated and tested in a two-year project with six software development companies where thousands of code smells were identified and fixed in five systems that have altogether over five million lines of code.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom