The mobile devices are having a key part in information technology in the last years, thanks to their rapid spread. At the same time, developers' interest in mobile applications development is growing. My thesis work proposes a tool that helps developers at the first stage of mobile app development. In other words it offers a prototyping tool which is able to generate apps written in native code for various mobile platforms using a model-driven approach, an alternative to the exsisting ones. In order to achieve this goal, first of all I did some researches on actual context in order to identify the problems which come out with the classic cross-platform development approach. After that I analyzed the exstisting solutions about mobile app prototyping and development in order to create a better alternative. Then I defined a model which is able to express the components that compose a mobile app. This model is OS independent and it's the starting point for my model-driven approach to develop mobile app prototypes. In order to exploit the model that I just created, I developed two projects: the first one, called Protocode, is a web application that is able to generate the prototype's model. Its interface is very simple and user-friendly and it doesn't require code to generate the model. The second project is called MobileCodeGenerator and it exploits the model generated by Protocode in order to create the app prototypes written in native code for iOS and Android platforms. Finally I evaluated my work comparing it with the classic development approach. This evaluation shows that my tools are a valid alternative, because they are able to greatly reduce the effort and time required by developers to create mobile app prototypes written in native code.

Negli ultimi anni i dispositivi mobili, grazie alla loro rapida diffusione, stanno avendo un ruolo chiave nel settore dell'informatica. Di pari passo è cresciuto l'interesse degli sviluppatori nel creare le applicazioni per questi dispositivi. Il mio lavoro di tesi propone uno strumento che supporta gli sviluppatori nelle prime fasi di sviluppo di un'applicazione mobile. Più precisamente offre uno strumento di prototipizzazione che è in grado di generare codice nativo su diverse piattaforme mobili attraverso un approccio model-driven, alternativo rispetto a quelli esistenti. Per raggiungere tale obiettivo, innanzitutto è stata necessaria un'analisi del contesto attuale per poter identificare i problemi derivanti dall'approccio classico di programmazione multipiattaforma. Una volta identificati i problemi che sorgono in fase di sviluppo su più sistemi operativi mobili, e analizzato le varie proposte già esistenti, è stato definito un modello in grado di esprimere i vari componenti che compongono un'applicazione, indipendentemente dal sistema operativo utilizzato. Dopodichè sono stati sviluppati due progetti che permettono allo sviluppatore di creare un prototipo d'applicazione mobile utilizzando l'approccio model-driven: il primo, denominato Protocode, permette lo sviluppatore di generare il modello del prototipo attraverso un'interfaccia semplice e intuitiva; il secondo, chiamato MobileCodeGenerator, sfrutta il modello generato nel passo precedente per generare i prototipi scritti in codice nativo per le piattaforme iOS e Android. Infine ho svolto una valutazione sul lavoro compiuto rapportandolo con i metodi classici già esistenti di prototipizzazione e sviluppo di applicazioni mobili. Da questa analisi è emerso che lo strumento realizzato è da considerarsi una valida alternativa, perchè è in grado di ridurre considerevolmente gli sforzi ed il tempo richiesti allo sviluppatore.

Prototipizzazione rapida per applicazioni mobili multipiattaforma

NATALI, MATTIA
2013/2014

Abstract

The mobile devices are having a key part in information technology in the last years, thanks to their rapid spread. At the same time, developers' interest in mobile applications development is growing. My thesis work proposes a tool that helps developers at the first stage of mobile app development. In other words it offers a prototyping tool which is able to generate apps written in native code for various mobile platforms using a model-driven approach, an alternative to the exsisting ones. In order to achieve this goal, first of all I did some researches on actual context in order to identify the problems which come out with the classic cross-platform development approach. After that I analyzed the exstisting solutions about mobile app prototyping and development in order to create a better alternative. Then I defined a model which is able to express the components that compose a mobile app. This model is OS independent and it's the starting point for my model-driven approach to develop mobile app prototypes. In order to exploit the model that I just created, I developed two projects: the first one, called Protocode, is a web application that is able to generate the prototype's model. Its interface is very simple and user-friendly and it doesn't require code to generate the model. The second project is called MobileCodeGenerator and it exploits the model generated by Protocode in order to create the app prototypes written in native code for iOS and Android platforms. Finally I evaluated my work comparing it with the classic development approach. This evaluation shows that my tools are a valid alternative, because they are able to greatly reduce the effort and time required by developers to create mobile app prototypes written in native code.
ING - Scuola di Ingegneria Industriale e dell'Informazione
18-dic-2014
2013/2014
Negli ultimi anni i dispositivi mobili, grazie alla loro rapida diffusione, stanno avendo un ruolo chiave nel settore dell'informatica. Di pari passo è cresciuto l'interesse degli sviluppatori nel creare le applicazioni per questi dispositivi. Il mio lavoro di tesi propone uno strumento che supporta gli sviluppatori nelle prime fasi di sviluppo di un'applicazione mobile. Più precisamente offre uno strumento di prototipizzazione che è in grado di generare codice nativo su diverse piattaforme mobili attraverso un approccio model-driven, alternativo rispetto a quelli esistenti. Per raggiungere tale obiettivo, innanzitutto è stata necessaria un'analisi del contesto attuale per poter identificare i problemi derivanti dall'approccio classico di programmazione multipiattaforma. Una volta identificati i problemi che sorgono in fase di sviluppo su più sistemi operativi mobili, e analizzato le varie proposte già esistenti, è stato definito un modello in grado di esprimere i vari componenti che compongono un'applicazione, indipendentemente dal sistema operativo utilizzato. Dopodichè sono stati sviluppati due progetti che permettono allo sviluppatore di creare un prototipo d'applicazione mobile utilizzando l'approccio model-driven: il primo, denominato Protocode, permette lo sviluppatore di generare il modello del prototipo attraverso un'interfaccia semplice e intuitiva; il secondo, chiamato MobileCodeGenerator, sfrutta il modello generato nel passo precedente per generare i prototipi scritti in codice nativo per le piattaforme iOS e Android. Infine ho svolto una valutazione sul lavoro compiuto rapportandolo con i metodi classici già esistenti di prototipizzazione e sviluppo di applicazioni mobili. Da questa analisi è emerso che lo strumento realizzato è da considerarsi una valida alternativa, perchè è in grado di ridurre considerevolmente gli sforzi ed il tempo richiesti allo sviluppatore.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2014_12_Natali.pdf

solo utenti autorizzati dal 20/11/2017

Descrizione: Testo della tesi
Dimensione 6.26 MB
Formato Adobe PDF
6.26 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/102204