987 resultados para eventi, applicazione web, responsive
Resumo:
Quando si parla di architetture di controllo in ambito Web, il Modello ad Eventi è indubbiamente quello più diffuso e adottato. L’asincronicità e l’elevata interazione con l’utente sono caratteristiche tipiche delle Web Applications, ed un architettura ad eventi, grazie all’adozione del suo tipico ciclo di controllo chiamato Event Loop, fornisce un'astrazione semplice ma sufficientemente espressiva per soddisfare tali requisiti. La crescita di Internet e delle tecnologie ad esso associate, assieme alle recenti conquiste in ambito di CPU multi-core, ha fornito terreno fertile per lo sviluppo di Web Applications sempre più complesse. Questo aumento di complessità ha portato però alla luce alcuni limiti del modello ad eventi, ancora oggi non del tutto risolti. Con questo lavoro si intende proporre un differente approccio a questa tipologia di problemi, che superi i limiti riscontrati nel modello ad eventi proponendo un architettura diversa, nata in ambito di IA ma che sta guadagno popolarità anche nel general-purpose: il Modello ad Agenti. Le architetture ad agenti adottano un ciclo di controllo simile all’Event Loop del modello ad eventi, ma con alcune profonde differenze: il Control Loop. Lo scopo di questa tesi sarà dunque approfondire le due tipologie di architetture evidenziandone le differenze, mostrando cosa significa affrontare un progetto e lo sviluppo di una Web Applications avendo tecnologie diverse con differenti cicli di controllo, mettendo in luce pregi e difetti dei due approcci.
Resumo:
Progetto e realizzazione di un’applicazione web per la visualizzazione di NURBS
Resumo:
Nel documento viene descritta la creazione del servizio ivi presentato partendo da una visone del mondo mobile e da altre app simili sullo store, passando per la progettazione sia della parte server che della parte client per concludere con l'implementazione di entrambe e le con conclusioni sul lavoro svolto oltre che possibili sviluppi futuri che il progetto potrebbe avere.
Resumo:
Il lavoro svolto in questa tesi è volto alla descrizione dello sviluppo di un'applicazione mobile per Android legata al mondo della ristorazione. Viene descritta l'applicazione "Takeway", che svolge funzioni di presentazione di un ristorante e di gestione di ordini TakeAway. Viene inoltre proposta un'analisi del fenomeno di centralità del web/mobile nel quotidiano, delle tecnologie più recenti e dei limiti di queste piattaforme. Le sezioni più importanti riguardano la progettazione e l'implementazione del progetto, sono di carattere tecnico e analizzano le strutture utilizzate e gli strumenti impiegati nello sviluppo del software.
Resumo:
Quando avvengono disastri naturali, spesso la copertura dati viene a mancare e le infrastutture o sono danneggiate o sono sovraccariche; in questo modo è difficile comunicare sia da parte delle persone che hanno bisogno di aiuto, sia da parte dei soccorritori che cercano di organizzare i soccorsi. Con questa tesi si è voluto realizzare un'applicazione Android che permetta agli utenti di segnalare il proprio bisogno di aiuto, anche se il device non ha una connessione internet attiva. L'applicazione, sfruttando il Wi-Fi e il Wi-Fi Direct, cercherà di formare una rete di dispositivi, attraverso la quale i messaggi di aiuto degli utenti verranno scambiati tra i device. Questa rete, man mano, si allargherà fino ad arrivare ad includere device che avranno una connessione dati attiva. Questi comunicheranno con il mio server, al quale manderanno tutti i messaggi che gli sono arrivati. I dati del server, ossia i messaggi che sono stati mandati dagli utenti, verranno mostrati sul sito ltw1528.web.cs.unibo.it. Attraverso questo sito, i soccorritori potranno vedere la posizione degli utenti in stato di bisogno, cosicché potranno mandarli un messaggio di soccorso, che si propagherà nella rete formatasi in precedenza, ed organizzare i soccorsi in maniera ottimale. Si è anche voluto fare uno studio simulativo per testare la scalabilità dell'applicazione e per raccogliere dati statistici, quali il delay medio tra l'arrivo del messaggio al device con connessione dati e il tempo in cui è stato creato, l'influenza sulla batteria del numero dei messaggi scambiati e il numero degli host, il delay tra il tempo di invio e il tempo di arrivo nello scambio di messaggi al variare del numero degli host.
Resumo:
La tesi da me svolta durante questi ultimi sei mesi è stata sviluppata presso i laboratori di ricerca di IMA S.p.a.. IMA (Industria Macchine Automatiche) è una azienda italiana che naque nel 1961 a Bologna ed oggi riveste il ruolo di leader mondiale nella produzione di macchine automatiche per il packaging di medicinali. Vorrei subito mettere in luce che in tale contesto applicativo l’utilizzo di algoritmi di data-mining risulta essere ostico a causa dei due ambienti in cui mi trovo. Il primo è quello delle macchine automatiche che operano con sistemi in tempo reale dato che non presentano a pieno le risorse di cui necessitano tali algoritmi. Il secondo è relativo alla produzione di farmaci in quanto vige una normativa internazionale molto restrittiva che impone il tracciamento di tutti gli eventi trascorsi durante l’impacchettamento ma che non permette la visione al mondo esterno di questi dati sensibili. Emerge immediatamente l’interesse nell’utilizzo di tali informazioni che potrebbero far affiorare degli eventi riconducibili a un problema della macchina o a un qualche tipo di errore al fine di migliorare l’efficacia e l’efficienza dei prodotti IMA. Lo sforzo maggiore per riuscire ad ideare una strategia applicativa è stata nella comprensione ed interpretazione dei messaggi relativi agli aspetti software. Essendo i dati molti, chiusi, e le macchine con scarse risorse per poter applicare a dovere gli algoritmi di data mining ho provveduto ad adottare diversi approcci in diversi contesti applicativi: • Sistema di identificazione automatica di errore al fine di aumentare di diminuire i tempi di correzione di essi. • Modifica di un algoritmo di letteratura per la caratterizzazione della macchina. La trattazione è così strutturata: • Capitolo 1: descrive la macchina automatica IMA Adapta della quale ci sono stati forniti i vari file di log. Essendo lei l’oggetto di analisi per questo lavoro verranno anche riportati quali sono i flussi di informazioni che essa genera. • Capitolo 2: verranno riportati degli screenshoot dei dati in mio possesso al fine di, tramite un’analisi esplorativa, interpretarli e produrre una formulazione di idee/proposte applicabili agli algoritmi di Machine Learning noti in letteratura. • Capitolo 3 (identificazione di errore): in questo capitolo vengono riportati i contesti applicativi da me progettati al fine di implementare una infrastruttura che possa soddisfare il requisito, titolo di questo capitolo. • Capitolo 4 (caratterizzazione della macchina): definirò l’algoritmo utilizzato, FP-Growth, e mostrerò le modifiche effettuate al fine di poterlo impiegare all’interno di macchine automatiche rispettando i limiti stringenti di: tempo di cpu, memoria, operazioni di I/O e soprattutto la non possibilità di aver a disposizione l’intero dataset ma solamente delle sottoporzioni. Inoltre verranno generati dei DataSet per il testing di dell’algoritmo FP-Growth modificato.
Resumo:
La costante evoluzione tecnologica sta portando alla luce nuove possibilità, che un tempo non erano nemmeno immaginabili. Uno dei settori che si è rivoluzionato maggiormente negli ultimi anni è quello delle telecomunicazioni e questo ha portato sia a una riduzione dei costi per le connessioni a Internet, sia ad un aumento delle loro capacità e prestazioni; di conseguenza queste connessioni sono diventate più accessibili e affidabili permettendo alle persone e alle cose di accedere a Internet quasi ininterrottamente. Questo sviluppo sta portando innumerevoli benefici, ma come ciascuna innovazione tecnologica, tuttavia, i benefici si accompagnano a nuove sfide. In questo elaborato viene dapprima analizzato lo stato dell’arte, i benefici, le problematiche e gli attuali interessi da parte di alcuni dei maggiori player verso l’Internet of Things. Vengono poi prese in considerazione due problematiche: l'individuazione e l'interazione con gli oggetti connessi a Internet, portando come esempio l'utilizzo e la ricerca di una vending machine, un distributore automatico. Proponendo una soluzione, in primo luogo è stato effettuato lo sviluppo di un ecosistema che sfrutta le potenzialità del Physical Web, implementando ad hoc ogni componente, dall'emissione del beacon Eddystone-URL alla visualizzazione della pagina ad esso associata. In secondo luogo questa è stata creata un'applicazione Android che sfrutta l'altro tipo di frame offerto dalla piattaforma beacon di Google, l'Eddystone-UID. Queste due applicazioni vengono quindi analizzate e messe a confronto, per individuare i punti forti e le mancanze delle rispettive piattaforme.
Resumo:
Il lavoro di questa tesi si basa sul definire quale metodo di programmazione di un'applicazione mobile risulti più idoneo per uno specifico ambiente di sviluppo web, che verrà introdotto nel terzo capitolo. In primis, questa dissertazione presenterà il mondo del mobile, analizzando il suo sviluppo tecnologico nel tempo e come, a causa di ciò, siano cambiati gli usi e i costumi delle attuali generazioni, riportando alcuni grafici che ci mostreranno questa rivoluzione e comparando la diffusione e l’uso odierno dei nuovi cellulari con quella dei PC. A tal proposito, verrà introdotto il concetto di smartphone, inteso come moderno cellulare dalle tantissime ed ampliabili funzionalità che rendono ormai indispensabile il suo utilizzo.
Resumo:
In questa tesi sono stati introdotti e studiati i Big Data, dando particolare importanza al mondo NoSQL, approfondendo MongoDB, e al mondo del Machine Learning, approfondendo PredictionIO. Successivamente è stata sviluppata un'applicazione attraverso l'utilizzo di tecnologie web, nodejs, node-webkit e le tecnologie approfondite prima. L'applicazione utilizza l'interpolazione polinomiale per predirre il prezzo di un bene salvato nello storico presente su MongoDB. Attraverso PredictionIO, essa analizza il comportamento degli altri utenti consigliando dei prodotti per l'acquisto. Infine è stata effetuata un'analisi dei risultati dell'errore prodotto dall'interpolazione.
Resumo:
Il Cloud Computing permette di utilizzare al meglio le risorse distribuite allo scopo di risolvere problemi di computazione su larga scala, e viene distribuito dai provider all'utente finale sotto forma di servizio. Presentati i diversi modelli di distribuzione dei servizi Cloud, si discutono le varie tipologie di servizi offerti. Efficaci meccanismi di elasticità e scalabilità hanno permesso al Cloud Computing di superare lo scoglio iniziale di utilizzo medio dei server al 10%. L'elasticità (rapid elasticity) è l’abilità di acquisire e rilasciare le risorse di un'infrastruttura Cloud su richiesta, l’abilità di un'applicazione di cambiare le sue dimensione durante il suo tempo di esecuzione; la scalabilità è un prerequisito per ottenere una buona elasticità per il sistema, ed è l'abilità che ha un layer di sostenere carichi di lavoro variabili continuando ad adempiere agli obblighi imposti dallo SLA allocando o disallocando risorse computazionali. Le diverse modalità di scaling e il loro utilizzo determinano la scalabilità e di conseguenza l'elasticità del sistema, e sfruttano la virtualizzazione per poter funzionare. Ciò ha portato notevoli benefici perchè aumenta l'utilizzo dei server, migliora l'efficienza del sistema, e dona flessibilità in caso di errori massimizzando il tempo di funzionamento. Sono stati introdotti due esempi di sistemi elastici basati ovviamente sulla virtualizzazione come Amazon Web Services e Microsoft Azure, che dominano il mercato del Cloud Computing e fanno uso dei più efficenti meccanismi d'elasticità. Il cuore di questo elaborato è l'analisi dell'ampliamento dell'adozione del Cloud Computing in azienda Onit Group srl. L'obiettivo è trattare i punti fondamentali per il Cloud Computing, analizzarli e immagazzinare tutte queste conoscenze per analizzare lo stato attuale del Cloud nell'azienda focalizzando l'attenzione sui vantaggi e sugli svantaggi che un sostanziale ampliamento dell'adozione ai sistemi Cloud poteva apportare.
Resumo:
Nella prima parte di questa tesi viene introdotto il concetto di Internet of Things. Vengono discussi gli elementi costituitivi fondamentali di tale tecnologia, le differenti architetture proposte nel corso degli anni e le sfide che devono ancora essere affrontate per vedere realizzato l’IoT. Questa prima parte si conclude inoltre con due esempi di applicazione dell’IoT. Questi due esempi, Smart City e Smart Healthcare, hanno l’obbiettivo di evidenziare quali sono i vantaggi ed i servizi che possono essere offerti all’utente finale una volta applicato l’IoT. Nel secondo capitolo invece, vengono presentate le funzionalità della piattaforma IoT ThingWorx, la quale mette a disposizione un ambiente di sviluppo per applicazioni IoT con l’obbiettivo di ridurre i tempi e quindi anche i costi di sviluppo delle stesse. Questa piattaforma cerca di ridurre al minimo la necessità di scrivere codice, utilizzando un sistema di sviluppo di tipo “Drag and Drop”. ThingWorx mette anche a disposizione degli SDK per facilitare la programmazione dei device, gestendo soprattutto la parte di comunicazione nodo – piattaforma. Questo argomento viene trattato ampiamente nella parte finale di questo capitolo dopo aver visto quali sono i concetti fondamentali di modellazione e rappresentazione dei dati sui quali si basa la piattaforma. Nel terzo e ultimo capitolo di questa tesi viene presentato innanzitutto il tutorial Android di ThingWorx. Svolgere e successivamente estendere il tutorial ha evidenziato alcune limitazioni del modello iniziale e questo ci ha portato a progettare e sviluppare il componente Aggregated & Complex Event Manager per la gestione di eventi complessi e che permette di sgravare parzialmente la piattaforma da tale compito. La tesi si conclude evidenziando, tramite dei test, alcune differenze fra la situazione iniziale nella quale il componente non viene utilizzato e la situazione finale, nella quale invece viene usato.
Resumo:
In questo lavoro di tesi si è analizzato il problema di creare un sistema di assistenza allo shopping integrabile in applicazioni e-commerce web e mobile sviluppate con le tecnologie messe a disposizione da Marketcloud, ovvero un progetto che punta a fornire strumenti per la realizzazione, la manutenzione, la gestione, la diffusione e la pubblicizzazione di tali applicazioni limitando i costi e le problematiche di sviluppo a carico delle aziende che intendono fornire servizi di e-commerce. Dopo aver discusso gli aspetti principali del progetto Marketcloud, sono state analizzate le necessità delle aziende interessate allo sviluppo del sistema di assistenza in esame, così come le aspettative degli utenti (i clienti) finali, ed è stato discusso perché fosse necessario e preferibile, nel caso in esame, non utilizzare soluzioni già presenti sul mercato. Infine, è stata progettata ed implementata un’applicazione web che includesse tale sistema e che fosse immediatamente integrabile tra i servizi già sviluppati da Marketcloud, testandone risultati, prestazioni, problemi e possibili sviluppi futuri. Al termine del lavoro di implementazione, il sistema e l'applicazione garantiscono all'utente finale l'utilizzo di tre funzioni: ricerca per categoria, ricerca libera, recommendation di prodotti. Per gestire la ricerca libera, è stato implementato un sistema di filtri successivi, ed una rete neurale multi-livello dotata di un opportuno algoritmo di machine learning per poter apprendere dalle scelte degli utenti; per la recommendation di prodotti, è stato utilizzato un sistema di ranking (classificazione). Le prestazioni della rete neurale sono state oggetto di attenta analisi.
Resumo:
In questa tesi viene analizzato il concetto di mobilità elettrica e viene proposta un’applicazione per la gestione della propria auto elettrica. L'applicazione in questione si pone come scopo l’agevolazione delle interazioni dell’utente con l’auto a distanza. Analizzando le caratteristiche principali dell’auto elettrica, ne vengono delineati i benefici e le limitazioni dell’autonomia, per la quale si suggerisce soluzione tramite regole da adottare alla guida. Attraverso la comparazione con le tipologie di applicazioni esistenti per la mobilità si decide che genere di approccio adottare nella realizzazione della nostra applicazione. Seguono la descrizione delle tecnologie di sviluppo del progetto sotto forma di applicazione ibrida, tra le quali ci si sofferma sull'utilizzo di linguaggi di markup, fogli di stile e JavaScript lato client. Di quest’ultimo ne vengono elencate le API utilizzate, in particolare Google Maps e Google Charts. Successivamente si introduce il concetto di simulazione server ed i metodi e le tecniche adottate per renderlo effettivo. Infine vengono spiegate le scelte implementative nonché i metodi e le decisioni presi in ambito di sviluppo per realizzare al meglio l’applicazione, fornendo una presentazione dettagliata delle sue funzionalità.
Resumo:
La catalogazione è la tecnica per costruire, mantenere e aggiornare un catalogo. L’utilizzo del catalogo diventa strettamente necessario quando la raccolta dei documenti viene fuori da un ambito locale e si riferisce ad un pubblico che vuole beneficiare delle informazioni possedute dalla biblioteca. Il passo successivo è aderire ad un sistema in cui ciascuna biblioteca contribuisce alla costruzione del catalogo, trasmettendo i propri dati e le informazioni relative ai documenti in proprio possesso. Per effettuare questa progressione è necessario aderire allo standard catalografico del sistema. La Biblioteca dello Studentato per le Missioni ha deciso di passare da un catalogo bibliografico cumulativo, realizzato con il software CDS/ISIS e l’interfaccia web IBISWEB, ad un sistema più vasto e strutturato, quale l’OPAC CEIBib: per aderire al sistema è necessario effettuare una conversione di formato dei dati bibliografici della banca dati. Lo scopo di questa tesi, dunque, è quello di realizzare un tool di conversione di formato dei dati bibliografici, passando dal formato di catalogazione CDS/ISIS, basato su UNIMARC, al formato MARC 21. La struttura della tesi è organizzata come segue. Il primo capitolo racconta, in breve, la nascita della Biblioteca dello Studentato per le Missioni e del fondo librario di cui dispongono. Il secondo capitolo introduce alla catalogazione, approfondendo diversi aspetti tra cui il catalogo, i formati di catalogazione e i diversi sistemi. Il terzo capitolo tratta il formato di rappresentazione dei metadati MARC 21, adottato dall’OPAC CEIBib come formato bibliografico per la catalogazione. Il quarto capitolo descrive il software di catalogazione CDS/ISIS. In particolare, la creazione dei record CDS/ISIS e l’esportazione degli stessi nel formato ISO 2709. Il quinto capitolo mostra l’implementazione del tool di conversione di formato di dati bibliografici realizzato per la conversione della banca dati della Biblioteca.
Resumo:
En este trabajo de fin de grado se llevará a cabo la elaboración de una aplicación web de gestión de gastos personales desde sus inicios, hasta su completo funcionamiento. Estas aplicaciones poseen un crecimiento emergente en el mercado, lo cual implica que la competencia entre ellas es muy elevada. Por ello el diseño de la aplicación que se va a desarrollar en este trabajo ha sido delicadamente cuidado. Se trata de un proceso minucioso el cual aportará a cada una de las partes de las que va a constar la aplicación características únicas que se plasmaran en funcionalidades para el usuario, como son: añadir sus propios gastos e ingresos mensuales, confeccionar gráficos de sus principales gastos, obtención de consejos de una fuente externa, etc… Estas funcionalidades de carácter único junto con otras más generalistas, como son el diseño gráfico en una amplia gama de colores, harán su manejo más fácil e intuitivo. Hay que destacar que para optimizar su uso, la aplicación tendrá la característica de ser responsive, es decir, será capaz de modificar su interfaz según el tamaño de la pantalla del dispositivo desde el que se acceda. Para su desarrollo, se va a utilizar una de las tecnologías más novedosas del mercado y siendo una de las más revolucionarias del momento, MEAN.JS. Con esta innovadora tecnología se creará la aplicación de gestión económica de gastos personales. Gracias al carácter innovador de aplicar esta tecnología novedosa, los retos que plantea este proyecto son muy variados, desde cómo estructurar las carpetas del proyecto y toda la parte de backend hasta como realizar el diseño de la parte de frontend. Además una vez finalizado su desarrollo y puesta en marcha se analizaran posibles mejoras para poder perfeccionarla en su totalidad. ABSTRACT In this final degree project will take out the development of a web application from its inception, until its full performance management. These applications have an emerging market growth, implying that competition between them is very high. Therefore the design of the application that will be developed in this work has been delicately care. It's a painstaking process which will provide each of the parties which will contain the application unique features that were translated into functionality for the user, such as: add their own expenses and monthly income, make graphs of your major expenses, obtaining advice from an external source, etc... These features of unique character together with other more general, such as graphic design in a wide range of colors, will make more easy and intuitive handling. It should be noted that to optimize its use, the application will have the characteristic of being responsive, will be able to modify your interface according to the size of the screen of the device from which are accessed. For its development, it is to use one of the newest technologies on the market and being one of the most revolutionary moment, MEAN. JS. The economic management of personal expenses application will be created with this innovative technology. Thanks to the innovative nature of applying this new technology, the challenges posed by this project are varied, from how to structure the folders of the project and all the backend part up to how to perform the part of frontend design. In addition once finished its development and commissioning possible improvements will analyze to be able to perfect it in its entirety.