Multi-objective Software Architecture Refactoring driven by Quality Attributes

01/18/2023
by   Daniele Di Pompeo, et al.
0

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.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset