I-Corps: Search-Based Interactive Software Refactoring Technology
Regents Of The University Of Michigan - Ann Arbor, Ann Arbor MI
Investigators
Abstract
The broader impact/commercial potential of this I-Corps project is to improve significantly the productivity of software developers in evolving large software systems. The proposed interactive refactoring Technology helps programmers to semi-automate the process of improving the quality of large-scale software projects by detecting, prioritizing and correcting design defects that affect the ease of both understanding and maintenance of the source code of software projects. In large-scale projects, programmers can spend at least 60% of their time in understanding the code. This interactive refactoring technology will significantly reduce that time which leads to higher productivity and much less software bugs. The proposed technology will allow programmers to meet high code quality standards when releasing a new software product and reduce software maintenance activities that can consume up to 90% of the total cost of a typical software project. This I-Corps project is to semi-automate the process of improving software quality by recommending refactoring changes, using computational search techniques, instead of the current manual refactoring tools support. Manual refactoring is error-prone, time consuming and not useful for radical refactoring that requires extensive application of changes to correct unhealthy code. This technology formalizes software refactoring as a dynamic interactive optimization framework that provides refactoring-centric interaction, enables refactoring and development to proceed in parallel and collects interactive information in a non-intrusive manner that can be used to inform dynamically the refactoring process. This technology recommends ways to make code quality easy to estimate, improve, evolve and reason about. The proposed refactoring technology has been successfully used by active programmers in both open source and industrial projects. Based on the high performance and low cost of the interactive refactoring technology, it may replace the current refactoring tools in the marketplace.
View original record on NSF Award Search →