Multi-objective Software Architecture Refactoring driven by Quality Attributes
Daniele Di Pompeo, Michele Tucci

TL;DR
This paper presents an optimization framework using genetic algorithms to automate multi-objective software architecture refactoring aimed at improving quality attributes, tested on diverse case studies.
Contribution
It introduces a framework that evaluates different genetic algorithms for automated architecture refactoring based on quality attributes.
Findings
Genetic algorithms effectively optimize software architecture trade-offs.
Framework performs well across different sizes and complexities.
Case studies demonstrate practical applicability and benefits.
Abstract
Architecture optimization is the process of automatically generating design options, typically to enhance software's quantifiable quality attributes, such as performance and reliability. Multi-objective optimization approaches have been used in this situation to assist the designer in selecting appropriate trade-offs between a number of non-functional features. Through automated refactoring, design alternatives can be produced in this process, and assessed using non-functional models. This type of optimization tasks are hard and time- and resource-intensive, which frequently hampers their use in software engineering procedures. In this paper, we present our optimization framework where we examined the performance of various genetic algorithms. We also exercised our framework with two case studies with various levels of size, complexity, and domain served as our test subjects.
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Software Engineering Research · Software Reliability and Analysis Research
