RECHARGE: monitoRing, tEsting, and CHaracterization of performAnce Regressions
A framework that leverages static analysis and search-based algorithms for automating performance testing in CI/CD pipelines.
Modern software systems are heterogeneous and they feature different non-functional requirements. For example, smartphones have limited battery life and require software optimized to reduce energy consumption. Still, embedded systems often come with performance-critical requirements specifying precise time windows in which a task must be executed. Nevertheless, most issues reported during software testing are related to software crashes or incorrect system responses, while performance problems are often neglected. This aspect is even more relevant in Continuous Integration and Deployment (CI/CD), where software is re-deployed on a dedicated infrastructure every time a change is pushed.
Automated performance testing in CI/CD is still an open issue. This RECHARGE project proposes a novel framework for automating performance testing in CI/CD pipelines by leveraging static analysis and search-based algorithms.
RECHARGE will be based on three main pillars:
Automated Performance Monitoring
Combine CI/CD, regression testing optimization, and static analysis to monitor software performance over time in a scalable and efficient manner.Automated Performance Test Co-Generation
Integrate tests crafted by developers and AI to generate effective performance tests to find regressions over time.Automated Analysis of the Root Causes behind Performance Regressions
Extract and analyze the change patterns that lead to performance regressions. The obtained patterns will allow for analyzing the root causes behind performance regressions and finding novel solutions to prevent and fix them.
The research and development activities in RECHARGE will feature concrete use cases, including many open-source systems and an industrial case study featuring a partner involved in performance analysis.
Participating institutions
- Software Performance Engineering Laboratory
Department of Information Engineering, Computer Science and Mathematics
University of L’Aquila - Software and Knowledge Engineering Lab (STAKE)
Department of Biosciences and Territory
University of Molise - Department of Computer Science
University of Salerno
Funding
RECHARGE is funded by the Italian Government (Ministero dell’Università e della Ricerca, Bando PRIN 2022 PNRR: PE6 - Computer Science and Informatics), Decreto Direttoriale n. 1205 del 28-7-2023.
Open calls
The project is currently looking for a postdoctoral fellow.