TL;DR
This paper presents a multi-objective optimization approach using NSGA-II to improve software refactoring by balancing performance, reliability, and antipatterns, demonstrating that considering antipatterns enhances performance improvements.
Contribution
The paper introduces a novel multi-objective evolutionary algorithm approach that incorporates performance antipatterns into software refactoring optimization, showing improved performance results.
Findings
Incorporating antipatterns improves performance by up to 15%.
The approach effectively balances multiple quality objectives.
Considering antipatterns does not negatively impact other quality attributes.
Abstract
Software quality estimation is a challenging and time-consuming activity, and models are crucial to face the complexity of such activity on modern software applications. One main challenge is that the improvement of distinctive quality attributes may require contrasting refactoring actions on an application, as for trade-off between performance and reliability. In such cases, multi-objective optimization can provide the designer with a wider view on these trade-offs and, consequently, can lead to identify suitable actions that take into account independent or even competing objectives. In this paper, we present an approach that exploits the NSGA-II multi-objective evolutionary algorithm to search optimal Pareto solution frontiers for software refactoring while considering as objectives: i) performance variation, ii) reliability, iii) amount of performance antipatterns, and iv)…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
