This presentation describes a project where the goal was to add new capabilities to ArchE, an expert system developed at the SEI that automates some of the tasks an architect performs when elaborating software architectures. This new capability consists of the ability to automatically suggest and apply performance tactics to a software architecture model.
The main challenges that arose in this work consisted in mapping documented performance tactics to an automatable form, identifying rules to determine when a given tactic is applicable (based on various properties of the current software architecture), and identifying properties that can be assigned to architectural elements in order to support the automatic application of various tactics. The main contributions of this work are an actual implementation of some performance tactics in ArchE (including the rules mentioned above), and an improved overall design of tactics implementation in ArchE that is reusable in future ArchE extensions.
This presentation was given at SATURN 2011 in Burlingame, CA.