Introducing Interactions in Multi-Objective Optimization of Software Architectures
Vittorio Cortellessa, J. Andres Diaz-Pace, Daniele Di Pompeo,, Sebastian Frank, Pooyan Jamshidi, Michele Tucci, Andr\'e van Hoorn

TL;DR
This paper explores how incorporating designer interactions into multi-objective software architecture optimization improves solution quality and efficiency by guiding the search process, compared to fully automated methods.
Contribution
It introduces an interactive approach allowing designer intervention during optimization, which enhances solution relevance and uncovers architectures missed by automation.
Findings
Interactive approach yields higher quality architectures.
Designer intervention narrows the solution space.
Participants prefer interactive optimization for better trade-offs.
Abstract
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…
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.
Taxonomy
TopicsSoftware Engineering Research · Software Engineering Techniques and Practices · Advanced Software Engineering Methodologies
