Assessing the environmental impact of mobile applications: a measure framework toward DevGreenOps
Status:: 🟩
Links:: Greenspector GreenOps Measure power usage of website frontend features within a web browser Measure energy consumption of mobile software applications
Metadata
Authors:: Guégain, Edouard
Title:: Assessing the environmental impact of mobile applications: a measure framework toward DevGreenOps
Date:: 2024
Publisher:: Association for Computing Machinery
URL:: https://dl.acm.org/doi/10.1145/3647632.3651391
DOI:: 10.1145/3647632.3651391
Guégain, E. (2024) ‘Assessing the environmental impact of mobile applications: a measure framework toward DevGreenOps’, in Proceedings of the IEEE/ACM 11th International Conference on Mobile Software Engineering and Systems. New York, NY, USA: Association for Computing Machinery (MOBILESoft ’24), pp. 88–91. Available at: https://doi.org/10.1145/3647632.3651391.
Information and Communication Technologies are responsible for an increasing share of humanity's environmental impact. Such impacts are in part caused by the usage and manufacturing of mobile devices, in particular, due to their short-lived batteries. To limit such impacts, software editors should optimize the energy and data usage of their applications. However, such metrics are not trivial to monitor. This paper thus introduces a test framework to measure the energy and data usage of applications on physical devices during realistic usage scenarios. This framework is designed to be integrated into existing quality assurance processes such as Continuous Integration, thus enabling a DevGreenOps methodology.
Notes & Annotations
Color-coded highlighting system used for annotations
📑 Annotations (imported on 2024-09-14#16:11:06)
In this paper, we argue that measuring the energy and data usage of mobile applications during realistic user journeys is necessary to assess their environmental impact. Such measurements must be performed during usage scenarios that are representative of human usage. In addition, the performance of applications must be measured on physical devices, as virtual devices may not properly replicate the performance of physical ones. Then, such performance data must be aggregated as a unique criterion to decide whether the environmental impact of a given application improved or regressed after any change to the source code.
This framework contains four components. First, a tool allows for creating user journeys replicating human usage of the application. Then, a measure protocol is defined to monitor the application’s performance during such user journeys. The results of such measures are then centralized and processed in a data visualization platform, Greenspector Studio. The final component of this framework is a control tool, Greenspector CLI, used to launch the execution of the test suites. This section details the usage and capabilities of such components.
While executing the application on virtual devices would provide metrics regarding the data usage, their energy consumption can not be assumed to properly replicate physical devices. Therefore, all performance assessments are performed on actual devices.
The data usage is leveraged to estimate the impact of network and servers.
A second limitation of this framework lies in the focus on the end-user’s devices. The impacts of the application on server and network infrastructure are not measured but only estimated through data usage.
For instance, in [5], the authors developed a functionally identical application with five different development frameworks. After monitoring the battery and data usage and the size of such applications, the authors discuss the impact of each development framework on performance. Such usage of our framework can assist the decision process, both when designing new software services from scratch and when comparing possible implementations of a given feature during development. Such a usage fits into the "monitor", "plan", and "code" steps of a DevOps methodology.