7 resultados para Cross-platform software development

em AMS Tesi di Laurea - Alm@DL - Università di Bologna


Relevância:

100.00% 100.00%

Publicador:

Resumo:

L'obiettivo di questa tesi è stato quello di progettare ed avviare lo sviluppo di un videogioco 3D multipiattaforma, nello specifico PC(Windows) e Mobile(Android), realizzandone poi una demo, affrontando così tutte le problematiche che possono sorgere quando si sviluppa un programma per dispositivi profondamente diversi fra loro. Il videogioco che si è scelto di realizzare è del genere “First Person Adventure”, in cui il giocatore deve esplorare la mappa di gioco, ed interagire con i vari elementi presenti al fine di far procedere la storia, il tutto realizzato ad un livello qualitativo sufficiente a permetterne la commercializzazione una volta ultimato.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Sviluppare e manutenere applicativi destinati a differenti piattaforme è un’opzione esclusiva di quelle entità capaci di sostenere costi molto alti per la realizzazione di queste applicazioni. Questo esclude gli sviluppatori indipendenti, che spesso realizzano prodotti in totale autonomia; le start-up, che hanno l’esigenza di sviluppare un’idea di business avendo a disposizione budget estremamente ridotti; le piccole aziende, alle quali viene così preclusa la possibilità di competere con player più importanti. Questo tipo di emergenze rende lo sviluppo cross-platform una soluzione interessante per la realizzazione delle applicazioni mobili, abbattendo i costi di sviluppo e permettendo di raggiungere più velocemente un pubblico più ampio. C'è quindi sempre maggiore interesse, da parte degli sviluppatori, per gli strumenti di sviluppo cross-platform. Per catturare l’attenzione degli sviluppatori è necessario che lo strumento sia dotato di buona stabilità, che offra un ambiente di sviluppo confortevole, una buona user experience, facilità di aggiornamento, tempi di sviluppo contenuti e possibilità di immissione delle applicazioni su diversi ecosistemi software. L’idea alla base di questa Tesi di laurea è valutare i pro e i contro di uno di questi framework cross-platform e compararlo con le tecnologie native. Il framework scelto è Ionic per via della sua popolarità tra gli sviluppatori e della ridotta bibliografia scientifica a riguardo. Molte ricerche scientifiche valutano le prestazioni di uno o più framework cross-platform rispetto ad una soluzione nativa, tuttavia è raro un confronto tra un framework e più soluzioni native. Per questo, oltre a valutare i pro e i contro del framework, verrà anche effettuata una comparazione tra gli applicativi nativi per Android e iOS e le controparti sviluppate attraverso Ionic, permettendo di identificare eventuali differenze di performance e aiutare gli sviluppatori nelle scelte tecnologiche.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

La tesi ha lo scopo di esplorare la produzione di sistemi software per Embedded Systems mediante l'utilizzo di tecniche relative al mondo del Model Driven Software Development. La fase più importante dello sviluppo sarà la definizione di un Meta-Modello che caratterizza i concetti fondamentali relativi agli embedded systems. Tale modello cercherà di astrarre dalla particolare piattaforma utilizzata ed individuare quali astrazioni caratterizzano il mondo degli embedded systems in generale. Tale meta-modello sarà quindi di tipo platform-independent. Per la generazione automatica di codice è stata adottata una piattaforma di riferimento, cioè Arduino. Arduino è un sistema embedded che si sta sempre più affermando perché coniuga un buon livello di performance ed un prezzo relativamente basso. Tale piattaforma permette lo sviluppo di sistemi special purpose che utilizzano sensori ed attuatori di vario genere, facilmente connessi ai pin messi a disposizione. Il meta-modello definito è un'istanza del meta-metamodello MOF, definito formalmente dall'organizzazione OMG. Questo permette allo sviluppatore di pensare ad un sistema sotto forma di modello, istanza del meta-modello definito. Un meta-modello può essere considerato anche come la sintassi astratta di un linguaggio, quindi può essere definito da un insieme di regole EBNF. La tecnologia utilizzata per la definizione del meta-modello è stata Xtext: un framework che permette la scrittura di regole EBNF e che genera automaticamente il modello Ecore associato al meta-modello definito. Ecore è l'implementazione di EMOF in ambiente Eclipse. Xtext genera inoltre dei plugin che permettono di avere un editor guidato dalla sintassi, definita nel meta-modello. La generazione automatica di codice è stata realizzata usando il linguaggio Xtend2. Tale linguaggio permette di esplorare l'Abstract Syntax Tree generato dalla traduzione del modello in Ecore e di generare tutti i file di codice necessari. Il codice generato fornisce praticamente tutta la schematic part dell'applicazione, mentre lascia all'application designer lo sviluppo della business logic. Dopo la definizione del meta-modello di un sistema embedded, il livello di astrazione è stato spostato più in alto, andando verso la definizione della parte di meta-modello relativa all'interazione di un sistema embedded con altri sistemi. Ci si è quindi spostati verso un ottica di Sistema, inteso come insieme di sistemi concentrati che interagiscono. Tale difinizione viene fatta dal punto di vista del sistema concentrato di cui si sta definendo il modello. Nella tesi viene inoltre introdotto un caso di studio che, anche se abbastanza semplice, fornisce un esempio ed un tutorial allo sviluppo di applicazioni mediante l'uso del meta-modello. Ci permette inoltre di notare come il compito dell'application designer diventi piuttosto semplice ed immediato, sempre se basato su una buona analisi del problema. I risultati ottenuti sono stati di buona qualità ed il meta-modello viene tradotto in codice che funziona correttamente.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Panoramica sullo stato dell’arte degli approcci di sviluppo di mobile app alternativi agli approcci nativi, e approfondimento ulteriore dell’analisi. Valutazione concreta del framework Titanium, il più interessante per architettura e offerta di componenti di UI nativi, realizzata mediante lo sviluppo di un'app e facendo quindi il confronto con lo sviluppo nativo.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Agile methodologies have become the standard approach to software development. The most popular and used one is Scrum. Scrum is a very simple and flexible framework that respond to unpredictability in a really effective way. However, his implementation must be correct, and since Scrum tells you what to do but not how to do it, this is not trivial. In this thesis I will describe the Scrum Framework, how to implement it and a tool that can help to do this. The thesis is divided into three parts. The first part is called Scrum. Here I will introduce the framework itself, its key concepts and its components. In Scrum there are three components: roles, meetings and artifacts. Each of these is meant to accomplish a series of specific tasks. After describing the “what to do”, in the second part, Best Practices, I will focus on the “how to do it”. For example, how to decide which items should be included in the next sprint, how to estimate tasks, and how should the team workspace be. Finally, in the third part called Tools, I will introduce Visual Studio Online, a cloud service from Microsoft that offers Git and TFVC repositories and the opportunity to manage projects with Scrum. == Versione italiana: I metodi Agile sono diventati l’approccio standard per lo sviluppo di software. Il più famoso ed utilizzato è Scrum. Scrum è un framework molto semplice e flessibile che risponde ai cambiamenti in una maniera molto efficace. La sua implementazione deve però essere corretta, e visto che Scrum ci dice cosa fare ma non come farlo, questo non risulta essere immediato. In questa tesi descriverò Scrum, come implementarlo ed uno strumento che ci può aiutare a farlo. La tesi è divisa in tre parti. La prima parte è chiamata Scrum. Qui introdurrò il framework, i suoi concetti base e le sue componenti. In Scrum ci sono tre componenti: i ruoli, i meeting e gli artifact. Ognuno di questi è studiato per svolgere una serie di compiti specifici. Dopo aver descritto il “cosa fare”, nella seconda parte, Best Practices, mi concentrerò sul “come farlo”. Ad esempio, come decidere quali oggetti includere nella prossima sprint, come stimare ogni task e come dovrebbe essere il luogo di lavoro del team. Infine, nella terza parte chiamata Tools, introdurrò Visual Studio Online, un servizio cloud della Microsoft che offre repository Git e TFVC e l’opportunità di gestire un progetto con Scrum.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

L’obiettivo dell'elaborato è quello di dare una panoramica sullo stato dell'arte riguardo lo sviluppo di applicazioni mobile, descrivendo i vantaggi e gli svantaggi degli approcci nativo e cross-platform, ed analizzare un framework creato dal team Dart di Google per sviluppare applicazioni cross-platform per le piattaforme Android e iOS chiamato Flutter. Il framework Flutter verrà analizzato mediante lo sviluppo di un’applicazione concreta, e successivamente confrontato con la medesima app sviluppata utilizzando l’approccio nativo su piattaforma Android.