Design e Implementazione di un Sistema di Raccomandazione per Trainees nella Cyber Education
View/ Open
Author
Testore, Samuele <2002>
Date
2025-07-28Data available
2025-07-31Abstract
Questa tesi presenta il design e l’implementazione di un sistema di raccomandazione personalizzato per la formazione in cybersecurity. Lo scopo di questo sistema è di personalizzare la formazione di trainee nell’abiente della sicurezza informatica. I trainee sono professionisti in cybersecurity che intraprendono un percorso di formazione, le cui esigenze formative sono estramamente diverse a seconda della loro specializzazione.
Il sistema adotta un approccio duale alla raccomandazione: il primo livello ("Score-Based Filtering", basato sulle carenze, analizza le valutazioni passate dei trainee per identificare le unità formative affrontate con difficoltà e sulla base di queste proporne nuove; il secondo livello ("Skill Priority Ranking"), basato sulle priorità di un trainee, analizza le performance dei trainee e assegna delle priorità di allenamento, successivamente verrano proposte percorsi formativi in base alle priorità calcolate.
L'architettura del sistema è basata su microservizi, concepita per ricreare il contesto del progetto europeo ACTING. Si compone di: due "Data Retrievers" che, per necessità progettuali, simulano fornitori esterni di dati sulla composizione dei percorsi formativi (servizi e unità didattiche) e lo storico delle valutazioni dei trainee. Un "Trainee Recommender", il microservizio centrale che implementa tutta la logica di raccomandazione e di ranking
Le tecnologie principali utilizzate includono Python, con il framework FastAPI per la creazione delle API RESTful, ovvero i microservizi, e la libreria Pydantic per la validazione automatica dei dati in ingresso. Per l'esecuzione delle API è stato scelto Uvicorn. Sono state inoltre implementate due interfacce utente (UI) per visualizzare i risultati delle raccomandazioni base e avanzate con ranking. This thesis presents the design and implementation of a personalized recommendation system for cybersecurity training. The purpose of this system is to customize the training of trainees in the field of cybersecurity. Trainees are cybersecurity professionals undergoing a training program, whose educational needs are extremely diverse depending on their specialization.
The system adopts a dual approach to recommendations: the first level ("Score-Based Filtering"), based on deficiencies, analyzes the trainees' past evaluations to identify the training units they struggled with and, based on these, suggests new ones; the second level ("Skill Priority Ranking"), based on a trainee's priorities, analyzes the trainees' performance and assigns training priorities, subsequently proposing training paths based on the calculated priorities.
The system's architecture is based on microservices, designed to replicate the context of the European ACTING project. It consists of: two "Data Retrievers" that, for design purposes, simulate external data providers for the composition of training paths (services and training units) and the trainees' evaluation history. A "Trainee Recommender," the central microservice, implements all the recommendation and ranking logic.
The main technologies used include Python, with the FastAPI framework for creating RESTful APIs (i.e., the microservices), and the Pydantic library for automatic validation of input data. Uvicorn was chosen for API execution. Additionally, two user interfaces (UIs) were implemented to display the results of basic and advanced recommendations with ranking.
Type
info:eu-repo/semantics/bachelorThesisCollections
- Laurea Triennale [3218]