Service Oriented Architecture (SOA) has been the leading paradigm for building large-scale systems through the reuse and composition of software services for decades. Choreographies are a powerful and flexible composition approach in which services are composed in a loosely coupled fashion and their interaction is performed without relying on a central entity. By amplifying the loose coupling, independence, and flexibility principles of SOA, Microservice Architecture (MSA) has gained growing interest from companies and researchers. MSA consists of a set of small, independent, and loosely coupled services that communicate through lightweight protocols. Microservices are easy to scale, maintain, and deploy. Attracted by the advantages of MSA, companies are migrating their legacy monolithic systems to microservices. In this setting, a series of problems arise. First, in choreography-based systems, the realization of the distributed coordination logic required to enforce the correct choreography realization requires automated support. The need for building dynamic and user-centered systems also calls for the realization of choreographies capable to adjust their behavior to the surrounding context and changing user preferences. Second, migrating monolithic systems to microservices is a complex, time-consuming, and error-prone task that needs the support of appropriate tools to assist software designers and programmers, from extracting a proper architecture to implementing novel microservices. Third, in choreographed microservice-based systems, proper support for the scalability of microservices needs to be considered alongside the need for coordination required by choreographies. The two functionalities must coexist while remaining functionally and architecturally independent. The work presented in this thesis aims at addressing the problems above by proposing (i) a solution for the realization and synthesis of context-aware choreographies, (ii) a fully-automated approach for the migration of monolithic systems into MSA, and (iii) an architectural style for microservice-oriented choreographies decoupling the coordination and load balancing capabilities of the system.

Automated composition of (micro)services and decomposition of monoliths / Filippone, Gianluca. - (2023 Jul 26).

Automated composition of (micro)services and decomposition of monoliths

FILIPPONE, GIANLUCA
2023-07-26

Abstract

Service Oriented Architecture (SOA) has been the leading paradigm for building large-scale systems through the reuse and composition of software services for decades. Choreographies are a powerful and flexible composition approach in which services are composed in a loosely coupled fashion and their interaction is performed without relying on a central entity. By amplifying the loose coupling, independence, and flexibility principles of SOA, Microservice Architecture (MSA) has gained growing interest from companies and researchers. MSA consists of a set of small, independent, and loosely coupled services that communicate through lightweight protocols. Microservices are easy to scale, maintain, and deploy. Attracted by the advantages of MSA, companies are migrating their legacy monolithic systems to microservices. In this setting, a series of problems arise. First, in choreography-based systems, the realization of the distributed coordination logic required to enforce the correct choreography realization requires automated support. The need for building dynamic and user-centered systems also calls for the realization of choreographies capable to adjust their behavior to the surrounding context and changing user preferences. Second, migrating monolithic systems to microservices is a complex, time-consuming, and error-prone task that needs the support of appropriate tools to assist software designers and programmers, from extracting a proper architecture to implementing novel microservices. Third, in choreographed microservice-based systems, proper support for the scalability of microservices needs to be considered alongside the need for coordination required by choreographies. The two functionalities must coexist while remaining functionally and architecturally independent. The work presented in this thesis aims at addressing the problems above by proposing (i) a solution for the realization and synthesis of context-aware choreographies, (ii) a fully-automated approach for the migration of monolithic systems into MSA, and (iii) an architectural style for microservice-oriented choreographies decoupling the coordination and load balancing capabilities of the system.
26-lug-2023
Automated composition of (micro)services and decomposition of monoliths / Filippone, Gianluca. - (2023 Jul 26).
File in questo prodotto:
File Dimensione Formato  
Gianluca Filippone PhD_Thesis.pdf

accesso aperto

Descrizione: Automated composition of (micro)services and decomposition of monoliths
Tipologia: Tesi di dottorato
Dimensione 17.2 MB
Formato Adobe PDF
17.2 MB Adobe PDF Visualizza/Apri
Pubblicazioni consigliate

I documenti in IRIS 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/11697/213780
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact