realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling»...

19
Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria Corso di laurea in Ingegneria Informatica Isabella Lombardi

Upload: luciana-mauro

Post on 03-May-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel

«carpooling»

Università degli Studi del SannioDipartimento di Ingegneria

Corso di laurea in Ingegneria Informatica

Isabella Lombardi

Page 2: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Outline

Il carpooling: definizione e vantaggi

Il carpooling: stato dell’arte ed applicazioni esistenti

L’applicazione «There I Go» per Android

Modulo applicativo per la registrazione ed il login degli utenti

Modulo applicativo per la gestione delle preferenze di

carpooling

Scambio di messaggi e Google Cloud Messaging (GCM)

Modulo applicativo per le notifiche push e lo scambio di

messaggi tra dispositivi

Conclusioni

Page 3: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Il carpooling

DefinizioneModalità di trasporto che consiste nella condivisione di automobili private tra un gruppo di persone che hanno percorsi di strada semi-comuni.

Obbiettivi principaliRidurre i costi di trasportoIncentivare la mobilità sostenibile

Vantaggi Riduzione dei costi legati all’auto (manutenzione, tasse, carburante)Riduzione dei problemi di congestione di traffico e di parcheggioRiduzione dell’inquinamento e delle emissioni di CO2

Page 4: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Il carpooling

FunzionamentoUn automobilista mette a disposizione il proprio veicoloI passeggeri, per usufruire del servizio, contribuiscono con adeguate somme economiche proporzionali al tragitto condivisoUtilizzo di piattaforme web o applicazioni mobiliCon le nuove tecnologie è possibile comunicare in tempo reale con tutti i soggetti e sapere la posizione geografica effettiva di passeggeri e automobilisti

ProblemaDato un certo numero di offerte di automobilisti e di domande di passeggeri, sorge il problema di come combinare queste richieste in modo efficienteDeterminare quali delle diverse opzioni risultano le migliori per ogni singolo soggetto facente parte del sistema

Page 5: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Il carpooling

Applicazioni esistenti e tecniche utilizzate

Stato dell’arte Supporti virtuali per la gestione di prenotazioni Social network che permettono agli utenti di incontrarsi,

pubblicare le loro richieste, scambiare informazioni• Limiti per quanto riguarda la funzionalità, l’accessibilità

ecc.• Funzionamento non in real-time

Si basano sul confronto dei tragitti di automobilisti e passeggeri

Si determinano i punti comuni ai tragitti di automobilista e passeggeri• Metodo poco efficiente al crescere delle lunghezze dei

tragitti e del numero di richieste• Aumento del tempo di calcolo

Page 6: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

L’applicazione Android «There I Go»

Permette agli utenti di:• offrire un passaggio• cercare un

passaggio • pianificare un

viaggio

Page 7: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Descrizione del funzionamento

Innovatività dell’applicazione

L’algoritmo dell’applicazione deve essere in grado di:• elaborare le diverse richieste provenienti dai

passeggeri • classificarle• selezionare le migliori

Comunicazione tra smartphone o tablet e GIS interno o esterno, es. «Google Maps»

Le richieste dei passeggeri vengono ordinate in modo da massimizzare l’utilità in termini economici sia per l’automobilista che per il passeggero.

Algoritmo più efficiente con riduzione dei tempi di calcolo

Page 8: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Modulo applicativo per il login e la registrazione degli utenti

MotivazioniL’applicazione “There I Go” non era dotata di schermate autenticazione e registrazione

Permette agli utenti :• di essere riconosciuti dall’applicazione,• di memorizzare dati importanti per la pianificazione dei

viaggi,• di avere un servizio personalizzato e più sicuro, basato

sulle proprie preferenze di viaggio.

Page 9: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Prevede :• una schermata di login con campi per e-mail e password • una schermata di registrazione per la creazione di un

account con campi full name (nome e cognome), e-mail e password

E’ possibile la navigazione ed il passaggio da una schermata all’altra

Page 10: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

MotivazioniRealizzato per la scelta delle preferenze di carpooling nell’applicazione “There I Go”Permette agli utenti di personalizzare il proprio viaggio rendendolo più confortevole e sicuro.

PreferenzePermette di scegliere fra diverse preferenze di viaggio: musica, fumo, animali a bordo, bambini a bordo, «chiacchiere». E’ possibile scegliere se si desidera o meno viaggiare in un’auto in cui:

• il conducente ascolta musica• si fuma• si trasportano animali domestici• ci sono bambini a bordo• ci sono compagni di viaggio “chiacchieroni”

Page 11: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

PreferenzeE’ inoltre possibile scegliere :

• le dimensioni del bagaglio da portare a bordo tra piccolo, medio e grande

• il numero dei propri compagni di viaggio.

• se viaggiare con solo uomini, solo donne o con entrambi

• il tipo di auto

SicurezzaScegliendo l’opzione “solo donne”, è possibile un viaggio riservato solo alle donne

Page 12: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Modulo applicativo per lo scambio di messaggi e notifche push

MotivazioniPermette di aggiungere all’applicazione la possibilità di ricevere notifiche o messaggi in tempo reale. Approccio migliore rispetto ad e-mail o SMS.

ImplementazioneLe notifiche push:

• sono implementate utilizzando il servizio GCM (Google Cloud Messaging)

• consentono all’utente di riceve informazioni in tempo reale ed in modo gratuito

Page 13: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Servizio che consente agli sviluppatori di inviare dati dai server alle loro applicazioni Android. Gestisce tutti gli aspetti di accodamento dei messaggi e di consegna all’applicazione Android in esecuzione sul dispositivo di destinazione.

VantaggiTempestività con cui le informazioni vengono inviate e ricevuteRiduzione del traffico on-line Risparmio del consumo di batteria GCM è gratuito

Google Cloud Messaging (GCM)

Page 14: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Google Cloud Messaging (GCM)

Funzionamento

Il server dell’applicazione invia prima i dati ai server GCMIl server GCM invia una notifica a tutti i terminali AndroidI terminali Android ricevono il messaggio, si connettono al server, e quindi sincronizzano i dati.

Architettura

Page 15: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Comunicazione a scambio di messaggi

Tipologie

• comunicazione asincrona• comunicazione sincrona• remote invocation

Per la realizzazione del modulo per lo scambio di messaggi è stata utilizzata una comunicazione asincrona con server CCS (XMPP)

Vantaggi comunicazione asincrona Consente di inviare più messaggi con meno risorse

Comunicazione bidirezionale Utilizzo dello stesso collegamento usato per la ricezione, con

miglioramento della durata della batteria

Page 16: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Passi seguiti per la realizzazione dell’applicazione:• creare un nuovo progetto in Google Developers Console• ottenere una API Key per il server• scegliere il tipo di GCM Connection Server• ottenere l’approvazione da Google per l’accesso API• implementare server e client

Modulo applicativo per lo scambio di messaggi e notifche push, con server CCS (XMPP)

FunzionamentoSchermata iniziale con due possibili opzioni:

• “Register with Google GCM CCS Server”, permette la registrazione al Server CCS e l’ottenimento del RegID.

• “Send Message to XMPP Server”, consente di inviare un messaggio di notifica al server.

Page 17: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Modulo applicativo per lo scambio di messaggi e notifche push, con server javaMotivazioniNon è ancora stata ricevuta alcuna risposta per l’approvazione di Google, necessaria a testare il funzionamento del modulo presentato

Struttura dell’applicazioneclient :•verifica la corretta connessione con il server•permette la visualizzazione nel LogCat del RegId•riceve il messaggioserver java:•permette la creazione e l’invio di un messaggio al server GCM

FunzionamentoUna volta che il programma server sarà eseguito, si riceverà sul device una notifica da parte dell’applicazione che ha risposto al messaggio

Page 18: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Conclusioni

Nel lavoro proposto è stato descritto il funzionamento di un sistema per il carpooling , facendo riferimento all’applicazione Android “There I Go”.

La parte centrale del lavoro ha riguardato la progettazione di moduli applicativi per la registrazione ed il login, per la gestione delle preferenze, per lo scambio di messaggi e notifiche push di supporto alla suddetta applicazione.

I moduli realizzati aggiungono all’applicazione importanti funzionalità, permettendo agli utenti di personalizzare la propria esperienza di carpooling.

Grazie al modulo per lo scambio di messaggi è stato possibile aggiungere all’applicazione la possibilità di ricevere notifiche in tempo reale e gratuitamente.

Page 19: Realizzazione di moduli applicativi per messaggistica e gestione preferenze nel «carpooling» Università degli Studi del Sannio Dipartimento di Ingegneria

Grazie per l’attenzione