arrow
Return

Introducing Interactions in Multi-Objective Optimization of Software Architectures

delete2025-01-13
delete0
delete
OA
AI
V
Vittorio Cortellessa
J
J. Andrés Díaz‐Pace
D
Daniele Di Pompeo
S
Sebastian Frank
P
Pooyan Jamshidi
M
Michele Tucci
A
André van Hoorn
DOI:10.1145/3712185delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Software architecture optimization aims to enhance non-functional attributes like performance and reliability while meeting functional requirements. Multi-objective optimization employs metaheuristic search techniques, such as genetic algorithms, to explore feasible architectural changes and propose alternatives to designers. However, this resource-intensive process may not always align with practical constraints. This study investigates the impact of designer interactions on multi-objective software architecture optimization. Designers can intervene at intermediate points in the fully automated optimization process, making choices that guide exploration towards more desirable solutions. Through several controlled experiments as well as an initial user study (14 subjects), we compare this interactive approach with a fully automated optimization process, which serves as a baseline. The findings demonstrate that designer interactions lead to a more focused solution space, resulting in improved architectural quality. By directing the search towards regions of interest, the interaction uncovers architectures that remain unexplored in the fully automated process. In the user study, participants found that our interactive approach provides a better trade-off between sufficient exploration of the solution space and the required computation time.
Keywords:
software architecture optimization
multi-objective optimization
metaheuristic search
genetic algorithms
non-functional attributes

Journal

A
ACM Transactions on Software Engineering and Methodology
IF:
6.2
Papers:
1.2K
Citations:
3.4K

Organization

No organization information available