EnergyPatch: Repairing Resource Leaks to Improve Energy-efficiency of Android Apps - Archive ouverte HAL Accéder directement au contenu
Article Dans Une Revue IEEE Transactions on Software Engineering Année : 2017

EnergyPatch: Repairing Resource Leaks to Improve Energy-efficiency of Android Apps

Résumé

Increased usage of mobile devices, such as smartphones and tablets, has led to widespread popularity and usage of mobile apps. If not carefully developed, such apps may demonstrate energy-inefficient behaviour, where one or more energy-intensive hardware components (such as Wifi, GPS, etc) are left in a high-power state, even when no apps are using these components. We refer to such kind of energy-inefficiencies as energy bugs. Executing an app with an energy bug causes the mobile device to exhibit poor energy consumption behaviour and a drastically shortened battery life. Since mobiles apps can have huge input domains, therefore exhaustive exploration is often impractical. We believe that there is a need for a framework that can systematically detect and fix energy bugs in mobile apps in a scalable fashion. To address this need, we have developed EnergyPatch, a framework that uses a combination of static and dynamic analysis techniques to detect, validate and repair energy bugs in Android apps. The use of a light-weight, static analysis technique enables EnergyPatch to quickly narrow down to the potential program paths along which energy bugs may occur. Subsequent exploration of these potentially buggy program paths using a dynamic analysis technique helps in validations of the reported bugs and to generate test cases. Finally, EnergyPatch generates repair expressions to fix the validated energy bugs. Evaluation with real-life apps from repositories such as F-droid and Github, shows that EnergyPatch is scalable and can produce results in reasonable amount of time. Additionally, we observed that the repair expressions generated by EnergyPatch could bring down the energy consumption on tested apps up to 60%.
Fichier non déposé

Dates et versions

hal-01578386 , version 1 (29-08-2017)

Identifiants

Citer

Banerjee Abhijeet, Chong Lee Kee, Clément Ballabriga, Roychoudhury Abhik. EnergyPatch: Repairing Resource Leaks to Improve Energy-efficiency of Android Apps. IEEE Transactions on Software Engineering, 2017, IEEE Transactions on Software Engineering, PP (99), ⟨10.1109/TSE.2017.2689012⟩. ⟨hal-01578386⟩
99 Consultations
0 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More