polito.it
Politecnico di Torino (logo)

Creazione e test di un sistema di raccomandazione in un servizio web basato su microservizi = Creation and testing of a recommender system within a web service based on microservices

Renato Di Lorenzo

Creazione e test di un sistema di raccomandazione in un servizio web basato su microservizi = Creation and testing of a recommender system within a web service based on microservices.

Rel. Luca Ardito, Maurizio Morisio. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2021

[img]
Preview
PDF (Tesi_di_laurea) - Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives.

Download (1MB) | Preview
Abstract:

Il progetto DME, Digital Management of Events, nasce con lo scopo di realizzare una piattaforma digitale per l’organizzazione di eventi di vario tipo (matrimoni, compleanni, conferenze, concerti, etc.). Realizzato con la collaborazione del Politecnico di Torino, dell’Università degli Studi di Bari e dell’azienda Linear System, il progetto è finanziato dalla Regione Puglia ed ha come obiettivo iniziale l'ingresso nel mercato dell’organizzazione di eventi regionale, per poi espandersi sia nel territorio nazionale, che europeo. La piattaforma DME si propone di superare le limitazioni di prodotti esistenti, fornendo un unico strumento in grado di coinvolgere tutti gli stakeholder del processo di organizzazione degli eventi, dai fornitori agli utenti finali. Nei primi mesi di progettazione sono stati sviluppati due macro moduli: Front End e Back End. La piattaforma si basa su un’architettura a microservizi, e sull’utilizzo di altre tecnologie innovative come distributed ledger per smart contract. Nel contesto sopra descritto, l'obiettivo del presente lavoro di tesi è lo sviluppo di un microservizio recommender system da integrare nell'architettura DME esistente. Tale microservizio ha lo scopo di fornire agli utenti suggerimenti sui fornitori di servizi a cui rivolgersi in fase di organizzazione di un evento, nell’ottica di offrire un’esperienza personalizzata. I suggerimenti sono basati sulle valutazioni espresse da utenti con gusti simili (Collaborative Filtering), nonché sui criteri di selezione espressi dall'utente. Il microservizio si interfaccia con i servizi di back end DME esistenti, al fine di reperire le valutazioni degli utenti e per le funzionalità di autenticazione e autorizzazione, attraverso API REST. L’uso di un’architettura a microservizi consente la scelta autonoma e indipendente di linguaggi e tecnologie per ciascun modulo dell’applicazione. L'implementazione è realizzata in Java, attraverso il framework Spring Boot e l'utilizzo di un database a grafo Neo4j. L’algoritmo di Collaborative Filtering utilizzato appartiene alla famiglia denominata Slope One. Il microservizio offre una API REST per consentirne l'interrogazione da parte del front end o di altri servizi back end. Il risultato ottenuto rappresenta una base di partenza che può essere ulteriormente migliorata, attraverso l’uso di algoritmi più complessi e tecniche di Machine Learning. Ciò sarà reso più semplice grazie alla flessibilità offerta dall’utilizzo di un’architettura a microservizi, che rende più agile lo sviluppo indipendente di moduli separati.

Relators: Luca Ardito, Maurizio Morisio
Academic year: 2021/22
Publication type: Electronic
Number of Pages: 73
Subjects:
Corso di laurea: Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering)
Classe di laurea: New organization > Master science > LM-32 - COMPUTER SYSTEMS ENGINEERING
Aziende collaboratrici: UNSPECIFIED
URI: http://webthesis.biblio.polito.it/id/eprint/21243
Modify record (reserved for operators) Modify record (reserved for operators)