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, the 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. We compare this interactive approach with the fully automated optimization process, which serves as the 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.
翻译:软件架构优化旨在提升性能、可靠性等非功能属性,同时满足功能需求。多目标优化采用元启发式搜索技术(如遗传算法)探索可行的架构变更,并向设计人员提出备选方案。然而,这一资源密集型流程未必总能契合实际约束。本研究探讨了设计人员交互对多目标软件架构优化的影响。设计人员可在全自动优化流程的中间节点进行干预,通过选择引导搜索向更优解方向前进。我们将这种交互式方法与作为基准的全自动优化流程进行对比。研究结果表明,设计人员交互可引导解空间更聚焦,从而提升架构质量。通过将搜索导向感兴趣的区域,交互过程能够发现全自动流程中未被探索的架构方案。