Automated Selection of Software Refactorings that Improve Performance

Nikolai Moesus, Matthias Scholze, Sebastian Schlesinger, Paula Herber

Abstract

Performance is a critical property of a program. While there exist refactorings that have the potential to significantly increase the performance of a program, it is hard to decide which refactorings effectively yield improvements. In this paper, we present a novel approach for the automated detection and selection of refactorings that are promising candidates to improve performance. Our key idea is to provide a heuristics that utilizes software properties determined by both static code analyses and dynamic software analyses to compile a list of concrete refactorings sorted by their assessed potential to improve performance. The expected performance improvement of a concrete refactoring depends on two factors: the execution frequency of the respective piece of code, and the effectiveness of the refactoring itself. To assess the latter, namely the general effectiveness of a given set of refactorings, we have implemented a set of micro benchmarks and measured the effect of each refactoring on computation time and memory consumption. We demonstrate the practical applicability of our overall approach with experimental results.

Download


Paper Citation


in Harvard Style

Scholze M., Schlesinger S. and Herber P. (2018). Automated Selection of Software Refactorings that Improve Performance.In Proceedings of the 13th International Conference on Software Technologies - Volume 1: ICSOFT, ISBN 978-989-758-320-9, pages 33-44. DOI: 10.5220/0006837900330044


in Bibtex Style

@conference{icsoft18,
author={Matthias Scholze and Sebastian Schlesinger and Paula Herber},
title={Automated Selection of Software Refactorings that Improve Performance},
booktitle={Proceedings of the 13th International Conference on Software Technologies - Volume 1: ICSOFT,},
year={2018},
pages={33-44},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006837900330044},
isbn={978-989-758-320-9},
}


in EndNote Style

TY - CONF

JO - Proceedings of the 13th International Conference on Software Technologies - Volume 1: ICSOFT,
TI - Automated Selection of Software Refactorings that Improve Performance
SN - 978-989-758-320-9
AU - Scholze M.
AU - Schlesinger S.
AU - Herber P.
PY - 2018
SP - 33
EP - 44
DO - 10.5220/0006837900330044