Delivering efficient software systems is a pivotal requirement in today's software engineering landscape, with significant implications for financial revenues, market competitiveness, and user digital experience. Software Performance Engineering (SPE) provides a well-established set of practices for rigorous performance assurance throughout the entire software lifecycle, from early development to post-deployment. However, as system complexity continues to grow, this task becomes increasingly challenging. By leveraging large-scale data and advanced predictive models, AI-driven approaches have demonstrated their effectiveness in a variety of software engineering tasks, emerging as a promising opportunity to also enhance performance engineering practices. This thesis reports a set of contributions addressing the challenges that we have afforded in integrating artificial intelligence techniques to support software performance engineering in three crucial phases of the software life-cycle: development time, testing time and post-deployment maintenance effort. During software development, the code optimization task often requires a deep understanding of the code execution behavior at run-time. In this regard, we provide an in-depth investigation on the impact of introducing run-time execution information into language models for code optimization. Experiments with execution-aware versions of CodeT5+ show only limited gains over the standard model. While performance testing, achieving a reasonable trade-off between result quality and testing time is pivotal for realizing effective and practical tests. In that, we introduce an AI-based framework to dynamically detect the end of the Java warm-up phase. The method improves warm-up estimation accuracy, leading to better result quality or reduced testing time compared to existing techniques. After deployment, continuous monitoring is vital to sustain ongoing system performance and stability, typically requiring the analysis of time series data. Within this scope, we investigate the effectiveness of time series forecasting methods applied to software runtime metrics, under varying metric characteristics and forecasting horizons. More in general, time series analysis is widely employed across software testing and post-deployment activities, particularly to assess and improve software quality. In that, we present MALIAS, a meta-learning framework which leverages time series features to automatically select and run the best-performing algorithm for a given software time series, proving its effectiveness in three distinct tasks (i.e., forecasting of software telemetry data, anomaly detection, and steady-state detection in performance testing). As last contribution, we report a practical experience conducted in an industrial environment, showing how can AI-based approaches be successfully integrated for assisting the daily practice for regressions analysis of user digital experience.
AI-Driven Software Performance Engineering
DI MENNA, FEDERICO
2026
Abstract
Delivering efficient software systems is a pivotal requirement in today's software engineering landscape, with significant implications for financial revenues, market competitiveness, and user digital experience. Software Performance Engineering (SPE) provides a well-established set of practices for rigorous performance assurance throughout the entire software lifecycle, from early development to post-deployment. However, as system complexity continues to grow, this task becomes increasingly challenging. By leveraging large-scale data and advanced predictive models, AI-driven approaches have demonstrated their effectiveness in a variety of software engineering tasks, emerging as a promising opportunity to also enhance performance engineering practices. This thesis reports a set of contributions addressing the challenges that we have afforded in integrating artificial intelligence techniques to support software performance engineering in three crucial phases of the software life-cycle: development time, testing time and post-deployment maintenance effort. During software development, the code optimization task often requires a deep understanding of the code execution behavior at run-time. In this regard, we provide an in-depth investigation on the impact of introducing run-time execution information into language models for code optimization. Experiments with execution-aware versions of CodeT5+ show only limited gains over the standard model. While performance testing, achieving a reasonable trade-off between result quality and testing time is pivotal for realizing effective and practical tests. In that, we introduce an AI-based framework to dynamically detect the end of the Java warm-up phase. The method improves warm-up estimation accuracy, leading to better result quality or reduced testing time compared to existing techniques. After deployment, continuous monitoring is vital to sustain ongoing system performance and stability, typically requiring the analysis of time series data. Within this scope, we investigate the effectiveness of time series forecasting methods applied to software runtime metrics, under varying metric characteristics and forecasting horizons. More in general, time series analysis is widely employed across software testing and post-deployment activities, particularly to assess and improve software quality. In that, we present MALIAS, a meta-learning framework which leverages time series features to automatically select and run the best-performing algorithm for a given software time series, proving its effectiveness in three distinct tasks (i.e., forecasting of software telemetry data, anomaly detection, and steady-state detection in performance testing). As last contribution, we report a practical experience conducted in an industrial environment, showing how can AI-based approaches be successfully integrated for assisting the daily practice for regressions analysis of user digital experience.| File | Dimensione | Formato | |
|---|---|---|---|
|
PhD_Thesis_DiMenna.pdf
accesso aperto
Licenza:
Tutti i diritti riservati
Dimensione
6.23 MB
Formato
Adobe PDF
|
6.23 MB | Adobe PDF | Visualizza/Apri |
|
PhD_Thesis_DiMenna_1.pdf
accesso aperto
Licenza:
Tutti i diritti riservati
Dimensione
6.23 MB
Formato
Adobe PDF
|
6.23 MB | Adobe PDF | Visualizza/Apri |
I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/20.500.14242/373534
URN:NBN:IT:UNIVAQ-373534