polito.it
Politecnico di Torino (logo)

TESTING E INTEGRAZIONE DI UN SISTEMA SMART HOME PER LA GESTIONE DEGLI AVVISI DI PRIVACY DI DISPOSITIVI IOT = TESTING AND INTEGRATION FOR A SMART HOME SYSTEM FOR THE MANAGEMENT OF PRIVACY NOTICES OF IOT DEVICES

Marco Russo

TESTING E INTEGRAZIONE DI UN SISTEMA SMART HOME PER LA GESTIONE DEGLI AVVISI DI PRIVACY DI DISPOSITIVI IOT = TESTING AND INTEGRATION FOR A SMART HOME SYSTEM FOR THE MANAGEMENT OF PRIVACY NOTICES OF IOT DEVICES.

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

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

Download (2MB) | Preview
Abstract:

Il problema affrontato riguarda la realizzazione di un sistema Smart Home per la gestione degli avvisi di privacy di dispositivi IoT, sia da parte degli utenti finali che da parte di Data Protection Officers e Data Controllers. A questo fine è necessaria una piattaforma comune con funzionalità differenziate a seconda del ruolo dell’utente. Introducendomi all’interno del progetto con l’applicativo già sviluppato e funzionante, il mio contributo nei confronti del problema è stato quello di effettuare il testing e di realizzare il processo di Continuous Integration (CI). Nell’elaborato viene prima illustrato il contesto dell’applicativo da esaminare, la Privacy Dashboard. Si discute, quindi, delle vulnerabilità di privacy associate a sistemi IoT, in particolare di quelli legati ai servizi di domotica, tipicamente conosciuti come Smart Home. Segue una spiegazione del framework SIFIS-Home, all’interno della quale si inserisce la Privacy Dashboard, e della struttura implementativa della Privacy Dashboard stessa. Il testing dell’applicativo viene effettuato tramite test di unità, mirando a raggiungere una copertura del codice pari almeno al 60%. I test sono stati scritti con la metodologia White Box, includendo nella progettazione del test la struttura del codice da analizzare. Dove necessario vengono utilizzati degli oggetti mock, per emulare funzionalità di classi esterne a quella da esaminare. In alcuni punti in particolare, a causa della struttura della classe in esame, è stato necessario per l’utilizzo dei mock aggirare l’incapsulamento degli attributi (le limitazioni al loro accesso). Per la CI sono state implementate sia un flusso che genera una nuova versione dell’applicativo, sia un flusso che reagisce alle modifiche del codice testandolo e creando una immagine eseguibile. I test hanno rilevato pochi errori all’interno del codice, principalmente dovuti a variabili male assegnate o valori scambiati. Sono emersi, grazie ad ispezioni per correggere gli errori, anche problematiche di logica di implementazioni in alcuni metodi. Infine, il processo stesso di testing si è imbattuto in problemi di manutenibilità, che hanno causato l’elusione dell’incapsulamento.

Relatori: Luca Ardito, Luigi De Russis
Anno accademico: 2023/24
Tipo di pubblicazione: Elettronica
Numero di pagine: 59
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/29592
Modifica (riservato agli operatori) Modifica (riservato agli operatori)