The increasing complexity of modern software systems leads to the problem of finding an effective approach to automate their management process. Self-Adaptive Systems (SASs) solve this problem by autonomously adapting themselves in order to achieve high-level user-defined goals. However, SASs are usually challenging and expensive to develop, both in terms of time and resources. The goal of our work is to find a better trade-off between development costs and effectiveness of a SAS, by providing a managing subsystem to be reused with different service-based systems (SBSs). To address this problem, we developed an extensible software framework called RAMSES, a Reusable Autonomic Manager for microServicES. The goal of RAMSES is to enforce the satisfaction of user-defined QoS specifications for the target SBS at runtime, while improving its overall performance. Our work also includes a standalone microservice-based application – SEFA – that serves as a managed subsystem, providing the scientific community with a fully-implemented SAS exemplar, which comprises two reusable and independent subsystems.

La crescente complessità dei moderni sistemi software solleva il problema di trovare un approccio efficace per automatizzare la gestione di tali sistemi. I sistemi Self-Adaptive (SAS) risolvono questo problema adattandosi autonomamente per raggiungere obiettivi di alto livello definiti dall’utente. Tuttavia, i SAS sono solitamente impegnativi e costosi da sviluppare, sia in termini di tempo che di risorse. Il nostro lavoro mira a trovare un miglior compromesso tra costi di sviluppo ed efficacia dei SAS, fornendo un managing system riutilizzabile con diversi sistemi service-based (SBS). Per affrontare il problema, abbiamo sviluppato RAMSES (Reusable Autonomic Manager for microServicES), un framework software estendibile e riutilizzabile. Il suo obiettivo è garantire che il SBS da adattare soddisfi le specifiche di Quality-of-Service (QoS) richieste dall’utente, e allo stesso tempo migliorare le performance di tale sistema. Includiamo inoltre un’applicazione a microservizi – SEFA – usata come managed subsystem, fornendo alla comunità scientifica un exemplar di SAS completamente implementato, che include due sottosistemi indipendenti e riutilizzabili per vari scopi.

Engineering microservice-based Self-Adaptive Systems: the case of RAMSES

Sorrentino, Giancarlo;RICCIO, VINCENZO
2021/2022

Abstract

The increasing complexity of modern software systems leads to the problem of finding an effective approach to automate their management process. Self-Adaptive Systems (SASs) solve this problem by autonomously adapting themselves in order to achieve high-level user-defined goals. However, SASs are usually challenging and expensive to develop, both in terms of time and resources. The goal of our work is to find a better trade-off between development costs and effectiveness of a SAS, by providing a managing subsystem to be reused with different service-based systems (SBSs). To address this problem, we developed an extensible software framework called RAMSES, a Reusable Autonomic Manager for microServicES. The goal of RAMSES is to enforce the satisfaction of user-defined QoS specifications for the target SBS at runtime, while improving its overall performance. Our work also includes a standalone microservice-based application – SEFA – that serves as a managed subsystem, providing the scientific community with a fully-implemented SAS exemplar, which comprises two reusable and independent subsystems.
CAMILLI, MATTEO
ING - Scuola di Ingegneria Industriale e dell'Informazione
20-dic-2022
2021/2022
La crescente complessità dei moderni sistemi software solleva il problema di trovare un approccio efficace per automatizzare la gestione di tali sistemi. I sistemi Self-Adaptive (SAS) risolvono questo problema adattandosi autonomamente per raggiungere obiettivi di alto livello definiti dall’utente. Tuttavia, i SAS sono solitamente impegnativi e costosi da sviluppare, sia in termini di tempo che di risorse. Il nostro lavoro mira a trovare un miglior compromesso tra costi di sviluppo ed efficacia dei SAS, fornendo un managing system riutilizzabile con diversi sistemi service-based (SBS). Per affrontare il problema, abbiamo sviluppato RAMSES (Reusable Autonomic Manager for microServicES), un framework software estendibile e riutilizzabile. Il suo obiettivo è garantire che il SBS da adattare soddisfi le specifiche di Quality-of-Service (QoS) richieste dall’utente, e allo stesso tempo migliorare le performance di tale sistema. Includiamo inoltre un’applicazione a microservizi – SEFA – usata come managed subsystem, fornendo alla comunità scientifica un exemplar di SAS completamente implementato, che include due sottosistemi indipendenti e riutilizzabili per vari scopi.
File allegati
File Dimensione Formato  
2022_12_Riccio_Sorrentino_01.pdf

accessibile in internet per tutti

Descrizione: Tesi
Dimensione 10.51 MB
Formato Adobe PDF
10.51 MB Adobe PDF Visualizza/Apri
2022_12_Riccio_Sorrentino_02.pdf

accessibile in internet per tutti

Descrizione: Executive summary
Dimensione 1.21 MB
Formato Adobe PDF
1.21 MB Adobe PDF Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/201357