745 resultados para Sviluppo applicazione iOS
Resumo:
Microsoft ha introdotto nella versione 2015 di Visual Studio un nuovo compilatore per i linguaggi C# e Visual Basic chiamato Roslyn. Oltre che un compilatore, Roslyn è una piattaforma che mette a disposizione degli sviluppatori servizi per analizzare e modificare progetti .NET, interagire con le varie fasi della compilazione e creare applicazioni per l'analisi e generazione di codice sorgente. Obiettivo della tesi vuole essere lo studio della suddetta piattaforma ed il suo utilizzo nello sviluppo di estensioni per Visual Studio. La tesi si pone pertanto nel contesto delle tecniche di analisi e generazione di codice sorgente. Il lavoro di tesi ha previsto lo sviluppo di due applicazioni facenti uso delle API di Roslyn. La prima applicazione consiste in un analizzatore di codice C# che provvede alla segnalazione di warning riguardanti l'errato utilizzo del costrutto var e all'esplicitazione del tipo relativo. La seconda applicazione riguarda un generatore di codice C# che utilizza i servizi di Roslyn per semplificare e automatizzare la scrittura di codice nel contesto del framework Phoenix. I risultati ottenuti possono essere d'aiuto per un successivo studio della piattaforma Roslyn ed essere usati come punto di partenza per la creazione dei propri applicativi per l'analisi e generazione di codice sorgente.
Resumo:
La diffusione di soluzioni domotiche dipende da tecnologie abilitanti che supportino la comunicazione tra i numerosi agenti delle reti. L’obiettivo della tesi è progettare e realizzare un middleware per sensori distribuiti Java-based chiamato SensorNetwork, che permetta ad un agente domotico di effettuare sensing sull’ambiente. Le funzionalità principali del sistema sono uniformità di accesso a sensori eterogenei distribuiti, alto livello di automazione (autoconfigurazione e autodiscovery dei nodi), configurazione a deployment time, modularità, semplicità di utilizzo ed estensione con nuovi sensori. Il sistema realizzato è basato su un’architettura a componente-container che permette l’utilizzo di sensori all’interno di stazioni di sensori e che supporti l’accesso remoto per mezzo di un servizio di naming definito ad-hoc.
Resumo:
Il termine pervasive computing incarna l’idea di andare oltre il paradigma dei personal computers: è l’idea che qualsiasi device possa essere tecnologizzato ed interconnesso con un network distribuito, costituendo un nuovo modello di interazione uomo-macchina. All’interno di questo paradigma gioca un ruolo fondamentale il concetto di context-awareness, che fa riferimento all’idea che i computer possano raccogliere dati dall’ambiente circostante e reagire in maniera intelligente e proattiva basandosi su di essi. Un sistema siffatto necessita da un lato di una infrastruttura per la raccolta dei dati dall’ambiente, dall'altro di un supporto per la componente intelligente e reattiva. In tale scenario, questa tesi ha l'obiettivo di progettare e realizzare una libreria per l'interfacciamento di un sistema distribuito di sensori Java-based con l’interprete tuProlog, un sistema Prolog leggero e configurabile, scritto anch'esso in Java ma disponibile per una pluralità di piattaforme, in modo da porre le basi per la costruzione di sistemi context-aware in questo ambiente.
Resumo:
In questa tesi, viene illustrato un metodo risolutivo al problema dell’allocazione e schedulazione, su risorse eterogenee con capacità unaria rinnovabile e cumulativa non rinnovabile, di applicazioni multitask periodiche, con periodi in relazione armonica, strutturate in attività indipendenti o sottoposte a vincoli di precedenza e con durate dipendenti dalla specifica risorsa di allocazione. L’obiettivo è quello di fornire un’implementazione del modello in grado di gestire l’allocazione e la schedulazione di istanze (i.e. insieme di applicazioni) variabili, caratterizzate da una serie di parametri. La struttura implementativa, realizzata secondo la Logic-based Benders decomposition, prevede la suddivisione del problema in due moduli. Il primo in grado di generare un’allocazione e realizzato con tecniche di programmazione lineare intera mista, il secondo con lo scopo di controllare l’ammissibilità di tale allocazione attraverso una schedulazione ottima e realizzato mediante tecniche di programmazione a vincoli. Il meccanismo di comunicazione tra i due moduli avviene mediante vincoli lineari, denominati tagli di Benders, che vengono aggiunti dopo ogni iterazione del sistema. L’efficacia del modello sarà valutata confrontando i risultati ottenuti attraverso una serie di test, con i valori forniti da un metodo di allocazione e schedulazione alternativo.
Resumo:
L’attenzione di questa tesi si pone sulla progettazione e lo sviluppo di un automa per il controllo di sistemi a pilotaggio remoto. Punto di partenza dell'intero progetto è stata l'analisi del quadrirotore programmato ed utilizzato dai ricercatori del progetto SHERPA. Le funzionalità evidenziate dall'analisi sono state poi elaborate secondo l'approccio con Attuatore Generalizzato ed implementate in Codesys. Questo software si compone di una parte di controllo, una di simulazione ed una o più interfacce grafiche dedicate all'interazione con l'utente. L'utilizzo di Codesys ha permesso di implementare un automa modulare e riusabile, base di partenza per i futuri progetti di automi aerei. L'automa realizzato consente infine di simulare il comportamento di un generico sistema a pilotaggio remoto e di osservarne la sequenza logica con cui le azioni vengono eseguite.
Resumo:
Il lavoro presentato in questo elaborato tratterà lo sviluppo di un sistema di alerting che consenta di monitorare proattivamente una o più sorgenti dati aziendali, segnalando le eventuali condizioni di irregolarità rilevate; questo verrà incluso all'interno di sistemi già esistenti dedicati all'analisi dei dati e alla pianificazione, ovvero i cosiddetti Decision Support Systems. Un sistema di supporto alle decisioni è in grado di fornire chiare informazioni per tutta la gestione dell'impresa, misurandone le performance e fornendo proiezioni sugli andamenti futuri. Questi sistemi vengono catalogati all'interno del più ampio ambito della Business Intelligence, che sottintende l'insieme di metodologie in grado di trasformare i dati di business in informazioni utili al processo decisionale. L'intero lavoro di tesi è stato svolto durante un periodo di tirocinio svolto presso Iconsulting S.p.A., IT System Integrator bolognese specializzato principalmente nello sviluppo di progetti di Business Intelligence, Enterprise Data Warehouse e Corporate Performance Management. Il software che verrà illustrato in questo elaborato è stato realizzato per essere collocato all'interno di un contesto più ampio, per rispondere ai requisiti di un cliente multinazionale leader nel settore della telefonia mobile e fissa.
Resumo:
Questa tesi si occupa della realizzazione, in ottica Modern UI, di una nuova interfaccia per l'applicazione Android del sistema domotico Home Manager. Dopo una prima fase di analisi preliminare, si affronta la progettazione dell'app, dall'analisi dei requisiti - ivi incluso il nuovo strumento di sviluppo da utilizzare, Android Studio - alla successiva analisi e progettazione della nuova soluzione, seguita da implementazione e collaudo.
Resumo:
Con la crescita in complessità delle infrastrutture IT e la pervasività degli scenari di Internet of Things (IoT) emerge il bisogno di nuovi modelli computazionali basati su entità autonome capaci di portare a termine obiettivi di alto livello interagendo tra loro grazie al supporto di infrastrutture come il Fog Computing, per la vicinanza alle sorgenti dei dati, e del Cloud Computing per offrire servizi analitici complessi di back-end in grado di fornire risultati per milioni di utenti. Questi nuovi scenarii portano a ripensare il modo in cui il software viene progettato e sviluppato in una prospettiva agile. Le attività dei team di sviluppatori (Dev) dovrebbero essere strettamente legate alle attività dei team che supportano il Cloud (Ops) secondo nuove metodologie oggi note come DevOps. Tuttavia, data la mancanza di astrazioni adeguata a livello di linguaggio di programmazione, gli sviluppatori IoT sono spesso indotti a seguire approcci di sviluppo bottom-up che spesso risulta non adeguato ad affrontare la compessità delle applicazione del settore e l'eterogeneità dei compomenti software che le formano. Poichè le applicazioni monolitiche del passato appaiono difficilmente scalabili e gestibili in un ambiente Cloud con molteplici utenti, molti ritengono necessaria l'adozione di un nuovo stile architetturale, in cui un'applicazione dovrebbe essere vista come una composizione di micro-servizi, ciascuno dedicato a uno specifica funzionalità applicativa e ciascuno sotto la responsabilità di un piccolo team di sviluppatori, dall'analisi del problema al deployment e al management. Poichè al momento non si è ancora giunti a una definizione univoca e condivisa dei microservices e di altri concetti che emergono da IoT e dal Cloud, nè tantomento alla definzione di linguaggi sepcializzati per questo settore, la definzione di metamodelli custom associati alla produzione automatica del software di raccordo con le infrastrutture potrebbe aiutare un team di sviluppo ad elevare il livello di astrazione, incapsulando in una software factory aziendale i dettagli implementativi. Grazie a sistemi di produzione del sofware basati sul Model Driven Software Development (MDSD), l'approccio top-down attualmente carente può essere recuperato, permettendo di focalizzare l'attenzione sulla business logic delle applicazioni. Nella tesi viene mostrato un esempio di questo possibile approccio, partendo dall'idea che un'applicazione IoT sia in primo luogo un sistema software distribuito in cui l'interazione tra componenti attivi (modellati come attori) gioca un ruolo fondamentale.
Resumo:
Il lavoro di tesi svolto riguarda lo sviluppo e la sperimentazione di un primo prototipo di sistema per l’obstacle detection e collision avoidance, capace di identificare un ostacolo e inibire i comandi del pilota in modo da evitare collisioni.
Resumo:
Questa tesi riguarda l'implementazione e la verifica di alcuni algoritmi di determinazione d'assetto, con l'obiettivo di verificarne le prestazioni e valutarne la possibilità di utilizzo sul ADS del satellite DustCube, operante nel sistema binario Didymos. I filtri si basano sulla combinazione delle misure di diversi sensori, tra i quali star tracker, sensori di Sole, camera a infrarossi e giroscopio. I sensori in questione sono stati modellizzati all'interno di un simulatore implementato in MATLAB/Simulink. L'approccio utilizzato per la determinazione dell'assetto è quelllo di impiegare due differenti filtri: il primo per la calibrazione del giroscopio, il secondo che utilizza i parametri di calibrazione calcolati dal primo per correggere la velocità angolare misurata da giroscopio e determinare l'assetto con un maggiore accuratezza. Le prestazioni dei vari filtri sono state caratterizzate attraverso un'analisi statistica: le simulazioni Monte Carlo. I risultati, nei limiti delle ipotesi fatte, hanno confermato la validità dell'approccio. Per la determinazione effettiva delle prestazioni di questo sistema sull'ADS del DustCube si rimanda ad uno studio di maggior dettaglio.