Tesi etd-07102026-091434 |
Link copiato negli appunti
Tipo di tesi
Tesi di laurea magistrale
URN
etd-07102026-091434
Titolo
Crowd-Based Requirements Engineering Using Keyword Graphs, Clustering, and Large Language Models
Dipartimento
INFORMATICA
Corso di studi
INFORMATICA
Relatori
.
relatore Semini, Laura
Parole chiave
- clustering
- crowd
- graph
- keyword
- llm
- node2vec
Data inizio appello
15/10/2026
Consultabilità
Completa
Riassunto (Inglese)
Riassunto (Italiano)
Negli ultimi anni la raccolta dei requisiti software ha subito una trasformazione profonda: accanto alle tecniche tradizionali di elicitazione, basate su interviste condotte da analisti con un numero ristretto di stakeholder selezionati, si è affermato il paradigma del Crowd-based Requirements Engineering (CrowdRE), in cui i requisiti vengono raccolti attraverso la partecipazione su larga scala degli utenti. Recensioni negli store delle applicazioni, forum, moduli di feedback e campagne di raccolta distribuite producono raccolte ampie di requisiti espressi in linguaggio naturale da contributori eterogenei per background, lessico e livello di dettaglio. Questa ricchezza ha però un costo: le raccolte crowd contengono sistematicamente duplicati (lo stesso bisogno espresso con parole diverse), conflitti (requisiti mutuamente incompatibili) e formulazioni ambigue o incomplete, e il loro volume rende impraticabile una revisione interamente manuale da parte dell'analista.
La tesi affronta questo problema proponendo e realizzando una pipeline automatica in quattro fasi che organizza tematicamente una raccolta di requisiti crowd-based e ne ispeziona la qualità, fornendo all'analista un rapporto strutturato di supporto alla revisione. L'idea centrale dell'approccio è non raggruppare direttamente i requisiti, ma passare attraverso una rappresentazione intermedia: un grafo di similarità semantica costruito sulle parole chiave estratte dai requisiti stessi.
Nella prima fase, da ciascun requisito vengono estratte le keyword che ne condensano il contenuto concettuale. Sono supportati e confrontati due backend alternativi: un estrattore basato su embedding semantici (KeyBERT, con un modello multilingue della famiglia BERT) e un estrattore basato su Large Language Model (Gemini), istruito tramite un prompt orientato alla canonicalizzazione dei concetti, così che requisiti che esprimono lo stesso bisogno ricevano la stessa keyword. Nella seconda fase, le keyword estratte dall'intera raccolta diventano i nodi di un grafo non orientato: due keyword sono collegate quando la similarità del coseno tra i loro embedding supera una soglia configurabile, e ogni nodo conserva il riferimento ai requisiti da cui proviene. Il grafo codifica così due relazioni complementari: la prossimità semantica tra concetti e la loro co-occorrenza nei requisiti. Nella terza fase il grafo viene partizionato: gli embedding strutturali dei nodi, calcolati con Node2Vec, vengono arricchiti con l'informazione di appartenenza ai requisiti (ridotta di dimensione tramite decomposizione ai valori singolari) e raggruppati con K-Means, stimando il numero ottimale di cluster con il metodo del gomito; un meccanismo di voto di maggioranza riporta infine la partizione delle keyword a una partizione dei requisiti. Nella quarta fase, ciascun cluster di requisiti viene sottoposto in isolamento a un Large Language Model (Gemini 2.5 Pro), che produce per ogni gruppo un rapporto strutturato con cinque categorie di rilievi: duplicati semantici, incoerenze logiche, ambiguità, lacune e dipendenze tra requisiti, oltre a un'etichetta tematica e a un punteggio di coerenza del raggruppamento.
L'intera pipeline è progettata secondo principi di modularità (ogni fase produce artefatti ispezionabili in formati aperti, tra cui un grafo esplorabile visivamente in Gephi), configurabilità (tutti i parametri sono esposti in profili di configurazione per dataset) e riproducibilità (le componenti stocastiche sono governate da semi deterministici).
La valutazione sperimentale è condotta su due dataset. Il primo è Uniwhere, un dataset CrowdRE reale fornito dalla relatrice. Il secondo è un caso di studio costruito ad hoc nel dominio Vehicle-to-Infrastructure (V2I): una raccolta di requisiti in italiano su sistemi di comunicazione tra veicoli e infrastrutture intelligenti (semafori adattivi, sensori stradali, parcheggi smart, pedaggio automatico), raccolti in modalità crowd da più partecipanti tramite un modulo di elicitazione distribuito appositamente per la tesi. Su entrambi i dataset l'approccio graph-based viene confrontato con una baseline di clustering diretto — il partizionamento degli embedding delle frasi integrali dei requisiti, a parità di modello di embedding e di numero di cluster — utilizzando metriche invarianti rispetto alla permutazione delle etichette (Adjusted Rand Index e Normalized Mutual Information), e la qualità dell'analisi LLM viene esaminata attraverso casi di studio sui rilievi prodotti.
La tesi affronta questo problema proponendo e realizzando una pipeline automatica in quattro fasi che organizza tematicamente una raccolta di requisiti crowd-based e ne ispeziona la qualità, fornendo all'analista un rapporto strutturato di supporto alla revisione. L'idea centrale dell'approccio è non raggruppare direttamente i requisiti, ma passare attraverso una rappresentazione intermedia: un grafo di similarità semantica costruito sulle parole chiave estratte dai requisiti stessi.
Nella prima fase, da ciascun requisito vengono estratte le keyword che ne condensano il contenuto concettuale. Sono supportati e confrontati due backend alternativi: un estrattore basato su embedding semantici (KeyBERT, con un modello multilingue della famiglia BERT) e un estrattore basato su Large Language Model (Gemini), istruito tramite un prompt orientato alla canonicalizzazione dei concetti, così che requisiti che esprimono lo stesso bisogno ricevano la stessa keyword. Nella seconda fase, le keyword estratte dall'intera raccolta diventano i nodi di un grafo non orientato: due keyword sono collegate quando la similarità del coseno tra i loro embedding supera una soglia configurabile, e ogni nodo conserva il riferimento ai requisiti da cui proviene. Il grafo codifica così due relazioni complementari: la prossimità semantica tra concetti e la loro co-occorrenza nei requisiti. Nella terza fase il grafo viene partizionato: gli embedding strutturali dei nodi, calcolati con Node2Vec, vengono arricchiti con l'informazione di appartenenza ai requisiti (ridotta di dimensione tramite decomposizione ai valori singolari) e raggruppati con K-Means, stimando il numero ottimale di cluster con il metodo del gomito; un meccanismo di voto di maggioranza riporta infine la partizione delle keyword a una partizione dei requisiti. Nella quarta fase, ciascun cluster di requisiti viene sottoposto in isolamento a un Large Language Model (Gemini 2.5 Pro), che produce per ogni gruppo un rapporto strutturato con cinque categorie di rilievi: duplicati semantici, incoerenze logiche, ambiguità, lacune e dipendenze tra requisiti, oltre a un'etichetta tematica e a un punteggio di coerenza del raggruppamento.
L'intera pipeline è progettata secondo principi di modularità (ogni fase produce artefatti ispezionabili in formati aperti, tra cui un grafo esplorabile visivamente in Gephi), configurabilità (tutti i parametri sono esposti in profili di configurazione per dataset) e riproducibilità (le componenti stocastiche sono governate da semi deterministici).
La valutazione sperimentale è condotta su due dataset. Il primo è Uniwhere, un dataset CrowdRE reale fornito dalla relatrice. Il secondo è un caso di studio costruito ad hoc nel dominio Vehicle-to-Infrastructure (V2I): una raccolta di requisiti in italiano su sistemi di comunicazione tra veicoli e infrastrutture intelligenti (semafori adattivi, sensori stradali, parcheggi smart, pedaggio automatico), raccolti in modalità crowd da più partecipanti tramite un modulo di elicitazione distribuito appositamente per la tesi. Su entrambi i dataset l'approccio graph-based viene confrontato con una baseline di clustering diretto — il partizionamento degli embedding delle frasi integrali dei requisiti, a parità di modello di embedding e di numero di cluster — utilizzando metriche invarianti rispetto alla permutazione delle etichette (Adjusted Rand Index e Normalized Mutual Information), e la qualità dell'analisi LLM viene esaminata attraverso casi di studio sui rilievi prodotti.
File
| Nome file | Dimensione |
|---|---|
| Tesi_Mag..._ETD_.pdf | 1.62 Mb |
Contatta l’autore |
|