polito.it
Politecnico di Torino (logo)

FacultyApp: integrazione delle API per l’app mobile dei docenti del Politecnico di Torino = FacultyApp: Integration of APIs for the mobile app for the professors of Politecnico di Torino

Gerardo Maruotti

FacultyApp: integrazione delle API per l’app mobile dei docenti del Politecnico di Torino = FacultyApp: Integration of APIs for the mobile app for the professors of Politecnico di Torino.

Rel. Luigi De Russis. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2025

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

Download (4MB) | Preview
Abstract:

La presente tesi affronta il processo di riprogettazione dell’applicazione mobile dedicata ai docenti del Politecnico di Torino, con un focus specifico sull'architettura di integrazione dei servizi istituzionali tramite API. L'app esistente, sebbene pensata per supportare le attività accademiche del personale docente, presenta numerose criticità emerse nel tempo, tra cui un'interfaccia obsoleta, una scarsa usabilità percepita, una limitata integrazione con gli strumenti istituzionali e la mancanza di funzionalità considerate essenziali dagli utenti. Per definire i bisogni reali e progettare una soluzione efficace, è stata adottata una metodologia centrata sull’utente. Nella fase iniziale del progetto, svolta in collaborazione, è stato somministrato un questionario strutturato a un ampio campione di docenti. I 681 questionari validi hanno fornito indicazioni fondamentali per identificare e prioritizzare i requisiti funzionali e non funzionali dell'applicazione. A partire da questa solida base di requisiti, il presente lavoro di tesi si concentra sulla progettazione e l'implementazione dell'architettura API, elemento cardine per garantire la sostenibilità e l'evoluzione dell'applicazione. Il contributo principale risiede nella definizione di una specifica OpenAPI (versione 3.1.1) che funge da contratto formale tra i servizi di backend dell'Ateneo e l'applicazione mobile. Questo processo ha incluso la modellazione delle risorse e la definizione rigorosa degli endpoint. Per assicurare la coerenza ed evitare scostamenti tra la documentazione e l'implementazione, è stata introdotta una pipeline di Continuous Integration (CI) dedicata al bundling e alla validazione automatica della specifica OpenAPI. La seconda fase del lavoro ha riguardato l'integrazione di tale specifica all'interno del client frontend, sviluppato in React Native e TypeScript. È stata posta particolare attenzione alla definizione di un'architettura software robusta e manutenibile, implementando confini di modulo chiari (adapter) per la normalizzazione dei payload JSON e la gestione centralizzata degli stati applicativi (caricamento, errore, dati vuoti). Sono state inoltre adottate strategie di caching per ottimizzare le performance e limitare chiamate di rete ridondanti. Vengono infine documentati i flussi di integrazione relativi alle funzionalità prioritarie emerse dall'analisi, con particolare attenzione alla separazione dei domini di dati rispetto a quelli studenteschi. I principali contributi di questa tesi sono: (i) una specifica OpenAPI modulare, verificabile in CI e riutilizzabile; (ii) un client API tipizzato e disaccoppiato, derivato dalla specifica; (iii) linee guida per il versionamento e la gestione degli errori nello strato di integrazione.

Relatori: Luigi De Russis
Anno accademico: 2025/26
Tipo di pubblicazione: Elettronica
Numero di pagine: 67
Soggetti:
Corso di laurea: Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering)
Classe di laurea: Nuovo ordinamento > Laurea magistrale > LM-32 - INGEGNERIA INFORMATICA
Aziende collaboratrici: NON SPECIFICATO
URI: http://webthesis.biblio.polito.it/id/eprint/38641
Modifica (riservato agli operatori) Modifica (riservato agli operatori)