Evaluating the impact of code smell refactoring on the energy consumption of Android applications
By: Hina Anwar, Dietmar Pfahl, Satish N. Srirama
Potential Business Impact:
Cleans up app code to save phone battery.
Energy consumption of mobile apps is a domain that is receiving a lot of attention from researchers. Recent studies indicate that the energy consumption of mobile devices could be improved by improving the quality of mobile apps. Frequent refactoring is one way of achieving this goal. In this paper, we explore the performance and energy impact of several common code refactorings in Android apps. Experimental results indicate that some code smell refactorings positively impact the energy consumption of Android apps. Refactoring of the code smells "Duplicated code" and "Type checking" reduce energy consumption by up to 10.8%. Significant reduction in energy consumption, however, does not seem to be directly related to the increase or decrease of execution time. In addition, the energy impact over permutations of code smell refactorings in the selected Android apps was small. When analyzing the order in which refactorings were made across code smell types, it turned out that some permutations resulted in a reduction and some in an increase of energy consumption for the analyzed apps. More research needs to be done to investigate how factors like size and age of software apps, experience, and number of contributors to app development correlate with (a) the number and type of code smells found and (b) the impact of energy consumption and performance after refactoring.
Similar Papers
Assessing the Impact of Refactoring Energy-Inefficient Code Patterns on Software Sustainability: An Industry Case Study
Software Engineering
Makes computer programs use less energy.
Probabilistic energy profiler for statically typed JVM-based programming languages
Programming Languages
Predicts software energy use from code details.
ARENA: A tool for measuring and analysing the energy efficiency of Android apps
Software Engineering
Helps apps use less phone battery power.