PerOpteryx: automated application of tactics in multi-objective software architecture optimization

  • Authors:
  • Anne Koziolek;Heiko Koziolek;Ralf Reussner

  • Affiliations:
  • Karlsruhe Institute of Technology, Karlsruhe, Germany;ABB Corporate Research, Ladenburg, Germany;Karlsruhe Institute of Technology, Karlsruhe, Germany

  • Venue:
  • Proceedings of the joint ACM SIGSOFT conference -- QoSA and ACM SIGSOFT symposium -- ISARCS on Quality of software architectures -- QoSA and architecting critical systems -- ISARCS
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Designing software architectures that exhibit a good trade-off between multiple quality attributes is hard. Even with a given functional design, many degrees of freedom in the software architecture (e.g. component deployment or server configuration) span a large design space. In current practice, software architects try to find good solutions manually, which is time-consuming, can be error-prone and can lead to suboptimal designs. We propose an automated approach guided by architectural tactics to search the design space for good solutions. Our approach applies multi-objective evolutionary optimization to software architectures modelled with the Palladio Component Model. Software architects can then make well-informed trade-off decisions and choose the best architecture for their situation. To validate our approach, we applied it to the architecture models of two systems, a business reporting system and an industrial control system from ABB. The approach was able to find meaningful trade-offs leading to significant performance improvements or costs savings. The novel use of tactics decreased the time needed to find good solutions by up to 80%.