sas 15(3): e4

Research Article

Detecting Performance Change in Enterprise Application Versions Using Resource Profiles

Download276 downloads
  • @ARTICLE{10.4108/icst.valuetools.2014.258184,
        author={Andreas Brunnert and Helmut Krcmar},
        title={Detecting Performance Change in Enterprise Application Versions Using Resource Profiles},
        journal={EAI Endorsed Transactions on Self-Adaptive Systems},
        volume={1},
        number={3},
        publisher={EAI},
        journal_a={SAS},
        year={2015},
        month={2},
        keywords={performance evaluation, performance change detection, palladio component model, java, enterprise applications},
        doi={10.4108/icst.valuetools.2014.258184}
    }
    
  • Andreas Brunnert
    Helmut Krcmar
    Year: 2015
    Detecting Performance Change in Enterprise Application Versions Using Resource Profiles
    SAS
    EAI
    DOI: 10.4108/icst.valuetools.2014.258184
Andreas Brunnert1,*, Helmut Krcmar2
  • 1: fortiss GmbH
  • 2: Technische Universität München
*Contact email: brunnert@fortiss.org

Abstract

Performance characteristics (i.e., response time, throughput, resource utilization) of enterprise applications change for each version due to feature additions, bug fixes or configuration changes. Therefore, performance needs to be continuously evaluated to detect performance changes (i.e., improvements or regressions). This work proposes a performance change detection process by creating and versioning resource profiles for each application version that is being built. Resource profiles are models that describe the resource demand per transaction for each component of an enterprise application and their control flow. Combined with workload and hardware environment models, resource profiles can be used to predict performance. Performance changes can be identified by comparing the performance metrics resulting from predictions of different resource profile versions (e.g., by observing an increase or decrease of response time). The source of changes in the resulting performance metrics can be identified by comparing the profiles of different application versions. We propose and evaluate an integration of these capabilities into a deployment pipeline of a continuous delivery process.