446 resultados para Nuove Attribuzioni
Resumo:
L’obiettivo del progetto di tesi svolto è quello di realizzare un servizio di livello middleware dedicato ai dispositivi mobili che sia in grado di fornire il supporto per l’offloading di codice verso una infrastruttura cloud. In particolare il progetto si concentra sulla migrazione di codice verso macchine virtuali dedicate al singolo utente. Il sistema operativo delle VMs è lo stesso utilizzato dal device mobile. Come i precedenti lavori sul computation offloading, il progetto di tesi deve garantire migliori performance in termini di tempo di esecuzione e utilizzo della batteria del dispositivo. In particolare l’obiettivo più ampio è quello di adattare il principio di computation offloading a un contesto di sistemi distribuiti mobili, migliorando non solo le performance del singolo device, ma l’esecuzione stessa dell’applicazione distribuita. Questo viene fatto tramite una gestione dinamica delle decisioni di offloading basata, non solo, sullo stato del device, ma anche sulla volontà e/o sullo stato degli altri utenti appartenenti allo stesso gruppo. Per esempio, un primo utente potrebbe influenzare le decisioni degli altri membri del gruppo specificando una determinata richiesta, come alta qualità delle informazioni, risposta rapida o basata su altre informazioni di alto livello. Il sistema fornisce ai programmatori un semplice strumento di definizione per poter creare nuove policy personalizzate e, quindi, specificare nuove regole di offloading. Per rendere il progetto accessibile ad un più ampio numero di sviluppatori gli strumenti forniti sono semplici e non richiedono specifiche conoscenze sulla tecnologia. Il sistema è stato poi testato per verificare le sue performance in termini di mecchanismi di offloading semplici. Successivamente, esso è stato anche sottoposto a dei test per verificare che la selezione di differenti policy, definite dal programmatore, portasse realmente a una ottimizzazione del parametro designato.
Resumo:
Negli ultimi cinque anni lo sviluppo di applicazioni mobile ha visto un grandissimo incremento dovuto pricipalmente all’esplosione della diffusione di smartphone; questo fenomeno ha reso disponibile agli analisti una enorme quantità di dati sulle abitudini degli utenti. L’approccio centralizzato nella distribuzione delle applicazioni da parte dei grandi provider quali Apple, Google e Microsoft ha permesso a migliaia di sviluppatori di tutto il mondo di raggiungere con i loro prodotti gli utenti finali e diffondere l’utilizzo di applicativi installabili; le app infatti sono diventate in poco tempo fondamentali nella vita di tutti i giorni e in alcuni casi hanno sostituito funzioni primarie del telefono cellulare. Obiettivo principale di questo studio sarà inferire pattern comportamentali dall’analisi di una grossa mole di dati riguardanti l’utilizzo dello smartphone e delle app installabili da parte di un gruppo di utenti. Ipotizzando di avere a disposizione tutte le azioni che un determinato bacino di utenza effettua nella selezione delle applicazioni di loro interesse quando accedono al marketplace (luogo digitale da cui è possibile scaricare nuove applicazioni ed installarle) è possibile stimare, ovviamente con un certo margine di errore, dati sensibili dell’utente quali: Sesso, Età, Interessi e così via analizzandoli in relazione ad un modello costruito su dati di un campione di utenti ben noto. Costruiremo così un modello utilizzando dati di utenti ben noti di cui conosciamo i dettagli sensibili e poi, tramite avanzate tecniche di regressione e classificazione saremo in grado di definire se esiste o meno una correlazione tra le azioni effettuate su uno Smartphone e il profilo dell’utente. La seconda parte della tesi sarà incentrata sull'analisi di sistemi di raccomandazioni attualmente operativi e ci concentreremo sullo studio di possibili sviluppi sviluppi futuri di questi sistemi partendo dai risultati sperimentali ottenuti.
Resumo:
La tesi illustra le funzionalita e l'architettura di Node.js elencando e analizzando le caratteristiche che lo rendono un framework vincente nella sfida che il web attuale pone. La tesi comprende l'analisi e la descrizione del lavoro svolto per creare una libreria HTTP/ File system, integrata nel sistema di sviluppo cloud proprietario: Instant Developer , funzionante sia su Node.JS che sui browser che supportano appieno le nuove API File system di HTML 5. Particolare attenzione viene riservata per la descrizione della struttura della libreria, pensata per permettere all'utente dell'IDE di utilizzarla indifferentemente su server/browser senza preoccuparsi di chiamare metodi diversi. Fs.js permette di operare con file/cartelle, richieste HTTP in modo semplificato rispetto alle API Ufficiali dei rispettivi ambienti.
Resumo:
L'utilizzo sempre crescente di dispositivi mobili, lo sviluppo di applicazioni mobile in continuo aumento, e la necessità di una sempre migliore qualità della comunicazione, ha portato grande interesse ad analizzare i protocolli di supporto alla mobilità dei terminali. Questi, tra i quali il più conosciuto è forse Mobile IP, vengono posti in esame utilizzando diverse metriche per valutarne le prestazioni. Si confrontano dunque due protocolli: LISP e ABPS; per ognuno dei quali ne viene presentata e descritta l'architettura e le principali funzionalità; entrambe queste architetture per il supporto alla mobilità, prevedono delle specifiche per fornire continuità nella comunicazione durante il roaming di un nodo multihomed. Vengono presentati poi gli strumenti con i quali verrà effettuata il l'analisi: il simulatore a eventi discreti OMNeT++ e il suo framework INET. Successivamente sono descritte le principali componenti dei simulatori per LISP e ABPS, che modellano le meccaniche dei due protocolli analizzati. Questi sono stati sottoposti a modifiche mirate a correggerne eventuali anomalie di comportamento, e ad introdurre nuove funzionalità, soprattutto per quanto riguarda ABPS, che era solo parzialmente implementato. Sono mostrati gli scenari in cui verranno effettuati i test per il confronto delle prestazioni: uno scenario semplice e uno che cerca di proporre una rete urbana verosimile; di seguito vengono elencati i parametri e le configurazioni utilizzate per ognuno dei due scenari. Infine vengono presentati i risultati mettendo a confronto due aspetti della mobilità dei terminali: durata dell'intervallo di indisponibilità e latenza dei pacchetti.
Resumo:
Il framework in oggetto, è un ambiente ideato con lo scopo di applicare tecniche di Machine Learning (in particolare le Random Forest) alle funzionalità dell'algoritmo di stereo matching SGM (Semi Global Matching), al fine di incrementarne l'accuratezza in versione standard. Scopo della presente tesi è quello di modificare alcune impostazioni di tale framework rendendolo un ambiente che meglio si adatti alla direzionalità delle scanline (introducendo finestre di supporto rettangolari e ortogonali e il training di foreste separate in base alla singola scanline) e ampliarne le funzionalità tramite l'aggiunta di alcune nuove feature, quali la distanza dal più vicino edge direzionale e la distintività calcolate sulle immagini Left della stereo pair e gli edge direzionali sulle mappe di disparità. Il fine ultimo sarà quello di eseguire svariati test sui dataset Middlebury 2014 e KITTI e raccogliere dati che descrivano l'andamento in positivo o negativo delle modifiche effettuate.
Resumo:
Il potenziale che il Web ha raggiunto in termini di accessibilità, gestione e flessibilità, ha spinto i più svariati settori ad approcciarsi ad esso e ad adottarlo all’interno delle proprie organizzazioni. É stato quindi necessario applicare alle tradizionali applicazioni web, nuove soluzioni al fine di integrare gli elementi di workflow management con il modello dei dati di navigazione e di presentazione. In questo lavoro di tesi, si affrontano gli aspetti legati ai processi di business, con riferimento alla progettazione e allo sviluppo di applicazioni Web. Verranno introdotti standard di modellazione come UML e BPMN per poi descrivere soluzioni e casi di studio esistenti. Nella seconda parte dell'elaborato invece, verranno presentate le tecnologie utilizzate per il design e lo sviluppo di un framework, a supporto delle process-aware Web applications.
Resumo:
In questo elaborato viene descritto il funzionamento dei Beacon. Essi rappresentano un congegno che sfrutta la tecnologia Bluetooth 4.0, la quale, rispetto alle precedenti, si differenzia per alcune innovazioni apportate. Il loro utilizzo originario era rivolto al mondo del Mobile Advertising, ovvero l’invio di messaggi ad hoc agli utenti, sulla base di studi mirati a personalizzare un contenuto. Con lo scorrere del tempo invece si sono cercate nuove modalità d'uso in relazione al mondo da cui derivano: L'”Internet of Things” (IoT). Questa espressione descrive l'intento di dare vita agli oggetti. L'obiettivo di fondo è stato quello di delineare uno dei possibili casi d'uso. Nel concreto il sistema si prefigge, sfruttando l’interazione tra gli utenti, di monitorare la posizione in ambienti indoor di oggetti, usando il segnale RSSI dei Beacon ai quali sono associati, fornire l’aggiornamento dell’indirizzo in cui sono situati, visualizzabile sulle mappe Google con cui l’app è collegata, notificare ai proprietari gli eventuali ritrovamenti di uno di essi, rintracciare i dispositivi altrui. Prima di ciò, si è svolta un'analisi inerente le prestazioni che i Beacon sono in grado di offrire, in condizioni normali, prestando attenzione ad alcuni parametri come: frequenza di trasmissione (l’intervallo entro il quale vengono emessi segnali), il periodo di scansione (l’effettivo periodo di attività), più un’altra serie di risultati acquisiti durante l'esecuzione di alcuni esperimenti.
Resumo:
L’avanzamento tecnologico degli ultimi anni ha portato ad un aumento sostanziale dei dati generati giornalmente. L’analisi di queste ingenti quantità di dati si è rivelata essere troppo complessa per i sistemi tradizionali ed è stato pertanto necessario sviluppare nuovi approcci basati sul calcolo distribuito. I nuovi strumenti sviluppati in seguito a queste nuove necessità sono framework di calcolo parallelo basati sul paradigma del MapReduce, un modello di programmazione sviluppato da Google, e sistemi di gestione di basi di dati fluidi, in grado di trattare rapidamente grandi quantità di dati non strutturati. Lo scopo alla base di entrambi è quello di costruire sistemi scalabili orizzontalmente e utilizzabili su hardware di largo consumo. L’utilizzo di questi nuovi strumenti può comunque portare alla creazione di sistemi poco ottimizzati e di difficile gestione. Nathan Marz propone un’architettura a livelli che utilizza i nuovi strumenti in maniera congiunta per creare sistemi semplici e robusti: questa prende il nome di Lambda-Architecture. In questa tesi viene introdotto brevemente il concetto di Big Data e delle nuove problematiche ad esso associate, si procede poi ad illustrare i principi su cui si basano i nuovi strumenti di calcolo distribuito sviluppati per affrontarle. Viene poi definita l’Architettura Lambda di Nathan Marz, ponendo particolare attenzione su uno dei livelli che la compone, chiamato Batch Layer. I principi della Lambda Architecture sono infine applicati nella costruzione di un Batch Layer, utilizzato per l’analisi e la gestione di dati climatici con fini statistici.
Resumo:
In Java 8, ultimo aggiornamento ufficiale del linguaggio Java, sono state introdotte alcune nuove funzionalità che permettono l’integrazione di alcuni meccanismi legati ai linguaggi dinamici o funzionali, come le espressioni lambda, l’utilizzo degli stream e la dichiarazione di metodi statici all’interno di interfacce. Se si volesse installare un’applicazione scritta in Java 8 su Android, Dalvik VM, la JVM in esso presente, fallirà il processo di traduzione del bytecode. In questa tesi quindi esplorerò, sia ad alto livello che a basso livello, l’origine del problema e presenterò una soluzione di backporting per un’applicazione esistente.
Resumo:
Negli ultimi anni la produzione di materiale ceramico si è spostata su formati di grandi dimensioni. Questo processo è stato possibile grazie allo sviluppo di nuove tecnologie adeguate alla produzione di lastre in grès porcellanato con spessore sempre più ridotto e in formati sempre più grandi. Molte aziende si sono quindi orientate alla produzione delle grandi lastre servendosi di queste nuove tecnologie innovative, proprio perché questi prodotti sono risultati essere particolarmente versatili. Come le piastrelle di formato tradizionale, anche questi grandi formati devono essere certificati con il marchio CE, quindi devono essere eseguite delle prove di caratterizzazione delle loro caratteristiche fisiche-meccaniche. Tuttavia, cambiando notevolmente le dimensioni, per queste grandi lastre si possono introdurre anche nuovi test di prova per determinare nuove caratteristiche, come ad esempio la possibilità di flettersi per adattarsi alla forma della superficie dove vengono collocate (facciate di edifici, rivestimenti di gallerie autostradali, etc.). Di conseguenza nasce l’esigenza di valutare questi nuovi parametri, tra cui il raggio di curvatura è particolarmente rilevante per valutare appunto la flessibilità della lastra. Nel presente lavoro di tesi sono state svolte prove di caratterizzazione delle proprietà fisiche-meccaniche di piastrelle ceramiche di grande formato. I campioni sono stati sottoposti a prove per la determinazione della freccia e del raggio di curvatura sotto il peso proprio e a rottura nelle configurazioni fronte e retro. Dall’analisi dei dati sperimentali sono state dedotte conclusioni in merito alla possibile dipendenza della freccia e del raggio di curvatura dalle caratteristiche dei campioni. Oltre alle prove di determinazione della freccia e conseguente raggio di curvatura, a completamento del lavoro sperimentale svolto sono state eseguite anche prove di assorbimento di acqua e di analisi d’immagine per determinare la porosità totale.
Resumo:
I Big Data hanno forgiato nuove tecnologie che migliorano la qualità della vita utilizzando la combinazione di rappresentazioni eterogenee di dati in varie discipline. Occorre, quindi, un sistema realtime in grado di computare i dati in tempo reale. Tale sistema viene denominato speed layer, come si evince dal nome si è pensato a garantire che i nuovi dati siano restituiti dalle query funcions con la rapidità in cui essi arrivano. Il lavoro di tesi verte sulla realizzazione di un’architettura che si rifaccia allo Speed Layer della Lambda Architecture e che sia in grado di ricevere dati metereologici pubblicati su una coda MQTT, elaborarli in tempo reale e memorizzarli in un database per renderli disponibili ai Data Scientist. L’ambiente di programmazione utilizzato è JAVA, il progetto è stato installato sulla piattaforma Hortonworks che si basa sul framework Hadoop e sul sistema di computazione Storm, che permette di lavorare con flussi di dati illimitati, effettuando l’elaborazione in tempo reale. A differenza dei tradizionali approcci di stream-processing con reti di code e workers, Storm è fault-tolerance e scalabile. Gli sforzi dedicati al suo sviluppo da parte della Apache Software Foundation, il crescente utilizzo in ambito di produzione di importanti aziende, il supporto da parte delle compagnie di cloud hosting sono segnali che questa tecnologia prenderà sempre più piede come soluzione per la gestione di computazioni distribuite orientate agli eventi. Per poter memorizzare e analizzare queste moli di dati, che da sempre hanno costituito una problematica non superabile con i database tradizionali, è stato utilizzato un database non relazionale: HBase.
Resumo:
Le reti devono essere in grado di gestire i modelli di traffico generati dalle nuove applicazioni, per questo si sta concentrando un interesse senza precedenti nella storia di Internet parlando di Software Defined Networking (SDN), un nuovo modo di concepire le reti. SDN è un paradigma che permette di dividere il piano di controllo dal piano dati consentendo il controllo della rete da un dispositivo unico centralizzato,il controller. In questa tesi abbiamo voluto esaminare due specifici casi di studio, affinché si dimostri come SDN possa fornire il miglior supporto per risolvere il problema delle architetture tradizionali, e uno strumento utile per progettare SDN. Per primo viene analizzato Procera, utilizzato nelle reti domestiche e nelle reti campus per dimostrare che, grazie ad esso, è possibile ridurre la complessità di un’intera rete. Poi è stato visto AgNos, un’architettura basata su azioni svolte da agenti rappresentando così un ottimo strumento di lavoro sia perché gli agenti sono implementati nei controller di rete e sia perché AgNos ha la peculiarità di fornire all’utente (o al sistema) un livello stabile di concretezza. Inoltre sono stati analizzati due problemi comuni su Internet: 1.la mitigazione degli attacchi Ddos, dove i domini SDN collaborano per filtrare i pacchetti dalla fonte per evitare l’esaurimento delle risorse 2.l’attuazione di un meccanismo di prevenzione per risolvere il problema dell’attacco Dos nella fase iniziale rendendo l’aggressione più facile da gestire. L’ultimo argomento trattato è il sistema Mininet, ottimo strumento di lavoro in quanto permette di emulare topologie di rete in cui fanno parte host, switch e controller, creati utilizzando il software. Rappresenta un ottimo strumento per implementare reti SDN ed è molto utile per lo sviluppo, l'insegnamento e la ricerca grazie alla sua peculiarità di essere open source.
Resumo:
Internet è la rete globale a cui si può avere accesso in modo estremamente facile, consentendo praticamente a chiunque di inserire i propri contenuti in tempi rapidi, a costi quasi nulli e senza limitazioni geografiche. Il progresso tecnologico e la maggiore disponibilità della banda larga, uniti alle nuove modalità di fruizione ed ai nuovi format, hanno portato ben il 70% degli web users a vedere video online regolarmente. La popolarità dei servizi di streaming video è cresciuta rapidamente, tanto da registrare dei dati di traffico impressionanti negli ultimi due anni. Il campo applicativo della tesi è Twitch, il più celebre servizio di streaming che è riuscito ad imporsi come quarto sito negli Stati Uniti per traffico Internet: un dato sorprendente se pensiamo che si occupa solo di videogiochi. Il fenomeno Twitch è destinato a durare, lo dimostrano i 970 milioni di dollari investiti da Amazon nel 2014 per acquistare la piattaforma, diventata così una sussidiaria di Amazon. L'obiettivo della tesi è stato lo studio di mercato della piattaforma, attraverso il recupero e l'analisi delle informazioni reperibili in letteratura, nonché attraverso estrapolazione di dati originari mediante le API del sito. Si è proceduto all’analisi delle caratteristiche del mercato servito, in termini di segmentazione effettiva, rivolta alla messa in evidenza della possibile dipendenza dai comportamenti dei player, con particolare attenzione alla possibile vulnerabilità.
Resumo:
Il presente progetto è stato svolto in collaborazione con la Cineteca di Bologna e verte sulla riprogettazione dell'odierna interfaccia Web, in funzione della sua visualizzazione mobile non considerata nella progettazione del 2008, in particolare nella sua parte che concerne la programmazione degli spettacoli in ambito cinematografico. Raccolti i suggerimenti degli utenti e approfondite le richieste della Cineteca, affrontando con i responsabili IT della Fondazione le criticità emerse, la ristrutturazione delle sezioni presenti e l'aggiunta di nuove funzionalità, si è impostato il lavoro come segue. In primis, si è eseguita una ricerca, avvalendosi di fonti autorevoli nella letteratura di settore, con un focus incentrato sull’Usabilità. Questa ha portato a presentare una panoramica di tale tematica, per concentrarsi poi sulle peculiarità dei dispositivi mobili, toccando vari aspetti: da un approfondimento dalle caratteristiche dell’uso fino una collocazione anche storica alla realtà mobile. Successivamente, si è proseguito analizzando nel dettaglio tutti i vari elementi da includere, sia dal punto di vista concettuale che posizionale, in riferimento a varie soluzioni proposte dalla letteratura di settore. Ciò preferendo i modelli principalmente utilizzati, dunque maggiormente familiari agli utenti, e i metodi normalizzati per la risoluzione di singole problematiche frequenti nella presentazione delle informazioni. Il risultato è un progetto di interfaccia più vicina all'esperienza quotidiana dell'utente, concretizzatosi con la realizzazione di un prototipo per mezzo di applicativi che simulano un device e mostrano anteprime grafiche dell'interfaccia medesima, nella fattispecie della natura e della collocazione dei singoli componenti sullo schermo. Il lavoro, pertanto, si pone l’obiettivo di rispondere a comuni e debite aspettative dell'utenza in fatto di comodità, efficienza e immediatezza di consultazione della Programmazione anche in mobilità.
Resumo:
La quantità di dati che vengono generati e immagazzinati sta aumentando sempre più grazie alle nuove tecnologie e al numero di utenti sempre maggiore. Questi dati, elaborati correttamente, permettono quindi di ottenere delle informazioni di valore strategico che aiutano nell’effettuare decisioni aziendali a qualsiasi livello, dalla produzione fino al marketing. Sono nati soprattutto negli ultimi anni numerosi framework proprietari e open source che permettono l'elaborazione di questi dati sfruttando un cluster. In particolare tra i più utilizzati e attivi in questo momento a livello open source troviamo Hadoop e Spark. Obiettivo di questa tesi è realizzare un modello di Spark per realizzare una funzione di costo che sia non solo implementabile all’interno dell’ottimizzatore di Spark SQL, ma anche per poter effettuare delle simulazioni di esecuzione di query su tale sistema. Si è quindi studiato nel dettaglio con ducumentazione e test il comportamento del sistema per realizzare un modello. I dati ottenuti sono infine stati confrontati con dati sperimentali ottenuti tramite l'utilizzo di un cluster. Con la presenza di tale modello non solo risulta possibile comprendere in maniera più approfondita il reale comportamento di Spark ma permette anche di programmare applicazioni più efficienti e progettare con maggiore precisione sistemi per la gestione dei dataset che sfruttino tali framework.