Nowadays, the speed of technology improvements in computing devices is very fast. The functionality and ease that using these different devices bring to us has influenced the way we are living and enabled us to benefit from them carrying out various daily tasks. But despite the improvements that have occurred in the field of mobile technology and the connection protocols, the current situation as regards multiple- device interaction techniques is still far behind what it could be, and these computing devices are still mostly working in isolation. Current multi-device interaction solutions enable the user to continue a task on another device, but their dependency on a specific set of devices and software artifacts (applications) on these devices limits their usage and forces the user to act as a bridge between the devices. This entails the user having to perform some preliminary and time-consuming steps to configure the next device on which to resume the task. While benefiting from the direct interaction between the multiple proximal devices, the user can interchangeably benefit from them in the execution of the different parts of the task he desires to carry out, exploiting the maximum potential that exists in these devices, to achieve better results and more user satisfaction. This dissertation covers the motivation, design, and development of a novel paradigm to support multiple-device direct interaction through distributing the Android execution. The proposed solution to support this novel paradigm is a middleware infrastructure that will manage the direct interaction between a dynamic set of proximal devices to let the user seamlessly distribute the execution of a task between them, while also enhancing the process of the interaction and integration of these devices. The proposed middleware, which is called LIQDROID, will distribute the Android operating system between a set of proximal Android devices to create a bigger Android ecosystem. The proposed ecosystem transforms the current pattern of single-user single-device to a fully cooperative environment that will empower a user to start a task on his device and be able to interchangeably and collaboratively benefit from the potential that exists on the proximal devices or other users during its execution and reach his final goal with better results. More technically speaking, LIQDROID is an Android service which benefits from the features available within the Android framework to solve the challenges that already exist in multiple-device interaction to manage the execution of a distributed task, such as finding the best capable proximal Android device to perform a task, and synchronizing the state of the integrated devices and the data management. This will provide the required framework for developers to easily be able to distribute the execution of a task on proximal devices and be relieved of the underlying complexities, and instead put their focus on designing and developing more innovative distributed applications. A stable prototype of LIQDROID has already been implemented in Java, which is the main language of developing Android applications, and is ready to use. Also, a set of use case scenarios has been designed and considered in this thesis, based on the needs of real case scenarios. The developed versions of these use case scenarios in the shape of LIQDROID-compatible applications, along with LIQDROID, was tested on real devices to better evaluate and explore their strengths and weaknesses. The results were satisfying and also helped to apply the required changes in LIQDROID to improve it. These experiments have shown that LIQDROID introduces an innovative way of interacting between multiple proximal Android devices, which has the potential to introduce new and even more comprehensive features in the way of direct interaction between multiple proximal devices.

Oggigiorno, la velocità dei miglioramenti tecnologici dei dispositivi di elaborazione dati è molto rapida. L'impatto, in termini di funzionalità e agiatezza, derivante da questi dispositivi ha influenzato il modo in cui viviamo, aiutandoci a realizzare diverse attività quotidiane. Nonostante i miglioramenti nel campo della tecnologia mobile e dei protocolli di connessione l'attuale situazione che riguarda le tecniche di interazione tra diversi dispositivi è lontana da ciò che potrebbe essere, e molti dispositivi funzionano in maniera del tutto isolata. Le soluzioni che attualmente consentono l'interazione tra diversi dispositivi permettono all'utente di continuare un'attività su un altro dispositivo, ma la loro dipendenza ad uno specifico set di dispositivi e artefatti software (applicazioni) limita il loro utilizzo e costringe l'utente ad agire da connessione tra i dispositivi. Questo comporta all'utente la necessità di performare alcuni step preliminari che richiedono tempo per la configurazione del dispositivo successivo su cui continuare l'attività. Diversamente, beneficiando dall' interazione diretta tra dispositivi prossimali, l'utente può beneficiarne e utilizzarli in modo del tutto intercambiabile eseguendo parte delle attività, che vuole portare a termine, sfruttando il massimo potenziale che esiste in questi dispositivi, così da raggiungere risultati migliori e una maggiore soddisfazione utente. Questa tesi spiega la motivazione, la progettazione e lo sviluppo di un nuovo paradigma che supporta l'interazione diretta tra diversi dispositivi distribuendone l'esecuzione Android. La soluzione proposta che supporta questo nuovo paradigma è un'infrastruttura middleware che gestisce l'interazione diretta tra un set dinamico di dispositivi prossimali, lasciando l'utente ininterrottamente distribuire l'esecuzione di un'attività tra gli stessi, migliorando il processo di interazione e di integrazione di questi dispositivi. Il middleware proposto, chiamato LIQDROID distribuisce il sistema operativo Android tra un set di dispositivi Android prossimali per creare un ecosistema Android più grande. L'ecosistema proposto trasforma l'attuale percorso singolo-utente singolo-dispositivo in un ambiente completamente cooperativo che permette all'utente di iniziare un'attività sul suo dispositivo ed essere in grado in modo intercambiabile e collaborativo di beneficiare dal potenziale che esiste sui dispositivi prossimali o di altri utenti durante la sua esecuzione e raggiungere il suo obiettivo finale con risultati migliori. Tecnicamente parlando, LIQDROID è un servizio Android che beneficia delle caratteristiche disponibili all'interno del framework Android per risolvere le sfide che esistono nell'interazione tra diversi dispositivi per gestire l'esecuzione di un'attività distribuita, come trovare il più idoneo dispositivo Android prossimale per eseguire un'attività e sincronizzare lo stato dei dispositivi integrati e la gestione dei dati. Questo fornirà un framework adeguato agli sviluppatori  a distribuire facilmente l'esecuzione di un'attività su dispositivi prossimali allegerendoli dell'implicita complessità; e a porre l'accento sulla progettazione e lo sviluppo di applicazioni distribuite più innovative. Uno stabile prototipo di LIQDROID è stato implementato in Java, il linguaggio principale per lo sviluppo di applicazioni Android, ed è pronto per l'uso. Inoltre, un set di scenari di casi d'uso è stato progettato e considerato in questa tesi, basato sui bisogni di casi reali. Le versioni sviluppate di questi scenari nella forma di applicazioni LIQDROID-compatibili, insieme a LIQDROID, è stata testata su dispositivi esistenti per esplorare e valutare meglio i loro punti di forza e di debolezza. I risultati sono stati soddisfacenti e hanno aiutato ad applicare i cambiamenti necessari al miglioramento di LIQDROID. Questi esperimenti hanno mostrato che LIQDROID introduce un modo innovativo di interagire tra diversi dispositivi Android prossimali, che ha il potenziale di introdurre a sua volta nuove e ancor più inclusive caratteristiche nella direzione dell'interazione diretta tra diversi dispositivi prossimali.

LiqDroid: a middleware for direct interaction between multiple proximal android devices

IMANI, ANITA

Abstract

Nowadays, the speed of technology improvements in computing devices is very fast. The functionality and ease that using these different devices bring to us has influenced the way we are living and enabled us to benefit from them carrying out various daily tasks. But despite the improvements that have occurred in the field of mobile technology and the connection protocols, the current situation as regards multiple- device interaction techniques is still far behind what it could be, and these computing devices are still mostly working in isolation. Current multi-device interaction solutions enable the user to continue a task on another device, but their dependency on a specific set of devices and software artifacts (applications) on these devices limits their usage and forces the user to act as a bridge between the devices. This entails the user having to perform some preliminary and time-consuming steps to configure the next device on which to resume the task. While benefiting from the direct interaction between the multiple proximal devices, the user can interchangeably benefit from them in the execution of the different parts of the task he desires to carry out, exploiting the maximum potential that exists in these devices, to achieve better results and more user satisfaction. This dissertation covers the motivation, design, and development of a novel paradigm to support multiple-device direct interaction through distributing the Android execution. The proposed solution to support this novel paradigm is a middleware infrastructure that will manage the direct interaction between a dynamic set of proximal devices to let the user seamlessly distribute the execution of a task between them, while also enhancing the process of the interaction and integration of these devices. The proposed middleware, which is called LIQDROID, will distribute the Android operating system between a set of proximal Android devices to create a bigger Android ecosystem. The proposed ecosystem transforms the current pattern of single-user single-device to a fully cooperative environment that will empower a user to start a task on his device and be able to interchangeably and collaboratively benefit from the potential that exists on the proximal devices or other users during its execution and reach his final goal with better results. More technically speaking, LIQDROID is an Android service which benefits from the features available within the Android framework to solve the challenges that already exist in multiple-device interaction to manage the execution of a distributed task, such as finding the best capable proximal Android device to perform a task, and synchronizing the state of the integrated devices and the data management. This will provide the required framework for developers to easily be able to distribute the execution of a task on proximal devices and be relieved of the underlying complexities, and instead put their focus on designing and developing more innovative distributed applications. A stable prototype of LIQDROID has already been implemented in Java, which is the main language of developing Android applications, and is ready to use. Also, a set of use case scenarios has been designed and considered in this thesis, based on the needs of real case scenarios. The developed versions of these use case scenarios in the shape of LIQDROID-compatible applications, along with LIQDROID, was tested on real devices to better evaluate and explore their strengths and weaknesses. The results were satisfying and also helped to apply the required changes in LIQDROID to improve it. These experiments have shown that LIQDROID introduces an innovative way of interacting between multiple proximal Android devices, which has the potential to introduce new and even more comprehensive features in the way of direct interaction between multiple proximal devices.
BONARINI, ANDREA
GHEZZI, CARLO
26-giu-2018
Oggigiorno, la velocità dei miglioramenti tecnologici dei dispositivi di elaborazione dati è molto rapida. L'impatto, in termini di funzionalità e agiatezza, derivante da questi dispositivi ha influenzato il modo in cui viviamo, aiutandoci a realizzare diverse attività quotidiane. Nonostante i miglioramenti nel campo della tecnologia mobile e dei protocolli di connessione l'attuale situazione che riguarda le tecniche di interazione tra diversi dispositivi è lontana da ciò che potrebbe essere, e molti dispositivi funzionano in maniera del tutto isolata. Le soluzioni che attualmente consentono l'interazione tra diversi dispositivi permettono all'utente di continuare un'attività su un altro dispositivo, ma la loro dipendenza ad uno specifico set di dispositivi e artefatti software (applicazioni) limita il loro utilizzo e costringe l'utente ad agire da connessione tra i dispositivi. Questo comporta all'utente la necessità di performare alcuni step preliminari che richiedono tempo per la configurazione del dispositivo successivo su cui continuare l'attività. Diversamente, beneficiando dall' interazione diretta tra dispositivi prossimali, l'utente può beneficiarne e utilizzarli in modo del tutto intercambiabile eseguendo parte delle attività, che vuole portare a termine, sfruttando il massimo potenziale che esiste in questi dispositivi, così da raggiungere risultati migliori e una maggiore soddisfazione utente. Questa tesi spiega la motivazione, la progettazione e lo sviluppo di un nuovo paradigma che supporta l'interazione diretta tra diversi dispositivi distribuendone l'esecuzione Android. La soluzione proposta che supporta questo nuovo paradigma è un'infrastruttura middleware che gestisce l'interazione diretta tra un set dinamico di dispositivi prossimali, lasciando l'utente ininterrottamente distribuire l'esecuzione di un'attività tra gli stessi, migliorando il processo di interazione e di integrazione di questi dispositivi. Il middleware proposto, chiamato LIQDROID distribuisce il sistema operativo Android tra un set di dispositivi Android prossimali per creare un ecosistema Android più grande. L'ecosistema proposto trasforma l'attuale percorso singolo-utente singolo-dispositivo in un ambiente completamente cooperativo che permette all'utente di iniziare un'attività sul suo dispositivo ed essere in grado in modo intercambiabile e collaborativo di beneficiare dal potenziale che esiste sui dispositivi prossimali o di altri utenti durante la sua esecuzione e raggiungere il suo obiettivo finale con risultati migliori. Tecnicamente parlando, LIQDROID è un servizio Android che beneficia delle caratteristiche disponibili all'interno del framework Android per risolvere le sfide che esistono nell'interazione tra diversi dispositivi per gestire l'esecuzione di un'attività distribuita, come trovare il più idoneo dispositivo Android prossimale per eseguire un'attività e sincronizzare lo stato dei dispositivi integrati e la gestione dei dati. Questo fornirà un framework adeguato agli sviluppatori  a distribuire facilmente l'esecuzione di un'attività su dispositivi prossimali allegerendoli dell'implicita complessità; e a porre l'accento sulla progettazione e lo sviluppo di applicazioni distribuite più innovative. Uno stabile prototipo di LIQDROID è stato implementato in Java, il linguaggio principale per lo sviluppo di applicazioni Android, ed è pronto per l'uso. Inoltre, un set di scenari di casi d'uso è stato progettato e considerato in questa tesi, basato sui bisogni di casi reali. Le versioni sviluppate di questi scenari nella forma di applicazioni LIQDROID-compatibili, insieme a LIQDROID, è stata testata su dispositivi esistenti per esplorare e valutare meglio i loro punti di forza e di debolezza. I risultati sono stati soddisfacenti e hanno aiutato ad applicare i cambiamenti necessari al miglioramento di LIQDROID. Questi esperimenti hanno mostrato che LIQDROID introduce un modo innovativo di interagire tra diversi dispositivi Android prossimali, che ha il potenziale di introdurre a sua volta nuove e ancor più inclusive caratteristiche nella direzione dell'interazione diretta tra diversi dispositivi prossimali.
Tesi di dottorato
File allegati
File Dimensione Formato  
2018_06_PhD_Imani.pdf

accessibile in internet per tutti

Descrizione: Final Thesis Text
Dimensione 33.21 MB
Formato Adobe PDF
33.21 MB Adobe PDF Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/141244