On the Role of Search Budgets in Model-Based Software Refactoring Optimization
arXiv:2308.15179 · doi:10.1007/s10515-025-00564-y
Abstract
Software model optimization is a process that automatically generates design alternatives aimed at improving quantifiable non-functional properties of software systems, such as performance and reliability. Multi-objective evolutionary algorithms effectively help designers identify trade-offs among the desired non-functional properties. To reduce the use of computational resources, this work examines the impact of implementing a search budget to limit the search for design alternatives. In particular, we analyze how time budgets affect the quality of Pareto fronts by utilizing quality indicators and exploring the structural features of the generated design alternatives. This study identifies distinct behavioral differences among evolutionary algorithms when a search budget is implemented. It further reveals that design alternatives generated under a budget are structurally different from those produced without one. Additionally, we offer recommendations for designers on selecting algorithms in relation to time constraints, thereby facilitating the effective application of automated refactoring to improve non-functional properties.
arXiv admin note: text overlap with arXiv:2212.08385
References in corpus (8)
- How to Evaluate Solutions in Pareto-based Search-Based Software Engineering? A Critical Review and Methodological Guidance
- A Model-driven Approach for Continuous Performance Engineering in Microservice-based Systems
- Search Budget in Multi-Objective Refactoring Optimization: a Model-Based Empirical Study
- Many-Objective Optimization of Non-Functional Attributes based on Refactoring of Software Models
- Introducing Interactions in Multi-Objective Optimization of Software Architectures
- Exploring sustainable alternatives for the deployment of microservices architectures in the cloud
- Towards Assessing Spread in Sets of Software Architecture Designs
- Performance of Genetic Algorithms in the Context of Software Model Refactoring