914 resultados para CSCW Healthcare Mobile Pervasive Computing Sincronizzazione Dati REST CouchDB CouchbaseLite
Resumo:
Uno dei temi più discussi ed interessanti nel mondo dell’informatica al giorno d’oggi è sicuramente il Cloud Computing. Nuove organizzazioni che offrono servizi di questo tipo stanno nascendo ovunque e molte aziende oggi desiderano imparare ad utilizzarli, migrando i loro centri di dati e le loro applicazioni nel Cloud. Ciò sta avvenendo anche grazie alla spinta sempre più forte che stanno imprimendo le grandi compagnie nella comunità informatica: Google, Amazon, Microsoft, Apple e tante altre ancora parlano sempre più frequentemente di Cloud Computing e si stanno a loro volta ristrutturando profondamente per poter offrire servizi Cloud adeguandosi così a questo grande cambiamento che sta avvenendo nel settore dell’informatica. Tuttavia il grande movimento di energie, capitali, investimenti ed interesse che l’avvento del Cloud Computing sta causando non aiuta a comprendere in realtà che cosa esso sia, al punto tale che oggi non ne esiste ancora una definizione univoca e condivisa. La grande pressione inoltre che esso subisce da parte del mondo del mercato fa sì che molte delle sue più peculiari caratteristiche, dal punto di vista dell’ingegneria del software, vengano nascoste e soverchiate da altre sue proprietà, architetturalmente meno importanti, ma con un più grande impatto sul pubblico di potenziali clienti. L’obbiettivo che ci poniamo con questa tesi è quindi quello di esplorare il nascente mondo del Cloud Computing, cercando di comprenderne a fondo le principali caratteristiche architetturali e focalizzando l’attenzione in particolare sullo sviluppo di applicazioni in ambiente Cloud, processo che sotto alcuni aspetti si differenzia molto dallo sviluppo orientato ad ambienti più classici. La tesi è così strutturata: nel primo capitolo verrà fornita una panoramica sul Cloud Computing nella quale saranno date anche le prime definizioni e verranno esposti tutti i temi fondamentali sviluppati nei capitoli successivi. Il secondo capitolo costituisce un approfondimento su un argomento specifico, quello dei Cloud Operating System, componenti fondamentali che permettono di trasformare una qualunque infrastruttura informatica in un’infrastruttura Cloud. Essi verranno presentati anche per mezzo di molte analogie con i classici sistemi operativi desktop. Con il terzo capitolo ci si addentra più a fondo nel cuore del Cloud Computing, studiandone il livello chiamato Infrastructure as a Service tramite un esempio concreto di Cloud provider: Amazon, che fornisce i suoi servizi nel progetto Amazon Web Services. A questo punto, più volte nel corso della trattazione di vari temi saremo stati costretti ad affrontare le problematiche relative alla gestione di enormi moli di dati, che spesso sono il punto centrale di molte applicazioni Cloud. Ci è parso quindi importante approfondire questo argomento in un capitolo appositamente dedicato, il quarto, supportando anche in questo caso la trattazione teorica con un esempio concreto: BigTable, il sistema di Google per la gestione della memorizzazione di grandi quantità di dati. Dopo questo intermezzo, la trattazione procede risalendo lungo i livelli dell’architettura Cloud, ricalcando anche quella che è stata l’evoluzione temporale del Cloud Computing: nel quinto capitolo, dal livello Infrastructure as a Service si passa quindi a quello Platform as a Service, tramite lo studio dei servizi offerti da Google Cloud Platform. Il sesto capitolo costituisce invece il punto centrale della tesi, quello che ne soddisfa l’obbiettivo principale: esso contiene infatti uno studio approfondito sullo sviluppo di applicazioni orientate all’ambiente Cloud. Infine, il settimo capitolo si pone come un ponte verso possibili sviluppi futuri, analizzando quali sono i limiti principali delle tecnologie, dei modelli e dei linguaggi che oggi supportano il Cloud Computing. In esso viene proposto come possibile soluzione il modello ad attori; inoltre viene anche presentato il framework Orleans, che Microsoft sta sviluppando negli ultimi anni con lo scopo appunto di supportare lo sviluppo di applicazioni in ambiente Cloud.
Resumo:
L’obbiettivo di questa tesi consiste in un analisi dello sviluppo di applicazioni mobile, rivolgendo particolare attenzione riguardo a quelle soluzioni che consentono di astrarre dall’ambiente su cui effettivamente queste verranno eseguite, per poi prendere in esame la piattaforma e il linguaggio Mobl. Sarà quindi necessario effettuare una panoramica sullo stato attuale del mercato, introducendo i diversi sistemi presenti e le metodologie proposte per la costruzione del software. Da questo studio sarà possibile ricavare i pregi e i difetti di una programmazione nativa. Volendo, in seguito, ricercare un processo di produzione software che favorisca un’indipendenza dai sistemi precedentemente descritti, verranno illustrati alcuni tra i più importanti Mobile Frameworks e tra questi si prenderà in esame Mobl, che si contraddistingue grazie a caratteristiche peculiari.
Resumo:
Il termine cloud ha origine dal mondo delle telecomunicazioni quando i provider iniziarono ad utilizzare servizi basati su reti virtuali private (VPN) per la comunicazione dei dati. Il cloud computing ha a che fare con la computazione, il software, l’accesso ai dati e servizi di memorizzazione in modo tale che l’utente finale non abbia idea della posizione fisica dei dati e la configurazione del sistema in cui risiedono. Il cloud computing è un recente trend nel mondo IT che muove la computazione e i dati lontano dai desktop e dai pc portatili portandoli in larghi data centers. La definizione di cloud computing data dal NIST dice che il cloud computing è un modello che permette accesso di rete on-demand a un pool condiviso di risorse computazionali che può essere rapidamente utilizzato e rilasciato con sforzo di gestione ed interazione con il provider del servizio minimi. Con la proliferazione a larga scala di Internet nel mondo le applicazioni ora possono essere distribuite come servizi tramite Internet; come risultato, i costi complessivi di questi servizi vengono abbattuti. L’obbiettivo principale del cloud computing è utilizzare meglio risorse distribuite, combinarle assieme per raggiungere un throughput più elevato e risolvere problemi di computazione su larga scala. Le aziende che si appoggiano ai servizi cloud risparmiano su costi di infrastruttura e mantenimento di risorse computazionali poichè trasferiscono questo aspetto al provider; in questo modo le aziende si possono occupare esclusivamente del business di loro interesse. Mano a mano che il cloud computing diventa più popolare, vengono esposte preoccupazioni riguardo i problemi di sicurezza introdotti con l’utilizzo di questo nuovo modello. Le caratteristiche di questo nuovo modello di deployment differiscono ampiamente da quelle delle architetture tradizionali, e i meccanismi di sicurezza tradizionali risultano inefficienti o inutili. Il cloud computing offre molti benefici ma è anche più vulnerabile a minacce. Ci sono molte sfide e rischi nel cloud computing che aumentano la minaccia della compromissione dei dati. Queste preoccupazioni rendono le aziende restie dall’adoperare soluzioni di cloud computing, rallentandone la diffusione. Negli anni recenti molti sforzi sono andati nella ricerca sulla sicurezza degli ambienti cloud, sulla classificazione delle minacce e sull’analisi di rischio; purtroppo i problemi del cloud sono di vario livello e non esiste una soluzione univoca. Dopo aver presentato una breve introduzione sul cloud computing in generale, l’obiettivo di questo elaborato è quello di fornire una panoramica sulle vulnerabilità principali del modello cloud in base alle sue caratteristiche, per poi effettuare una analisi di rischio dal punto di vista del cliente riguardo l’utilizzo del cloud. In questo modo valutando i rischi e le opportunità un cliente deve decidere se adottare una soluzione di tipo cloud. Alla fine verrà presentato un framework che mira a risolvere un particolare problema, quello del traffico malevolo sulla rete cloud. L’elaborato è strutturato nel modo seguente: nel primo capitolo verrà data una panoramica del cloud computing, evidenziandone caratteristiche, architettura, modelli di servizio, modelli di deployment ed eventuali problemi riguardo il cloud. Nel secondo capitolo verrà data una introduzione alla sicurezza in ambito informatico per poi passare nello specifico alla sicurezza nel modello di cloud computing. Verranno considerate le vulnerabilità derivanti dalle tecnologie e dalle caratteristiche che enucleano il cloud, per poi passare ad una analisi dei rischi. I rischi sono di diversa natura, da quelli prettamente tecnologici a quelli derivanti da questioni legali o amministrative, fino a quelli non specifici al cloud ma che lo riguardano comunque. Per ogni rischio verranno elencati i beni afflitti in caso di attacco e verrà espresso un livello di rischio che va dal basso fino al molto alto. Ogni rischio dovrà essere messo in conto con le opportunità che l’aspetto da cui quel rischio nasce offre. Nell’ultimo capitolo verrà illustrato un framework per la protezione della rete interna del cloud, installando un Intrusion Detection System con pattern recognition e anomaly detection.
Resumo:
In questa tesi è stato realizzato un sistema web-based, per la configurazione di modelli meccanici tridimensionali. L’intero software è basato su architettura multi-tier. Il back-end espone servizi RESTful che permettono l’interrogazione di una base di dati contenente l’anagrafica dei modelli e l’interazione con il CAD 3D SolidWorks. Il front-end è rappresentato da due pagine HTML ideate come SPA (Single Page Application), una per l’amministratore e l’altra per l’utente finale; esse sono responsabili delle chiamate asincrone verso i servizi, dell’aggiornamento automatico dell’interfaccia e dell’interazione con immagini tridimensionali.
Resumo:
Il problema dell'antibiotico-resistenza è un problema di sanità pubblica per affrontare il quale è necessario un sistema di sorveglianza basato sulla raccolta e l'analisi dei dati epidemiologici di laboratorio. Il progetto di dottorato è consistito nello sviluppo di una applicazione web per la gestione di tali dati di antibiotico sensibilità di isolati clinici utilizzabile a livello di ospedale. Si è creata una piattaforma web associata a un database relazionale per avere un’applicazione dinamica che potesse essere aggiornata facilmente inserendo nuovi dati senza dover manualmente modificare le pagine HTML che compongono l’applicazione stessa. E’ stato utilizzato il database open-source MySQL in quanto presenta numerosi vantaggi: estremamente stabile, elevate prestazioni, supportato da una grande comunità online ed inoltre gratuito. Il contenuto dinamico dell’applicazione web deve essere generato da un linguaggio di programmazione tipo “scripting” che automatizzi operazioni di inserimento, modifica, cancellazione, visualizzazione di larghe quantità di dati. E’ stato scelto il PHP, linguaggio open-source sviluppato appositamente per la realizzazione di pagine web dinamiche, perfettamente utilizzabile con il database MySQL. E’ stata definita l’architettura del database creando le tabelle contenenti i dati e le relazioni tra di esse: le anagrafiche, i dati relativi ai campioni, microrganismi isolati e agli antibiogrammi con le categorie interpretative relative al dato antibiotico. Definite tabelle e relazioni del database è stato scritto il codice associato alle funzioni principali: inserimento manuale di antibiogrammi, importazione di antibiogrammi multipli provenienti da file esportati da strumenti automatizzati, modifica/eliminazione degli antibiogrammi precedenti inseriti nel sistema, analisi dei dati presenti nel database con tendenze e andamenti relativi alla prevalenza di specie microbiche e alla chemioresistenza degli stessi, corredate da grafici. Lo sviluppo ha incluso continui test delle funzioni via via implementate usando reali dati clinici e sono stati introdotti appositi controlli e l’introduzione di una semplice e pulita veste grafica.
Resumo:
Negli ultimi anni il mondo del mobile computing ha avuto una vera e propria crescita esponenziale grazie soprattutto all'entrata in scena dello smartphone. In realtà, per essere più precisi, è bene bene sottolineare che gli smartphone esistevano già da tempo ma il loro utilizzo era in particolar modo indirizzato ai professionisti per il quale era, ma continua ad essere tutt'oggi, un valido supporto in campo lavorativo, basti pensare all'importanza della comunicazione via e-mail e non solo. Seppur comunque fossero già presenti da tempo, i primi smartphone non godevano di certo di un touch-screen sofisticato come quello odierno nè in essi erano presenti funzionalità tipiche dei dispositivi che troviamo ad oggi sul mercato. Una svolta decisiva è stata segnata dall'introduzione dell'iPhone e successivamente dell'AppStore, grazie a questi la programmazione per i dispositivi mobile ha preso sempre più piede diventando un vero e proprio business. In un secondo momento alla programmazione nativa si affiancarono le tecnologie web. Questo mio lavoro di tesi si pone l'obiettivo di studiare in primis la struttura, caratteristiche e peculiarità del sistema operativo iOS e analizzare il framework PhoneGap al fine di riuscire a confrontarne i vari aspetti fondamentali anche attraverso lo sviluppo di piccole applicazioni. Così facendo, quindi scendendo nei dettagli di quelle che possono essere le differenze rilevanti, mi pongo l'obiettivo di valutarne relativi pro e contro al fine di fare una scelta del tutto personale tra iOS e PhoneGap.
Resumo:
Pervasive Sensing is a recent research trend that aims at providing widespread computing and sensing capabilities to enable the creation of smart environments that can sense, process, and act by considering input coming from both people and devices. The capabilities necessary for Pervasive Sensing are nowadays available on a plethora of devices, from embedded devices to PCs and smartphones. The wide availability of new devices and the large amount of data they can access enable a wide range of novel services in different areas, spanning from simple data collection systems to socially-aware collaborative filtering. However, the strong heterogeneity and unreliability of devices and sensors poses significant challenges. So far, existing works on Pervasive Sensing have focused only on limited portions of the whole stack of available devices and data that they can use, to propose and develop mainly vertical solutions. The push from academia and industry for this kind of services shows that time is mature for a more general support framework for Pervasive Sensing solutions able to enhance frail architectures, promote a well balanced usage of resources on different devices, and enable the widest possible access to sensed data, while ensuring a minimal energy consumption on battery-operated devices. This thesis focuses on pervasive sensing systems to extract design guidelines as foundation of a comprehensive reference model for multi-tier Pervasive Sensing applications. The validity of the proposed model is tested in five different scenarios that present peculiar and different requirements, and different hardware and sensors. The ease of mapping from the proposed logical model to the real implementations and the positive performance result campaigns prove the quality of the proposed approach and offer a reliable reference model, together with a direction for the design and deployment of future Pervasive Sensing applications.
Resumo:
uesto progetto di tesi ha come obiettivo la creazione di una applicazio- ne mobile collaborativa per il monitoraggio e l’analisi dei viaggi ferroviari. Collaborativa perché per poter adempiere alla sua funzione è necessario che i suoi utilizzatori partecipino attivamente all’accrescimento del database di dati, supponendo che con più dati raccolti sia maggiore l’accuratezza di que- st’ultimi. Sarà un’applicazione di monitoraggio nel senso che di ogni singolo treno verranno presi in esame una serie di aspetti considerati utili ai fini della valutazione della qualità del servizio offerto. Analisi perché, una volta raccolti, questi dati possono essere utilizzati sia da coloro che viaggiano in treno -per decidere se prendere un treno piuttosto che un altro- sia da coloro che gestiscono la rete in modo da stilare delle statistiche o per eseguire degli interventi mirati su di una specifica tratta o anche per potenziare il servizio clienti a bordo del treno.
Resumo:
Lo scopo di questa tesi è quello di valutare l’utilizzo di tecnologie Web, per la creazione di applicazioni per dispositivi mobile, come alternativa allo sviluppo di applicazioni tramite linguaggi nativi. Tra i vari dispositivi mobile esistenti, quello che trova maggior interesse nello sviluppo della tesi è sicuramente lo smartphone, il più recente tra questi dispositivi, che rispetto agli altri dispositivi è caratterizzato da una maggior complessità dovuta a funzionalità e capacità più elevate. Quindi in questa tesi verrà analizzato l’aspetto legato alle applicazioni utilizzate da questo dispositivo mobile. Si è deciso di strutturare la tesi in diversi capitoli, che verranno illustrati qui in seguito, al fine di creare un percorso concettuale per arrivare ad analizzare l’argomento chiave della tesi, le applicazioni mobile basate su tecnologie Web, perciò nei primi due capitoli verrano trattati argomenti riguardanti il mondo dei dispositivi mobile, con particolare riguardo per lo smartphone, con lo scopo di dare una visione dell’ambiente che circonda questo argomento di tesi. Negli ultimi capitoli si entrerà nel cuore della tesi, dove verrà trattato l’argomento chiave nel dettaglio, con la specifica analisi di Tizen come caso di studio. Inoltre si è deciso di approfondire gli aspetti legati a questo argomento di tesi sviluppando un piccola applicazione, con lo scopo di andare a sperimentare le nozioni acquisite durante tutto questo percorso di studio.
Resumo:
Questo elaborato ha come argomento lo sviluppo di un progetto informatico creato per mettere in comunicazione tra di loro un sistema di gestione e controllo del ricambio di acqua in una piscina e un dispositivo mobile. Per la realizzazione del sistema di controllo è stata utilizzata una scheda Arduino Mega 2560 munita di modulo Ethernet, mentre, per quello che concerne il dispositivo mobile, la scelta è ricaduta su un device dotato di sistema operativo Android. La comunicazione tra questi due attori è mediata attraverso un server scritto in Java che gira nella stessa rete locale in cui è presente la scheda Arduino. Il progetto può essere inserito nell'ambito dell'Internet of Things, dove ogni oggetto è caratterizzato dalla possibilità di connettersi ad Internet e scambiare informazioni con ogni altro oggetto creando una rete. Questo progetto è suddiviso in tre parti: la prima si occupa della definizione di due protocolli di comunicazione tra le varie componenti, uno per lo scambio di messaggi tra client Android e Server Java e un secondo per quello tra scheda Arduino e Server; la seconda parte è incentrata sulla realizzazione del server Java che rende accessibile la scheda da qualsiasi luogo e permette la raccolta dei dati rilevanti provenienti dalla centralina. L’ultima parte infine è quella relativa allo sviluppo di una applicazione per Android che permette di monitorare il tutto e interagire con la centralina stessa.
Resumo:
L'analisi di un'immagine con strumenti automatici si è sviluppata in quella che oggi viene chiamata "computer vision", la materia di studio proveniente dal mondo informatico che si occupa, letteralmente, di "vedere oltre", di estrarre da una figura una serie di aspetti strutturali, sotto forma di dati numerici. Tra le tante aree di ricerca che ne derivano, una in particolare è dedicata alla comprensione di un dettaglio estremamente interessante, che si presta ad applicazioni di molteplici tipologie: la profondità. L'idea di poter recuperare ciò che, apparentemente, si era perso fermando una scena ed imprimendone l'istante in un piano a due dimensioni poteva sembrare, fino a non troppi anni fa, qualcosa di impossibile. Grazie alla cosiddetta "visione stereo", invece, oggi possiamo godere della "terza dimensione" in diversi ambiti, legati ad attività professionali piuttosto che di svago. Inoltre, si presta ad utilizzi ancora più interessanti quando gli strumenti possono vantare caratteristiche tecniche accessibili, come dimensioni ridotte e facilità d'uso. Proprio quest'ultimo aspetto ha catturato l'attenzione di un gruppo di lavoro, dal quale è nata l'idea di sviluppare una soluzione, chiamata "SuperStereo", capace di permettere la stereo vision usando uno strumento estremamente diffuso nel mercato tecnologico globale: uno smartphone e, più in generale, qualsiasi dispositivo mobile appartenente a questa categoria.
Resumo:
L'elaborato tratta dello sviluppo di un'applicazione mobile per la visualizzazione di opendata ambientali. E' diviso in due parti: la prima che illustra l'importanza dei dati e dei dati aperti per l'innovazione e lo sviluppo, la seconda che racconta la gestione del progetto.
Resumo:
Un sistema mobile di comunicazione è un sistema di telecomunicazioni in cui è possibile mantenere la connessione o legame tra due o più utenti, anche nelle situazioni di mobilità totale o parziale degli stessi utenti. I sistemi radiomobili si stanno evolvendo dalla creazione del 1G (prima generazione) al 4G (quarta generazione). I telefoni di ogni generazione si differenziano in quattro aspetti principali : accesso radio, velocità di trasmissione dati, larghezza di banda e sistemi di commutazione. In questa tesi si affronta il tema dei sistemi 5G , negli ambienti terrestri e satellitari , in quanto sono l'ultima evoluzione dei sistemi mobili . Si introduce il passaggio dalla prima alla connessione di quarta generazione , al fine di capire perché 5G sta per cambiare la nostra vita . Quello che mi colpisce è il sito italiano www.Repubblica.it che dice : " con la nuova generazione 5 possiamo affidare le intere porzioni nette di vita". La tecnologia cellulare , infatti , ha cambiato radicalmente la nostra società e il nostro modo di comunicare . In primo luogo è cambiata la telefonia vocale , per poi trasferirsi all' accesso dati , applicazioni e servizi. Tuttavia , Internet non è stato ancora pienamente sfruttato dai sistemi cellulari. Con l'avvento del 5G avremo l'opportunità di scavalcare le capacità attuali di Internet . Il sistema di comunicazione di quinta generazione è visto come la rete wireless reale , in grado di supportare applicazioni web wireless a livello mondiale ( wwww ). Ci sono due punti di vista dei sistemi 5G : evolutivo e rivoluzionario. Dal punto di vista evolutivo, i sistemi 5G saranno in grado di supportare wwww permettendo una rete altamente flessibile come un Adhoc rete wireless dinamica ( DAWN ) . In questa visione tecnologie avanzate, tra cui antenna intelligente e modulazione flessibile , sono le chiavi per ottimizzare le reti wireless ad hoc. Dal punto di vista rivoluzionario, i sistemi 5G dovrebbe essere una tecnologia intelligente in grado di interconnettere tutto il mondo senza limiti . Un esempio di applicazione potrebbe essere un robot wireless con intelligenza artificiale .
Resumo:
Nella presente tesi vengono presentati gli strumenti necessari ad un dispositivo mobile per spostarsi attraverso una molteplicità di reti wi-fi senza perdere l'identità della connessione in essere.
Resumo:
In questo lavoro di tesi sono state evidenziate alcune problematiche relative alle macchine exascale (sistemi che sviluppano un exaflops di Potenza di calcolo) e all'evoluzione dei software che saranno eseguiti su questi sistemi, prendendo in esame principalmente la necessità del loro sviluppo, in quanto indispensabili per lo studio di problemi scientifici e tecnologici di più grandi dimensioni, con particolare attenzione alla Material Science, che è uno dei campi che ha avuto maggiori sviluppi grazie all'utilizzo di supercomputer, ed ad uno dei codici HPC più utilizzati in questo contesto: Quantum ESPRESSO. Dal punto di vista del software sono state presentate le prime misure di efficienza energetica su architettura ibrida grazie al prototipo di cluster EURORA sul software Quantum ESPRESSO. Queste misure sono le prime ad essere state pubblicate nel contesto software per la Material Science e serviranno come baseline per future ottimizzazioni basate sull'efficienza energetica. Nelle macchine exascale infatti uno dei requisiti per l'accesso sarà la capacità di essere energeticamente efficiente, così come oggi è un requisito la scalabilità del codice. Un altro aspetto molto importante, riguardante le macchine exascale, è la riduzione del numero di comunicazioni che riduce il costo energetico dell'algoritmo parallelo, poiché in questi nuovi sistemi costerà di più, da un punto di vista energetico, spostare i dati che calcolarli. Per tale motivo in questo lavoro sono state esposte una strategia, e la relativa implementazione, per aumentare la località dei dati in uno degli algoritmi più dispendiosi, dal punto di vista computazionale, in Quantum ESPRESSO: Fast Fourier Transform (FFT). Per portare i software attuali su una macchina exascale bisogna iniziare a testare la robustezza di tali software e i loro workflow su test case che stressino al massimo le macchine attualmente a disposizione. In questa tesi per testare il flusso di lavoro di Quantum ESPRESSO e WanT, un software per calcolo di trasporto, è stato caratterizzato un sistema scientificamente rilevante costituito da un cristallo di PDI - FCN2 che viene utilizzato per la costruzione di transistor organici OFET. Infine è stato simulato un dispositivo ideale costituito da due elettrodi in oro con al centro una singola molecola organica.