941 resultados para Mobile application testing
Resumo:
La tesi nasce da un'attività di ricerca approfondita su alcune tecnologie innovative e all'avanguardia nell'ambito del mobile computing e dell'Internet of Things. Tra queste il focus principale è orientato allo studio del Bluetooth Low Energy, nuova specifica di Bluetooth caratterizzata principalmente da un consumo di energia assai ridotto. In particolare, si è approfondito il suo funzionamento nel caso dei beacon, piccoli dispositivi che permettono una localizzazione mediante l'invio di un segnale BLE. Inoltre è stata analizzata la possibilità di interazione con Android, poiché oggigiorno non si può evitare di pensare a come queste tecnologie possano interfacciarsi con il mondo degli smartphone e dei tablet. Come conseguenza di tale attività di ricerca è stato analizzato un caso di studio che permettesse di applicare le tecnologie studiate e la loro interazione. Si è pensato quindi a un piccolo sistema distribuito per schermi adattativi (capaci di modificare i contenuti visualizzati in relazione ad eventi esterni) affinché ogni schermo mostrasse dinamicamente l'orario delle lezioni di ciascuno studente all'avvicinarsi di quest'ultimo, e solo per il tempo di permanenza nei pressi dello schermo. Si è quindi progettato e sviluppato un prototipo, e infine durante il testing si sono potute verificare le attuali potenzialità di queste tecnologie e trarre conclusioni sulla possibilità della loro futura diffusione e di impiego in contesti differenti.
Resumo:
Il grande sviluppo a cui stiamo assistendo negli ultimi anni nell'ambito delle tecnologie mobile e del wearable computing apre le porte a scenari innovativi e interessanti per quanto riguarda sistemi distribuiti collaborativi. Le persone possono sempre più facilmente cooperare e scambiarsi informazioni grazie a queste nuove tecnologie e si può pensare allo sviluppo di sistemi che permettano forme molto avanzate di collaborazione facendo leva sull'aspetto hands-free, ovvero sulla possibilità di utilizzare dispositivi che liberino le mani, come i moderni smart-glasses. Per lo sviluppo di tali sistemi è necessario però studiare nuove tecniche e architetture, in quanto gli strumenti ad oggi a disposizione a supporto della realtà aumentata non sembrano essere del tutto adeguati per tale scopo. Infatti piattaforme come Wikitude o Layar, seppure offrano potenti tecniche di riconoscimento di markers e immagini e di rendering, non offrono quella dinamicità fondamentale per un sistema distribuito collaborativo. Questo scritto ha lo scopo di esplorare questi aspetti mediante l'ideazione, l'analisi, la progettazione e la prototipazione di un semplice caso di studio ispirato a sistemi collaborativi distribuiti basati su realtà aumentata. In particolare in questo lavoro si porrà l'attenzione sul livello delle comunicazioni e delle infrastrutture di rete.
Resumo:
Dall'inizio del nuovo millennio lo sviluppo di tecnologie nel campo del mobile computing, della rete internet, lo sviluppo dell'Internet of things e pure il cloud computing hanno reso possibile l'innovazione dei metodi di lavoro e collaborazione. L'evoluzione del mobile computing e della realtà aumentata che sta avvenendo in tempi più recenti apre potenzialmente nuovi orizzonti nello sviluppo di sistemi distribuiti collaborativi. Esistono oggi diversi framework a supporto della realtà aumentata, Wikitude, Metaio, Layar, ma l'interesse primario di queste librerie è quello di fornire una serie di API fondamentali per il rendering di immagini 3D attraverso i dispositivi, per lo studio dello spazio in cui inserire queste immagini e per il riconoscimento di marker. Questo tipo di funzionalità sono state un grande passo per quanto riguarda la Computer Graphics e la realtà aumentata chiaramente, però aprono la strada ad una Augmented Reality(AR) ancora più aumentata. Questa tesi si propone proprio di presentare l'ideazione, l'analisi, la progettazione e la prototipazione di un sistema distribuito situato a supporto della collaborazione basato su realtà aumentata. Lo studio di questa applicazione vuole mettere in luce molti aspetti innovativi e che ancora oggi non sono stati approfonditi né tanto meno sviluppati come API o forniti da librerie riguardo alla realtà aumentata e alle sue possibili applicazioni.
Resumo:
Un'analisi del Framework VDE con lo scopo di implementare strumenti automatizzati per il testing per migliorarne e velocizzarne il processo di sviluppo.
Resumo:
Riprogettazione di un palo dissuasore mobile per parcheggio. Dopo la descrizione dello stato dell'arte di un modello già esistente, è stata effettuata un'analisi critica che ha svelato i punti deboli del sistema. Successivamente sono stati individuati obiettivi e vincoli e si è proceduto alla progettazione del nuovo sistema con l'ausilio di software CAD e analisi FEM.
Resumo:
L'indipendenza dai combustibili fossili è uno degli argomenti maggiormente trattati negli ultimi anni e lo sviluppo di tecnologie atte a produrre energia attraverso fonti rinnovabili è uno dei punti cruciali della ricerca moderna. L'utilizzo dei veicoli elettrici nel quotidiano rappresenta una delle vie principali per l'abbandono delle fonti non rinnovabili, tuttavia siamo ancora in presenza di qualche limite. Una delle principali ragioni per cui gli automobilisti sono restii ad utilizzare le auto elettriche è quella che in inglese viene definita Range Anxiety, ossia la preoccupazione di non riuscire a raggiungere la propria meta con l'autonomia residua del veicolo. Altri fattori che contribuiscono a scoraggiare gli automobilisti sono i lunghi tempi di ricarica e dove effettuare queste ultime. Per cercare di ridurre queste problematiche nel seguente elaborato viene descritto lo sviluppo di un applicazione per sistema Android, con lo scopo di simulare dei percorsi inseriti dall'utente come se venissero effettuati utilizzando un veicolo elettrico: l'applicativo, sfruttando un servizio esterno fornirà all'utente tutti i dati del percorso, come ad esempio dove effettuare una ricarica. Di seguito viene illustrato l'utilizzo dell'applicativo, la sua architettura, come è stato sviluppato e le sue future estensioni.
Resumo:
Lo scopo dell'elaborato di tesi è l'analisi, progettazione e sviluppo di un prototipo di una infrastruttura cloud in grado di gestire un grande flusso di eventi generati da dispositivi mobili. Questi utilizzano informazioni come la posizione assunta e il valore dei sensori locali di cui possono essere equipaggiati al fine di realizzare il proprio funzionamento. Le informazioni così ottenute vengono trasmesse in modo da ottenere una rete di device in grado di acquisire autonomamente informazioni sull'ambiente ed auto-organizzarsi. La costruzione di tale struttura si colloca in un più ampio ambito di ricerca che punta a integrare metodi per la comunicazione ravvicinata con il cloud al fine di permettere la comunicazione tra dispositivi vicini in qualsiasi situazione che si potrebbe presentare in una situazione reale. A definire le specifiche della infrastruttura e quindi a impersonare il ruolo di committente è stato il relatore, Prof. Mirko Viroli, mentre lo sviluppo è stato portato avanti da me e dal correlatore, Ing. Pietro Brunetti. Visti gli studi precedenti riguardanti il cloud computing nell'area dei sistemi complessi distribuiti, Brunetti ha dato il maggiore contributo nella fase di analisi del problema e di progettazione mentre la parte riguardante la effettiva gestione degli eventi, le computazioni in cloud e lo storage dei dati è stata maggiormente affrontata da me. In particolare mi sono occupato dello studio e della implementazione del backend computazionale, basato sulla tecnologia Apache Storm, della componente di storage dei dati, basata su Neo4j, e della costruzione di un pannello di visualizzazione basato su AJAX e Linkurious. A questo va aggiunto lo studio su Apache Kafka, utilizzato come tecnologia per realizzare la comunicazione asincrona ad alte performance tra le componenti. Si è reso necessario costruire un simulatore al fine di condurre i test per verificare il funzionamento della infrastruttura prototipale e per saggiarne l'effettiva scalabilità, considerato il potenziale numero di dispositivi da sostenere che può andare dalle decine alle migliaia. La sfida più importante riguarda la gestione della vicinanza tra dispositivi e la possibilità di scalare la computazione su più macchine. Per questo motivo è stato necessario far uso di tecnologie per l'esecuzione delle operazioni di memorizzazione, calcolo e trasmissione dei dati in grado di essere eseguite su un cluster e garantire una accettabile fault-tolerancy. Da questo punto di vista i lavori che hanno portato alla costruzione della infrastruttura sono risultati essere un'ottima occasione per prendere familiarità con tecnologie prima sconosciute. Quasi tutte le tecnologie utilizzate fanno parte dell'ecosistema Apache e, come esposto all'interno della tesi, stanno ricevendo una grande attenzione da importanti realtà proprio in questo periodo, specialmente Apache Storm e Kafka. Il software prodotto per la costruzione della infrastruttura è completamente sviluppato in Java a cui si aggiunge la componente web di visualizzazione sviluppata in Javascript.
Resumo:
L'obiettivo della tesi è quello di sviluppare una piattaforma software a supporto della programmazione di applicazioni mobile per la rilevazione di parametri vitali. Questo caso di studio offre una ampia discussione su wearable computing, healthcare e prototipazione del wearable. La tesi va a descrivere tutte le fasi di analisi, modellazione e progettazione del sistema, evidenziando problematiche e soluzioni adottate.
Resumo:
L'obiettivo di questa tesi è quello di esplorare l'ideazione di sistemi software collaborativi innovativi basati su smart-glasses e forme di realtà aumentata mobile. In particolare, è stato formulato un caso di studio che cattura alcuni aspetti essenziali di questi sistemi: un'applicazione nel quale più utenti dotati di smart glasses si muovono in una zona precisa cercando di raggiungere tutti i punti d'interesse preimpostati in fase di inizializzazione e ottendendo le ricompense contenute dentro agli scrigni situati nei suddetti punti. Lo specifico caso di studio si occupa di approfondire gli aspetti relativi all'Interfaccia Utente, mentre precedentemente erano state affrontate le parti riguardanti la comunicazione e la cooperazione. L'applicazione è location-based e si serve delle tecniche di geolocalizzazione GPS ed è hands-free perché l'interfaccia grafica è mostrata all'utente tramite lo schermo degli smart-glasses.
Resumo:
Questa tesi esamina la progettazione e lo sviluppo di un'applicazione mobile Android che è in grado di gestire l'attività sportiva di un utente. L'applicazione offre numerose funzionalità, che permettono all'utente di eseguire allenamenti per il fitness e allenamenti per la corsa, tenendo sempre sotto controllo i risultati ottenuti e tutte le informazioni necessarie. Oltre ad eseguire allenamenti l'utente può crearne di propri e modificarli a suo piacimento, in più nell'App è inserito lo shop dove l'utilizzatore può comprare allenamenti messi a disposizione direttamente da FitBody. Gli aspetti visti sopra saranno descritti attraverso un'analisi del problema e un'analisi sulla progettazione architetturale. In particolare verranno sottolineati aspetti riguardanti l'interazione tra utenti e l'utilizzo di API che permetteranno all'utilizzatore di condividere le proprie esperienze sul social network Facebook e di avere un'esperienza completa con l'app. In questo scritto si parlerà anche della comunicazione tra applicazione e server, che avviene grazie a chiamate HTTP con metodo POST. Attraverso queste chiamate l'applicazione leggerà e scriverà informazioni sul database online, 'hostato' sulla piattaforma Altervista. L'applicazione web, di cui sarà data solamente un'infarinatura, è stata sviluppata utilizzando il linguaggio di programmazione PHP. Ogni 'response' inviata dal server al client è composta da uno o più oggetti JSON.
Resumo:
La grande crescita e l'enorme distribuzione che hanno avuto negli ultimi tempi i moderni devices mobile (smartphones, tablet, dispositivi wearable, etc...) ha dato l'avvio ad un massiccio sviluppo di applicazioni mobile di qualunque genere, dall'health-care all'AR (Augmented Reality, realtà aumentata), dalle applicazioni social alle applicazioni che offrono servizi all'utente.
Resumo:
Nella prima parte dell'elaborato vengono introdotti dei concetti basilari del sistema ferroviario necessari al proseguo della trattazione: i sistemi di circolazione utilizzati in Italia, le sezioni di blocco, i sistemi di sicurezza e di controllo della marcia, il sistema ERTMS a livello europeo. Nella seconda parte, dopo aver introdotto il concetto di capacità, vengono analizzati nel dettaglio e confrontati, in termini di capacità teorica, i sistemi basati sul blocco fisso e sul blocco mobile. Vengono quindi proposti i metodi utilizzati per il calcolo della capacità reale, prestando particolare attenzione al metodo dei coefficienti di ritardo specifico D e di stabilità X. Da quest' ultimo e con l'introduzione dei livelli di servizio, viene analizzato il rapporto che lega la capacità con la qualità della circolazione. Infine viene proposto un confronto tra le linee convenzionali e le linee AV/AC in Italia, evidenziando il rapporto tra le caratteristiche di velocità e di capacità.
Resumo:
Il lavoro di questa tesi riguarda principalmente l'upgrade, la simulazione e il test di schede VME chiamate ReadOut Driver (ROD), che sono parte della catena di elaborazione ed acquisizione dati di IBL (Insertable B-Layer). IBL è il nuovo componente del Pixel Detector dell'esperimento ATLAS al Cern che è stato inserito nel detector durante lo shut down di LHC; fino al 2012 infatti il Pixel Detector era costituito da tre layer, chiamati (partendo dal più interno): Barrel Layer 0, Layer 1 e Layer 2. Tuttavia, l'aumento di luminosità di LHC, l'invecchiamento dei pixel e la richiesta di avere misure sempre più precise, portarono alla necessità di migliorare il rivelatore. Così, a partire dall'inizio del 2013, IBL (che fino a quel momento era stato un progetto sviluppato e finanziato separatamente dal Pixel Detector) è diventato parte del Pixel Detector di ATLAS ed è stato installato tra la beam-pipe e il layer B0. Questa tesi fornirà innanzitutto una panoramica generale dell'esperimento ATLAS al CERN, includendo aspetti sia fisici sia tecnici, poi tratterà in dettaglio le varie parti del rivelatore, con particolare attenzione su Insertable B-Layer. Su quest'ultimo punto la tesi si focalizzerà sui motivi che ne hanno portato alla costruzione, sugli aspetti di design, sulle tecnologie utilizzate (volte a rendere nel miglior modo possibile compatibili IBL e il resto del Pixel Detector) e sulle scelte di sviluppo e fabbricazione. La tesi tratterà poi la catena di read-out dei dati, descrivendo le tecniche di interfacciamento con i chip di front-end, ed in particolare si concentrerà sul lavoro svolto per l'upgrade e lo sviluppo delle schede ReadOut Drivers (ROD) introducendo le migliorie da me apportate, volte a eliminare eventuali difetti, migliorare le prestazioni ed a predisporre il sistema ad una analisi prestazionale del rivelatore. Allo stato attuale le schede sono state prodotte e montate e sono già parte del sistema di acquisizione dati del Pixel Detector di ATLAS, ma il firmware è in continuo aggiornamento. Il mio lavoro si è principalmente focalizzato sul debugging e il miglioramento delle schede ROD; in particolare ho aggiunto due features: - programmazione parallela delle FPGA} delle ROD via VME. IBL richiede l'utilizzo di 15 schede ROD e programmandole tutte insieme (invece che una alla volta) porta ad un sensibile guadagno nei tempi di programmazione. Questo è utile soprattutto in fase di test; - reset del Phase-Locked Loop (PLL)} tramite VME. Il PLL è un chip presente nelle ROD che distribuisce il clock a tutte le componenti della scheda. Avere la possibilità di resettare questo chip da remoto permette di risolvere problemi di sincronizzazione. Le ReadOut Driver saranno inoltre utilizzate da più layer del Pixel Detector. Infatti oltre ad IBL anche i dati provenienti dai layer 1 e 2 dei sensori a pixel dell’esperimento ATLAS verranno acquisiti sfruttando la catena hardware progettata, realizzata e testata a Bologna.
Resumo:
L’obiettivo di questa tesi è la trasposizione del gioco da tavolo “Mahjong” su un’applicazione mobile. Essa è sviluppata in Android, ma l’idea è quella di estenderla anche alle altre piattaforme. Col passare del tempo il Mahjong si è diffuso in molti paesi e per questo ne sono nate molte varianti. In questo caso si adotta il regolamento ravennate 200-400, opportunamente modificato per adattarlo all’applicazione. Il nome dell’applicativo nasce dal fatto che esso dovrà gestire un numero molto elevato di lingue e che nessuno ha ancora sviluppato un gioco multiplayer sul Mahjong, per cui sarà il primo a livello mondiale. Nell’applicazione un utente dovrà creare il tavolo di gioco e solo allora gli altri potranno visualizzarlo. Dopo che tutti si saranno seduti, chiunque potrà chiedere di iniziare una partita, che comincerà non appena tutti avranno accettato la richiesta. È stato progettato un database, in modo da salvare lo stato attuale di tutti i tavoli. Le informazioni sullo stato di ogni partita, invece, sono salvate in un file diverso per ciascuna. L’architettura utilizzata per lo sviluppo dell’applicativo è del tipo client-server. Per la parte server dell’applicazione si è scelto di usare il linguaggio java, utilizzando le socket e instaurando connessioni SSL. Il server utilizza inoltre connessioni non persistenti. Tutte le richieste inviate e ricevute dal server sono create in un formato adatto all'interscambio di dati fra applicazioni client-server, chiamato JSON. Nel server si è creato, inoltre, un servizio di “caching” delle partite, in modo da incrementare le prestazioni e la velocità di elaborazione delle richieste. Per connettere in modo corretto il server al database si utilizza JDBC.
Resumo:
Nell'era genomica moderna, la mole di dati generata dal sequenziamento genetico è diventata estremamente elevata. L’analisi di dati genomici richiede l’utilizzo di metodi di significatività statistica per quantificare la robustezza delle correlazioni individuate nei dati. La significatività statistica ci permette di capire se le relazioni nei dati che stiamo analizzando abbiano effettivamente un peso statistico, cioè se l’evento che stiamo analizzando è successo “per caso” o è effettivamente corretto pensare che avvenga con una probabilità utile. Indipendentemente dal test statistico utilizzato, in presenza di test multipli di verifica (“Multiple Testing Hypothesis”) è necessario utilizzare metodi per la correzione della significatività statistica (“Multiple Testing Correction”). Lo scopo di questa tesi è quello di rendere disponibili le implementazioni dei più noti metodi di correzione della significatività statistica. È stata creata una raccolta di questi metodi, sottoforma di libreria, proprio perché nel panorama bioinformatico moderno non è stato trovato nulla del genere.