An increasing number of people owns a smart phone and devices with sensors linked to each other through some kind of network. The large diffusion of these devices leads to the creation of more complex, bigger and harder to manage systems. The configuration of such systems changes frequently and such systems must offer a certain quality of service in each possible situation. To guarantee these system the scalability, the robustness, the fault tolerancee and the speed of reaction to changes they need, a decentralized coordination of their nodes is needed. A-3 is an architectural style for designing, implementation, management and coordination of distributed mobile systems which are highly dynamic and composed of a very large number of nodes. It is centered on scalability and self-adaptation of such systems and it copes with the problem by introducing the concepts of “group” and of “composition of groups”: the former allows to coordinate all the nodes in the same group as a single entity, while the latter allows to manage the whole system by relating all groups in a hierarchical and cooperative manner. A3Droid is an implementation of A-3, that I realized for Android platform. Its APIs allow to create, to destroy and to compose the groups in the system. In particular, they can be automatically called by the application to divide an oversized group or to merge undersized groups, in order to guarantee the scalability of the system while varying the number of nodes into it. The goal of this work is to present A3Droid: its structure, its performance and the possible improvements to it.

Sempre più persone sono dotate di smart phone e di apparecchiature in cui sono presenti sensori collegati tra loro in un qualche tipo di rete. La diffusione di massa di tali apparecchiature porta inevitabilmente alla creazione di sistemi sempre più complessi, più grandi e più difficili da gestire. A tutto ciò si aggiunga anche che la configurazione di tali sistemi cambia in continuazione e che i sistemi stessi devono mantenere una data qualità del servizio in tutte le possibili situazioni. Per garantire a questi sistemi la scalabilità, la robustezza, la tolleranza ai guasti e la velocità di reazione ai cambiamenti di cui essi hanno bisogno, è necessario che i nodi al loro interno siano coordinati in maniera decentralizzata. A-3 è uno stile architetturale per la progettazione, l’implementazione, la gestione ed il coordinamento di sistemi mobile distribuiti che presentino un elevato numero di nodi al loro interno e che siano altamente volatili. E' incentrato sulla scalabilità e l'autoadattamento di tali sistemi e fronteggia il problema introducendo i concetti di “gruppo” e di “composizione di gruppi”: il primo consente di coordinare come un’unica entità i nodi facenti parte di uno stesso gruppo, mentre il secondo consente la gestione dell’intero sistema relazionando tra loro i diversi gruppi in modo gerarchico e cooperativo. A3Droid è un’implementazione di A-3, da me realizzata per piattaforma Android. Le sue API consentono di creare, distruggere e comporre tra loro i gruppi che si prevede faranno parte del sistema. In particolare, esse possono essere invocate automaticamente dall’applicazione per dividere un gruppo sovrappopolato o unire tra loro gruppi sottopopolati, al fine di garantire la scalabilità del sistema al variare del numero di nodi al suo interno. Scopo di questo lavoro è illustrare A3Droid: la sua struttura, le sue prestazioni ed i miglioramenti ad esso apportabili in futuro.

A3Droid : un'implementazione dello stile architetturale A-3 per dispositivi mobili

CASTELLI, FRANCESCO
2013/2014

Abstract

An increasing number of people owns a smart phone and devices with sensors linked to each other through some kind of network. The large diffusion of these devices leads to the creation of more complex, bigger and harder to manage systems. The configuration of such systems changes frequently and such systems must offer a certain quality of service in each possible situation. To guarantee these system the scalability, the robustness, the fault tolerancee and the speed of reaction to changes they need, a decentralized coordination of their nodes is needed. A-3 is an architectural style for designing, implementation, management and coordination of distributed mobile systems which are highly dynamic and composed of a very large number of nodes. It is centered on scalability and self-adaptation of such systems and it copes with the problem by introducing the concepts of “group” and of “composition of groups”: the former allows to coordinate all the nodes in the same group as a single entity, while the latter allows to manage the whole system by relating all groups in a hierarchical and cooperative manner. A3Droid is an implementation of A-3, that I realized for Android platform. Its APIs allow to create, to destroy and to compose the groups in the system. In particular, they can be automatically called by the application to divide an oversized group or to merge undersized groups, in order to guarantee the scalability of the system while varying the number of nodes into it. The goal of this work is to present A3Droid: its structure, its performance and the possible improvements to it.
ING - Scuola di Ingegneria Industriale e dell'Informazione
29-apr-2015
2013/2014
Sempre più persone sono dotate di smart phone e di apparecchiature in cui sono presenti sensori collegati tra loro in un qualche tipo di rete. La diffusione di massa di tali apparecchiature porta inevitabilmente alla creazione di sistemi sempre più complessi, più grandi e più difficili da gestire. A tutto ciò si aggiunga anche che la configurazione di tali sistemi cambia in continuazione e che i sistemi stessi devono mantenere una data qualità del servizio in tutte le possibili situazioni. Per garantire a questi sistemi la scalabilità, la robustezza, la tolleranza ai guasti e la velocità di reazione ai cambiamenti di cui essi hanno bisogno, è necessario che i nodi al loro interno siano coordinati in maniera decentralizzata. A-3 è uno stile architetturale per la progettazione, l’implementazione, la gestione ed il coordinamento di sistemi mobile distribuiti che presentino un elevato numero di nodi al loro interno e che siano altamente volatili. E' incentrato sulla scalabilità e l'autoadattamento di tali sistemi e fronteggia il problema introducendo i concetti di “gruppo” e di “composizione di gruppi”: il primo consente di coordinare come un’unica entità i nodi facenti parte di uno stesso gruppo, mentre il secondo consente la gestione dell’intero sistema relazionando tra loro i diversi gruppi in modo gerarchico e cooperativo. A3Droid è un’implementazione di A-3, da me realizzata per piattaforma Android. Le sue API consentono di creare, distruggere e comporre tra loro i gruppi che si prevede faranno parte del sistema. In particolare, esse possono essere invocate automaticamente dall’applicazione per dividere un gruppo sovrappopolato o unire tra loro gruppi sottopopolati, al fine di garantire la scalabilità del sistema al variare del numero di nodi al suo interno. Scopo di questo lavoro è illustrare A3Droid: la sua struttura, le sue prestazioni ed i miglioramenti ad esso apportabili in futuro.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2015_04_Castelli.pdf

accessibile in internet per tutti

Descrizione: Testo della tesi
Dimensione 1.82 MB
Formato Adobe PDF
1.82 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/106522