An efficient method for uncertainty propagation in robust software performance estimation

Aldeida Aleti, Catia Trubiani, André van Hoorn, Pooyan Jamshidi

Research output: Contribution to journalArticleResearchpeer-review

9 Citations (Scopus)

Abstract

Software engineers often have to estimate the performance of a software system before having full knowledge of the system parameters, such as workload and operational profile. These uncertain parameters inevitably affect the accuracy of quality evaluations, and the ability to judge if the system can continue to fulfil performance requirements if parameter results are different from expected. Previous work has addressed this problem by modelling the potential values of uncertain parameters as probability distribution functions, and estimating the robustness of the system using Monte Carlo-based methods. These approaches require a large number of samples, which results in high computational cost and long waiting times. To address the computational inefficiency of existing approaches, we employ Polynomial Chaos Expansion (PCE) as a rigorous method for uncertainty propagation and further extend its use to robust performance estimation. The aim is to assess if the software system is robust, i.e., it can withstand possible changes in parameter values, and continue to meet performance requirements. PCE is a very efficient technique, and requires significantly less computations to accurately estimate the distribution of performance indices. Through three very different case studies from different phases of software development and heterogeneous application domains, we show that PCE can accurately (> 97%) estimate the robustness of various performance indices, and saves up to 225 h of performance evaluation time when compared to Monte Carlo Simulation.

Original languageEnglish
Pages (from-to)222-235
Number of pages14
JournalJournal of Systems and Software
Volume138
DOIs
Publication statusPublished - Apr 2018

Keywords

  • Polynomial chaos expansion
  • Software performance engineering
  • Uncertainty propagation

Cite this