From SystemsResearch

Jump to: navigation, search


Performance-Driven Evolution


There are two main stages to evolving distributed applications in the manner desired by application builders: first deciding which changes are required and when, and secondly making the changes. Understanding the performance characteristics of distributed applications is essential for the first stage, while structural reflection over the source code may be used to achieve the latter. These pages describe our Automated Configuration Tool, ACT, that may be used to explore the need for change by empirically measuring application performance. We aim to use the data generated by ACT as input to the evolution process, informing the system how to evolve to new and improved architectural configurations.

ACT: Automated Configuration Tool

ACT is designed to be generic in that it may aid performance-driven evolution for a wide range of applications, referred to as the target systems. This is achieved by setting certain requirements for the target system, thereby allowing analysis of all systems that meet them. It requires that hooks, or plug-ins, be made available to run, measure and (re)-configure the target system. For automation, the plug-ins must run without human intervention. Details of how to access these hooks, and information about the configurable aspects of the application are encoded in an XML file as input to the tool.

Case Studies

As case studies, we are using:

An example of the use of Taguchi Methods for modelling and configuring DC-Directory can be found here.

Project Members


Observation-Driven Configuration of Complex Software Systems. Sage, AI. PhD Thesis 2003. [details]

ACT: a Tool for Performance Driven Evolution of Distributed Applications. Sage, AI, Kirby, GNC, Morrison, R. In: Proc. Working Conference on Complex and Dynamic Systems Architecture, Brisbane, Australia. 2001. [details]

Also available is a copy of the presentation and a transcript of the talk.

Related Work

Related work

Personal tools