Abstract:
Software maintainability is the ease with which a software system can be modified to correct faults, improve performance or other attributes of the source code. Bad smell...Show MoreMetadata
Abstract:
Software maintainability is the ease with which a software system can be modified to correct faults, improve performance or other attributes of the source code. Bad smells are symptoms of deeper problem that indicates the need for refactoring which is the process of changing internal structure of the software without affecting its external attributes. Applying different refactoring techniques in different parts of a code results in changed maintainability value every time. Therefore, sequence in which refactoring should be applied is important so that optimal results can be obtained. In this study, we have proposed an approach for evaluating sequence of refactoring by with the help of greedy algorithm. The algorithm selects locally optimal solution at each stage with the hope of finding global optimal solution. Different sequences are generated and applied to the source code to calculate sum of software maintainability values. Greedy algorithm helps in finding the optimal sequence out of all the search space. We have evaluated the approach with source code having god class, long method, feature envy, long parameter list, data clumps, data class, class hierarchy problem, empty catch block, exception thrown in finally block and nested try statement bad smells which are detected manually. Hence our approach is able to identify sequence for refactoring as well as best refactoring which will increase maintainability and enhance software quality.
Published in: 2016 International Conference on Advances in Computing, Communications and Informatics (ICACCI)
Date of Conference: 21-24 September 2016
Date Added to IEEE Xplore: 03 November 2016
ISBN Information: