Una piattaforma client-server universale per Aggregate Computing

Cangini, Loris (2020) Una piattaforma client-server universale per Aggregate Computing. [Laurea magistrale], Università di Bologna, Corso di Studio in Ingegneria e scienze informatiche [LM-DM270] - Cesena
Documenti full-text disponibili:
[img] Documento PDF (Thesis)
Disponibile con Licenza: Salvo eventuali più ampie autorizzazioni dell'autore, la tesi può essere liberamente consultata e può essere effettuato il salvataggio e la stampa di una copia per fini strettamente personali di studio, di ricerca e di insegnamento, con espresso divieto di qualunque utilizzo direttamente o indirettamente commerciale. Ogni altro diritto sul materiale è riservato

Download (787kB)

Abstract

L'aggregate computing è un approccio emergente utilizzato per progettare sistemi di coordinazione complessi edistribuiti. Il tutto si basa sul Field Calculus, un modello di programmazione universale utile per specificare computazioni aggregate tramite composizione di comportamenti. Tra i linguaggi ed i framework sviluppati figurano Protelis e Scafi, i quali, utilizzando approcci diversi tra di loro, forniscono implementazioni concrete del Field Calculus, permettendo di definire programmi aggregati e di mandarli in esecuzione. Avendo a disposizione diversi framework per specificare le computazioni da svolgere, si è rivelato necessario avere una piattaforma sulla quale poter eseguire tali programmi. La tesi verte sulla progettazione e conseguente implementazione di un sistema basatosu architettura client-server che permetta l’esecuzione di programmi aggregati su unarete logica di dispositivi. È prevista la possibilità di utilizzare dispositivi virtualizzati e/o reali per formare la rete che eseguirà il programma. È prevista anche la possibilità per un client dientrare in modalità “lightweight”, nella quale non sarà più quest’ultimo ad eseguire, ma sarà il server a farsi carico della sua parte, indicando al client solamente i risultati delle computazioni. Indipendentemente dalla modalità di esecuzione, il sistema è nativamente compatibile con Scafi e Protelis ed è aperto a nuove implementazioni, permettendo quindi l’esecuzione di programmi aggregati indipendentemente dal linguaggio o framework utilizzato per definirli ed eseguirli. L’intero progetto è stato sviluppato adottando una metodologia test-driven. La compatibilità del sistema con Scafi e Protelis è stata verificata testandolo con alcuni programmi di esempio forniti dagli autori dei framework stessi. Tutti i test sono stati continuamente verificati attuando un processo di continuous integration, permettendo così di individuare facilmente eventuali problematiche durante lo sviluppo.

Abstract
Tipologia del documento
Tesi di laurea (Laurea magistrale)
Autore della tesi
Cangini, Loris
Relatore della tesi
Correlatore della tesi
Scuola
Corso di studio
Ordinamento Cds
DM270
Parole chiave
aggregate computing,client-server,protelis,scafi,Kotlin,scala,android
Data di discussione della Tesi
19 Marzo 2020
URI

Altri metadati

Statistica sui download

Gestione del documento: Visualizza il documento

^