Alessio Bianchi Relatore: Ing. Stefano D. Salsano 6 maggio 2008 Simple Mobile Services Piattaforma per lo sviluppo e l’utilizzo di servizi mobili usabili e integrati Semplicità di utilizzo, semplicità di sviluppo Approccio prossimo al P2P Il MOVE Client e il Navigator MOVE Client: applicazione client da installare sul terminale mobile per accedere a SMS Alcuni servizi di SMS risiedono all’interno del MOVE Client: ad es. il Navigator Navigator: componente del MOVE client che realizza le funzioni di localizzazione e navigazione Integrazione con gli altri servizi di SMS Possibilità di usare un ricevitore GPS Bluetooth Funzionalità del Navigator Ricerca di indirizzi Traduzione di una località fisica (indirizzo, città, ecc.) in coordinate geografiche. Ricerca di attività Ottenere un elenco di attività commerciali di una categoria data nei dintorni di un indirizzo. Calcolo di percorsi Ottenere un percorso stradale, sotto forma di strade da percorrere, tra due indirizzi dati. Mappa navigabile Composta da più maptile: immagine raster raffiguranti una porzione di una mappa SMSNavigatorProxy - Architettura MOVE client con Navigator Isolamento dei terminali dai map provider Formato unificato per richieste e risposte Caching di maptile Interazione Navigator/Proxy Interazione Proxy/map providers XML I map provider Google Maps Ricerca di indirizzi Ricerca di attività Calcolo di percorsi Download di maptile Formato della risposta KML, JSON, CSV Parsing della risposta Parser XML Documentazione Supporto per indirizzi ambigui Struttura indirizzo flessibile Yahoo Maps MSN Live Local I map provider Google Maps Yahoo Maps Formato della risposta KML, JSON, CSV XML, serialized PHP Parsing della risposta Parser XML Parser XML Ricerca di indirizzi Ricerca di attività Calcolo di percorsi Download di maptile Documentazione Supporto per indirizzi ambigui Struttura indirizzo flessibile MSN Live Local I map provider Google Maps Yahoo Maps MSN Live Local Formato della risposta KML, JSON, CSV XML, serialized PHP XHTML Parsing della risposta Parser XML Parser XML Espressioni regolari Ricerca di indirizzi Ricerca di attività Calcolo di percorsi Download di maptile Documentazione Supporto per indirizzi ambigui Struttura indirizzo flessibile Un nuovo map provider: Automatic Uso di Google Maps come provider principale In caso di errore, le richieste vengono servite da Yahoo Maps o MSN Live Local (fallback) Completamente trasparente per il Navigator Problema in ricerca di attività: Gli indirizzi accettati da Google non sono abbastanza precisi per MSN. Soluzione: Effettuare geocodifica preliminare tramite Yahoo Maps e usare l'indirizzo risultante per la richiesta a MSN La soluzione precedente VS La nuova soluzione Soluzione precedente Nuova soluzione Provider Google Maps Google Maps, Yahoo Maps, MSN Live Local, Automatic Estrazione dati Espressioni regolari XML, ove possibile, altrimenti espr. reg. Linguaggio PHP PHP Object orientation No Sì Espandibilità Scarsa Ampia Documentazione Scarsa Ampia Class diagram dei map provider Uso del pattern factory method per istanziare il provider scelto Conclusioni Cosa si è realizzato Un’applicazione lato server per fornire servizi di mappe al componente Navigator del MOVE client Evoluzione della soluzione precedente utilizzando XML e implementazione del provider Automatic Sviluppi futuri Ampia espandibilità → semplice aggiungere il supporto ad altri map provider Porting dei messaggi di richiesta/risposta su JSON Porting del trasporto dei messaggi su SMILE Alessio Bianchi [email protected] http://stud.netgroup.uniroma2.it/~bianchi