EB
E.W. Blokland
info
Please Note
<p>This page displays the records of the person named above and is not linked to a unique person identifier. This record may need to be merged to a profile.</p>
2 records found
1
This thesis was written in during my internship at Adyen as the final project of the Master’s program in Computer Science at the TU Delft. In my Bachelor’s thesis, I compared the energy consumption of three Android UI frameworks, and I chose to continue working on the subject of energy consumption on Android as it is relevant both to Adyen and the greater Android community. In this thesis, I review the state-of-the-art of energy consumption tools for Android, compare three approaches to attributing energy consumption to code at a fine-grained level, and implement one of these in a tool that can be used to analyze release-mode Android apps. I then empirically evaluate this tool, and apply it at Adyen in a case study in which I cooperate with a developer to solve an energy bug. As part of the empirical evaluation, I also perform a preliminary comparison of release and debug mode with respect to energy consumption, using three code smells identified in prior work as having an effect on the energy use of methods containing them. The results of the empirical investigation show that statistical sampling can be applied to Android devices to attribute energy consumption to methods within a reasonable margin of error. It further shows that this approach can be used to identify differences in energy consumption between different versions of software. The comparison between release and debug mode showed that the overhead caused by the use of debug mode is not consistent, and varies between both different code smells and different devices. This has significant implications for further work measuring energy consumption on Android, as it implies that results obtained using debug mode cannot be generalized to release mode, which all apps will use in production environments. Finally, the case study showed that this approach is able to significantly assist the energy debugging process, and revealed that even today, developers often lack the information necessary to make informed decisions over the energy consumption of their software. However, once this information is made available, both developers and stakeholders are willing to adapt their decision-making to incorporate energy efficiency.
...
This thesis was written in during my internship at Adyen as the final project of the Master’s program in Computer Science at the TU Delft. In my Bachelor’s thesis, I compared the energy consumption of three Android UI frameworks, and I chose to continue working on the subject of energy consumption on Android as it is relevant both to Adyen and the greater Android community. In this thesis, I review the state-of-the-art of energy consumption tools for Android, compare three approaches to attributing energy consumption to code at a fine-grained level, and implement one of these in a tool that can be used to analyze release-mode Android apps. I then empirically evaluate this tool, and apply it at Adyen in a case study in which I cooperate with a developer to solve an energy bug. As part of the empirical evaluation, I also perform a preliminary comparison of release and debug mode with respect to energy consumption, using three code smells identified in prior work as having an effect on the energy use of methods containing them. The results of the empirical investigation show that statistical sampling can be applied to Android devices to attribute energy consumption to methods within a reasonable margin of error. It further shows that this approach can be used to identify differences in energy consumption between different versions of software. The comparison between release and debug mode showed that the overhead caused by the use of debug mode is not consistent, and varies between both different code smells and different devices. This has significant implications for further work measuring energy consumption on Android, as it implies that results obtained using debug mode cannot be generalized to release mode, which all apps will use in production environments. Finally, the case study showed that this approach is able to significantly assist the energy debugging process, and revealed that even today, developers often lack the information necessary to make informed decisions over the energy consumption of their software. However, once this information is made available, both developers and stakeholders are willing to adapt their decision-making to incorporate energy efficiency.
Energy efficiency is a growing area of concern for mobile developers, as good battery life is highly desired by end users of mobile devices. While many developers work to increase their app's energy efficiency during development, there is not much information available about the energy efficiency of the different app frameworks on the market. As the choice of a framework must be made before the start of development, and cannot be easily changed later on, information about these frameworks is crucial to allow developers to optimize their apps for efficiency.
In this paper, we compare the energy use of the React Native and Flutter frameworks while performing User Interface tasks to the native Android API. While we were unable to draw a conclusion about whether one of these frameworks is more or less efficient than the baseline app, we were able to identify certain UI actions that were consistently more or power-hungry than average, and found that the energy use tendencies of these actions tended to be consistent between different frameworks and devices. We also found that measuring overall energy use between separate test runs was inconsistent, and further research may be necessary to identify the best method to isolate the energy use of a single app. ...
In this paper, we compare the energy use of the React Native and Flutter frameworks while performing User Interface tasks to the native Android API. While we were unable to draw a conclusion about whether one of these frameworks is more or less efficient than the baseline app, we were able to identify certain UI actions that were consistently more or power-hungry than average, and found that the energy use tendencies of these actions tended to be consistent between different frameworks and devices. We also found that measuring overall energy use between separate test runs was inconsistent, and further research may be necessary to identify the best method to isolate the energy use of a single app. ...
Energy efficiency is a growing area of concern for mobile developers, as good battery life is highly desired by end users of mobile devices. While many developers work to increase their app's energy efficiency during development, there is not much information available about the energy efficiency of the different app frameworks on the market. As the choice of a framework must be made before the start of development, and cannot be easily changed later on, information about these frameworks is crucial to allow developers to optimize their apps for efficiency.
In this paper, we compare the energy use of the React Native and Flutter frameworks while performing User Interface tasks to the native Android API. While we were unable to draw a conclusion about whether one of these frameworks is more or less efficient than the baseline app, we were able to identify certain UI actions that were consistently more or power-hungry than average, and found that the energy use tendencies of these actions tended to be consistent between different frameworks and devices. We also found that measuring overall energy use between separate test runs was inconsistent, and further research may be necessary to identify the best method to isolate the energy use of a single app.
In this paper, we compare the energy use of the React Native and Flutter frameworks while performing User Interface tasks to the native Android API. While we were unable to draw a conclusion about whether one of these frameworks is more or less efficient than the baseline app, we were able to identify certain UI actions that were consistently more or power-hungry than average, and found that the energy use tendencies of these actions tended to be consistent between different frameworks and devices. We also found that measuring overall energy use between separate test runs was inconsistent, and further research may be necessary to identify the best method to isolate the energy use of a single app.