KEYWORD |
Progettazione e sviluppo di software basato su microservizi
Riferimenti LUCA ARDITO, MAURIZIO MORISIO
Riferimenti esterni COPPOLA RICCARDO
Gruppi di ricerca DAUIN - GR-16 - SOFTWARE ENGINEERING GROUP - SOFTENG
Tipo tesi SPERIMENTAZIONE E SVILUPPO
Descrizione L'architettura a microservizi è una moderna tipologia di sviluppo e deployment del software, che permette di incrementare significativamente la scalabilità e la flessibilità di sistemi web distribuiti tramite la suddivisione degli stessi in servizi piccoli e indipendenti che comunicano e cooperano. L'architettura si contrappone alla tradizionale metodologia di sviluppo "monolitica", che prevede l'inserimento di tutte le funzionalità di un applicativo all'interno di un singolo progetto software.
L'obiettivo della tesi è un'analisi delle principali tecnologie per lo sviluppo, il deployment, l'orchestrazione e il testing dei microservizi, e un paragone - dal punto di vista sia funzionale che non-funzionale - tra due varianti di una stessa applicazione, prima e dopo la transizione dal paradigma monolitico a quello basato su microservizi. Il candidato avrà il compito di analizzare i requisiti funzionali di un semplice applicativo web-based, effettuarne lo sviluppo tramite framework web secondo il paradigma monolitico, e in seguito effettuare il refactoring del progetto adottando una opportuna infrastruttura a microservizi e degli opportuni servizi di container.
Conoscenze richieste rudimenti dello sviluppo di applicazioni web, esperienza in programmazione Java. Gradita conoscenza di JavaScript ed esperienza con il software testing e con piattaforme di versioning (es., GitHub).
Scadenza validita proposta 28/10/2021
PROPONI LA TUA CANDIDATURA