Linee guida di scrittura | Linee guida di sviluppo | Tesi in corso | Tesi svolte

Prima di richiedere la tesi…

Prima di richiedere formalmente la tesi, assicuratevi di avere letto con attenzione questa pagina. Leggere con attenzione significa anche e soprattuto seguire gli hyperlink presenti nelle descrizione perché possiate approfondire gli argomenti di tesi.
Quando infine avrete qualcosa da discutere, contattate il responsabile del Collab, prof. Filippo Lanubile.

 

Tesi da assegnare – supervisionate da un ricercatore del Collab

AI-augmented software development

Generative AI for automatic labeling

Come scenario di applicazione ci interessiamo alla gestione degli issue (bug, enhancement, question), per il coordinamento di un progetto di sviluppo software, sia open che closed source.

In questo ambito, attualmente proponiamo le seguenti tesi :

  • Classificazione di Issue Reports tramite Few Shot Learning e Domain Adaptation
  • Analisi di drift nei dati di Issue Report di GitHub

Emotion detection in Software Engineering

Per garantire il successo di progetti software di successo è importante monitorare le emozioni a livello individuale e i team, poichè le emozioni negative possono rappresentare un ostacolo allo sviluppo collaborativo.

Nell’ambito di queste tematiche, l’attività di ricerca e le relative tesi vertono sui seguenti argomenti principali:

  • Riconoscimento di emozioni a partire dall’analisi dei sensori biometrici su dispositivi indossabili
  • Sentiment analysis delle interazioni tra sviluppatori mediate da piattaforme collaborative quali Stack Overflow, GitHub, Jira, ecc.

Engineering AI-enabled software systems

L’Intelligenza Artificiale (AI) è sempre più al centro dell’attenzione per le applicazioni innovative che è in grado di sostenere. Anche i sistemi software si arriccchiscono di funzionalità di AI e si aprono nuove sfide per sviluppare sistemi AI-enabled.

In tale ambito, proponiamo tesi di laurea sui seguenti argomenti principali per estendere Behaviz, un nostro prodotto di AI incentrato sui dati comportamentali, tra cui il riconoscimento delle emozioni da testi scritti.

  • Implementazione di un sistema di monitoraggio delle performance dei modelli, al fine di rilevare e gestire tempestivamente fenomeni di data/concept drift.
  • Adattamento architetturale del sistema per la gestione di richieste con input di grandi dimensioni (implementazione di una modalità bulk per la classificazione di frasi in batch).
  • Orchestrazione dei container di BehaViz tramite Kubernetes, al fine di ottimizzare la disponibilità, la robustezza e la scalabilità dell’architettura a microservizi.

Tesi da assegnare su progetti esterni

Un invito sempre valido è quello di partecipare attivamente a un progetto open source di vostro interesse. Questa è un’opportunità concreta per mettere alla prova e migliorare le vostre capacità, confrontandovi con altri sviluppatori di tutto il mondo. E’ importante che la scelta sia dettata dall’interesse in un’applicazione o una tecnologia, soprattutto se già ne conoscete limiti e pregi: questo renderebbe più semplice l’inizio della collaborazione (ciononostante, ogni vuoto è colmabile). L’applicazione con la quale “provare” la tecnologia potreste averla già individuata oppure potreste trovarla consultando una guida alla contribuzione a un progetto open source o l’analizzatore di progetti open source Open Hub. Quello che vi si chiede non è granchè diverso dall’iniziativa Google Summer of Code, in cui un manipolo di studenti valorosi sono ingaggiati per pochi mesi al fine di creare o estendere un progetto di open source software. Nel vostro caso il premio è la tesi di laurea.