Empirical Evaluation of the Energy Impact of Refactoring Code Smells

Roberto Verdecchia, Rene' Aparicio Saez, Giuseppe Procaccianti, Patricia Lago

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

Abstract

Software energy efficiency has gained increasing attention of the research community. How to improve it, however, still lacks evidence. Specifically, the impact of code smell refactoring on energy efficiency has been scarcely investigated. In the pilot study here reported, we investigate the impact on performance and energy consumption of refactoring well-known code smells on Java software applications. In order to understand if software metrics can be used as indicators of the energy impact of refactoring, we also measured the variation caused by refactoring on a set of well-established software metrics. We conducted a controlled experiment using state-of-the-art power measurement equipment. Statistical hypothesis testing and effect size estimation were performed on the experimental results. Results show that in one out of three applications, refactoring each smell significantly impacted power- and energy consumption. Specifically, refactoring Feature Envy and Long Method smells led to a 49% energy efficiency improvement. No software metrics significantly correlated with execution time, power or energy consumption. In conclusion, refactoring code smells can significantly improve software energy efficiency. The magnitude of the impact may depend on application properties, e.g. size or age. Further research is needed to understand the relationship between software metrics and energy efficiency.
Original languageEnglish
Title of host publicationICT4S2018. 5th International Conference on Information and Communication Technology for Sustainability
Subtitle of host publicationProceedings
EditorsBirgit Penzenstadler, Steve Easterbrook, Colin Venters, Syed Ishtiaque Ahmed
Place of PublicationToronto, Canada
PublisherEasyChair
Pages365-383
Number of pages19
DOIs
Publication statusPublished - May 2018
Event5th International Conference on Information and Communication Technology for Sustainability. ICT4S2018 - Toronto, Canada
Duration: 15 May 201817 May 2018
Conference number: 5

Publication series

NameEPiC Series in Computing
PublisherEasychair
Volume52
ISSN (Print)2398-7340

Conference

Conference5th International Conference on Information and Communication Technology for Sustainability. ICT4S2018
Abbreviated titleICT4S2018
CountryCanada
CityToronto
Period15/05/1817/05/18

Fingerprint

Energy efficiency
Energy utilization
Electric power utilization
Application programs
Testing
Experiments

Keywords

  • Software Engineering
  • sustainability
  • energy efficiency
  • Green IT

VU Research Profile

  • Connected World
  • Science for Sustainability

Cite this

Verdecchia, R., Saez, R. A., Procaccianti, G., & Lago, P. (2018). Empirical Evaluation of the Energy Impact of Refactoring Code Smells. In B. Penzenstadler, S. Easterbrook, C. Venters, & S. Ishtiaque Ahmed (Eds.), ICT4S2018. 5th International Conference on Information and Communication Technology for Sustainability: Proceedings (pp. 365-383). (EPiC Series in Computing; Vol. 52). Toronto, Canada: EasyChair. https://doi.org/10.29007/dz83
Verdecchia, Roberto ; Saez, Rene' Aparicio ; Procaccianti, Giuseppe ; Lago, Patricia. / Empirical Evaluation of the Energy Impact of Refactoring Code Smells. ICT4S2018. 5th International Conference on Information and Communication Technology for Sustainability: Proceedings. editor / Birgit Penzenstadler ; Steve Easterbrook ; Colin Venters ; Syed Ishtiaque Ahmed. Toronto, Canada : EasyChair, 2018. pp. 365-383 (EPiC Series in Computing).
@inproceedings{1318090b0cfc4254bb3c42d48ea64ca5,
title = "Empirical Evaluation of the Energy Impact of Refactoring Code Smells",
abstract = "Software energy efficiency has gained increasing attention of the research community. How to improve it, however, still lacks evidence. Specifically, the impact of code smell refactoring on energy efficiency has been scarcely investigated. In the pilot study here reported, we investigate the impact on performance and energy consumption of refactoring well-known code smells on Java software applications. In order to understand if software metrics can be used as indicators of the energy impact of refactoring, we also measured the variation caused by refactoring on a set of well-established software metrics. We conducted a controlled experiment using state-of-the-art power measurement equipment. Statistical hypothesis testing and effect size estimation were performed on the experimental results. Results show that in one out of three applications, refactoring each smell significantly impacted power- and energy consumption. Specifically, refactoring Feature Envy and Long Method smells led to a 49{\%} energy efficiency improvement. No software metrics significantly correlated with execution time, power or energy consumption. In conclusion, refactoring code smells can significantly improve software energy efficiency. The magnitude of the impact may depend on application properties, e.g. size or age. Further research is needed to understand the relationship between software metrics and energy efficiency.",
keywords = "Software Engineering, sustainability, energy efficiency, Green IT",
author = "Roberto Verdecchia and Saez, {Rene' Aparicio} and Giuseppe Procaccianti and Patricia Lago",
year = "2018",
month = "5",
doi = "10.29007/dz83",
language = "English",
series = "EPiC Series in Computing",
publisher = "EasyChair",
pages = "365--383",
editor = "Birgit Penzenstadler and Steve Easterbrook and Colin Venters and {Ishtiaque Ahmed}, Syed",
booktitle = "ICT4S2018. 5th International Conference on Information and Communication Technology for Sustainability",

}

Verdecchia, R, Saez, RA, Procaccianti, G & Lago, P 2018, Empirical Evaluation of the Energy Impact of Refactoring Code Smells. in B Penzenstadler, S Easterbrook, C Venters & S Ishtiaque Ahmed (eds), ICT4S2018. 5th International Conference on Information and Communication Technology for Sustainability: Proceedings. EPiC Series in Computing, vol. 52, EasyChair, Toronto, Canada, pp. 365-383, 5th International Conference on Information and Communication Technology for Sustainability. ICT4S2018, Toronto, Canada, 15/05/18. https://doi.org/10.29007/dz83

Empirical Evaluation of the Energy Impact of Refactoring Code Smells. / Verdecchia, Roberto; Saez, Rene' Aparicio; Procaccianti, Giuseppe; Lago, Patricia.

ICT4S2018. 5th International Conference on Information and Communication Technology for Sustainability: Proceedings. ed. / Birgit Penzenstadler; Steve Easterbrook; Colin Venters; Syed Ishtiaque Ahmed. Toronto, Canada : EasyChair, 2018. p. 365-383 (EPiC Series in Computing; Vol. 52).

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

TY - GEN

T1 - Empirical Evaluation of the Energy Impact of Refactoring Code Smells

AU - Verdecchia, Roberto

AU - Saez, Rene' Aparicio

AU - Procaccianti, Giuseppe

AU - Lago, Patricia

PY - 2018/5

Y1 - 2018/5

N2 - Software energy efficiency has gained increasing attention of the research community. How to improve it, however, still lacks evidence. Specifically, the impact of code smell refactoring on energy efficiency has been scarcely investigated. In the pilot study here reported, we investigate the impact on performance and energy consumption of refactoring well-known code smells on Java software applications. In order to understand if software metrics can be used as indicators of the energy impact of refactoring, we also measured the variation caused by refactoring on a set of well-established software metrics. We conducted a controlled experiment using state-of-the-art power measurement equipment. Statistical hypothesis testing and effect size estimation were performed on the experimental results. Results show that in one out of three applications, refactoring each smell significantly impacted power- and energy consumption. Specifically, refactoring Feature Envy and Long Method smells led to a 49% energy efficiency improvement. No software metrics significantly correlated with execution time, power or energy consumption. In conclusion, refactoring code smells can significantly improve software energy efficiency. The magnitude of the impact may depend on application properties, e.g. size or age. Further research is needed to understand the relationship between software metrics and energy efficiency.

AB - Software energy efficiency has gained increasing attention of the research community. How to improve it, however, still lacks evidence. Specifically, the impact of code smell refactoring on energy efficiency has been scarcely investigated. In the pilot study here reported, we investigate the impact on performance and energy consumption of refactoring well-known code smells on Java software applications. In order to understand if software metrics can be used as indicators of the energy impact of refactoring, we also measured the variation caused by refactoring on a set of well-established software metrics. We conducted a controlled experiment using state-of-the-art power measurement equipment. Statistical hypothesis testing and effect size estimation were performed on the experimental results. Results show that in one out of three applications, refactoring each smell significantly impacted power- and energy consumption. Specifically, refactoring Feature Envy and Long Method smells led to a 49% energy efficiency improvement. No software metrics significantly correlated with execution time, power or energy consumption. In conclusion, refactoring code smells can significantly improve software energy efficiency. The magnitude of the impact may depend on application properties, e.g. size or age. Further research is needed to understand the relationship between software metrics and energy efficiency.

KW - Software Engineering

KW - sustainability

KW - energy efficiency

KW - Green IT

U2 - 10.29007/dz83

DO - 10.29007/dz83

M3 - Conference contribution

T3 - EPiC Series in Computing

SP - 365

EP - 383

BT - ICT4S2018. 5th International Conference on Information and Communication Technology for Sustainability

A2 - Penzenstadler, Birgit

A2 - Easterbrook, Steve

A2 - Venters, Colin

A2 - Ishtiaque Ahmed, Syed

PB - EasyChair

CY - Toronto, Canada

ER -

Verdecchia R, Saez RA, Procaccianti G, Lago P. Empirical Evaluation of the Energy Impact of Refactoring Code Smells. In Penzenstadler B, Easterbrook S, Venters C, Ishtiaque Ahmed S, editors, ICT4S2018. 5th International Conference on Information and Communication Technology for Sustainability: Proceedings. Toronto, Canada: EasyChair. 2018. p. 365-383. (EPiC Series in Computing). https://doi.org/10.29007/dz83