ePASA Research
ePASA Research
Research Area
ePASA research is in the broad area of Software Performance Engineering [1], focussing on predictive Software Performance Modelling.
We are concentrating on the performance prediction of large-scale, loosely-coupled, heterogenous, cross-enterprise, service oriented architectures (SOAs).
SOAs have demanding performance requirements (e.g. are mission critical, are "Open" and therefore have unpredictable and potentially unbounded load spikes).
We have developed a software performance modelling approach called "Service-Oriented Performance Modelling" to enable the rapid construction, use and evolution of performance models of SOAs throughought their lifecycle.
Research Contributions
Building realistic performance models of large-scale complex software systems is difficult, time-consuming, and error-prone.
In trials with collaborating government and industry SOA projects we found that existing approaches were too complex, did not capture the important architectural characteristics of SOAs, and did not compute necessary service-level metrics (e.g. for services or compositions of services).
Using a domain-specific model-driven performance modelling approach allows models to be rapidly constructed, paramaterised, validated, used, refined, and evolved by software architects, directly in terms of service oriented architecture concepts. These include: Workloads (how services are consumed), Services (Compositions defined as workflows), and deployment to Servers.
We have invented a meta-model and tool support for Service Oriented Performance Modleling which supports rapid model construction and use.
Using a model-driven transformation approach, the model is automatically converted into a run-time form for processing by a powerful discrete event simulation engine, which computes performance metrics for each service in the SOA. Being able to predict sevice-level metrics is essential for reasoning about SOA performance. Response time and throughput distribution statistics enable negotiation of service SLAs, and better understanding of the dynamics of the system (e.g. under varying workload distributions, and saturated behaviour and recovery time).
A survey and previous research on model-driven performance modelling applied to component-based systems can be found in [2, 3, 4].
Research Challenges
Future research is planned to integrate the modelling technology with Business Process Modelling and SOA/ESB run-time infrastructure to enable round-trip end-to-end performance management of SOA applications.
We are also exploring the use of Virtualization and Cloud Computing platforms to host SOAs, and the performance/scalability implications, and modeling of these.
Finally, we are validating the approach for different architectural styles, and SOA/ESB technologies.
References
[1] Smith, C. U. and Williams, L. G. 1993. Software Performance Engineering: A Case Study Including Performance Comparison with Design Alternatives. IEEE Trans. Softw. Eng. 19, 7 (Jul. 1993), 720-741. DOI= http://dx.doi.org/10.1109/32.238572
[2] Model-based performance prediction in software development: a survey. Balsamo, S. Di Marco, A. Inverardi, P. Simeoni, M.
Dipt. di Informatica, Universita di Venezia, Italy. Software Engineering, IEEE Transactions on, May 2004, Volume: 30, Issue: 5, On page(s): 295- 310, Digital Object Identifier: 10.1109/TSE.2004.9
[3] Palladio Component Model, http://sdqweb.ipd.uka.de/wiki/Palladio_Component_Model
[4] Gabriel A. Moreno, Paulo Merson: Model-Driven Performance Analysis. QoSA 2008: 135-151, http://www.sei.cmu.edu/pacc/moreno-QoSA08-s.pdf
