Le opportunità non hanno confini Real-time Mashups di Web Service Geografici Cesare Pautasso Facoltá di Informatica Universitá della Svizzera Italiana FESR Fondo europeo di sviluppo regionale http://www.pautasso.info/ @pautasso Le opportunità non hanno confini Mashups • Applicazioni Web costruite componendo Web service API preesistenti in modo nuovo e inaspettato FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Mashups API + API FESR Fondo europeo di sviluppo regionale compose Mashup Le opportunità non hanno confini Example + FESR Fondo europeo di sviluppo regionale compose Mashup Le opportunità non hanno confini WeatherBonk.com Mashups • Applicazioni Web composte da Web service e fonti di dati Web preesistenti riutilizzate in modo nuovo e inaspettato FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Mashups • • • • • Cosa sono Come si costruiscono Esempi geografici Aspetti Legali Uno sguardo in avanti FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Mashups: Proprietá • Contenuti Aggregati da fonti multiple – – – – FESR Fondo europeo di sviluppo regionale Servizi Web (API) Pubblici Screen Scraping (scrAPIs) da siti Web pre-esistenti Dati locali gestiti dal mashup stesso Informazioni fornite dagli utenti del mashup (à la wiki) Le opportunità non hanno confini FESR Fondo europeo di sviluppo regionale ©2010 - Cesare Pautasso 8 Le opportunità non hanno confini API Popolaritá 4% 3% 3% 3% 3% 7% 9% 42% 10% 11% FESR Fondo europeo di sviluppo regionale Da programmableweb.com (All time API usage) GoogleMaps Flickr YouTube Twitter Amazon Facebook eBay VirtualEarth LastFM Google Le opportunità non hanno confini Ecosistema m API m m API m API m API • 2-mode Network • ProgrammableWeb.com (5300+ Mashups, 2300+ APIs) FESR Fondo europeo di sviluppo regionale Slide by Shuli Yu Le opportunità non hanno confini API Tier 1: Google Maps API Tier 2: Social/Community, Search Mashup Ecosystem Many popular APIs API Tier 3: Feeds, blogging, online retail, music, video Less popular APIs FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Mashups: Proprietá • Contenuti Aggregati da fonti multiple – – – – • Servizi Web (API) Pubblici Screen Scraping (scrAPIs) da siti Web pre-esistenti Dati locali gestiti dal mashup stesso Informazioni fornite dagli utenti del mashup (à la wiki) Facili da Programmare – HTML5 e JavaScript sufficienti per iniziare FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Architettura Web Browser AJAX SOAP HTTP RSS Client FESR Fondo europeo di sviluppo regionale Mashup Local Database Web Web Server Service APIs HTTP/RSS/ATOM Databases Web Data Feeds Le opportunità non hanno confini Client-side Mashups FESR Fondo europeo di sviluppo regionale Web Service APIs Web Browser Mashup HTTP/JPEG (HTML JavaScript) Problem: JavaScript Same-Origin Security Policy Web Service APIs Web Server Le opportunità non hanno confini Server-side Mashups Web Browser Mashup (HTML JavaScript Flash) FESR Fondo europeo di sviluppo regionale Web Server HTTP XML/ JSON Mashup (PHP, JSP, ASP.NET Ruby, JOpera…) HTTP/XML Web Service API Web Service API Web Data Feeds Le opportunità non hanno confini Mashups: Proprietá • Contenuti Aggregati da fonti multiple – – – – • Servizi Web (API) Pubblici Screen Scraping (scrAPIs) da siti Web pre-esistenti Dati locali gestiti dal mashup stesso Informazioni fornite dagli utenti del mashup (à la wiki) Facili da Programmare – HTML5 e JavaScript sufficienti per iniziare • Di vita breve – La stabilitá e la robustezza non interessano FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Numero di utenti Software Commerciale • Milioni di utenti • Sviluppo costoso e professionale • Buona Qualitá Mashups • Pochi utenti specializzati • Vita breve, costo molto basso • Good Enough Quality • Sviluppati dagli utenti stessi One-size-fits all FESR Fondo europeo di sviluppo regionale Requisiti Ad-Hoc Le opportunità non hanno confini Metafore Utente • Mappa immo.search.ch – Google Maps et al. • Calendario – Eventi ordinati nel tempo • Data Stream – Aggregare flussi di dati • Portale – Composizione di Web Widgets FESR Fondo europeo di sviluppo regionale woozor.com swisstrains rt4sq netvibes.com Le opportunità non hanno confini FESR Fondo europeo di s v i l uSeptember p p o r e g i o n a l2008 e woozor.com Informatica08 – Atelier 2 20 Le opportunità non hanno confini FESR Fondo europeo di sviluppo regionale Immo.Search.ch Le opportunità non hanno confini FESR Fondo europeo di sviluppo regionale Doggdot.us Le opportunità non hanno confini FlashEarth.com FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini NetVibes.com FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Wikimapia.org FESR Fondo europeo di s v i l uSeptember p p o r e g i o n a l2008 e Informatica08 – Atelier 2 25 Le opportunità non hanno confini FESR Fondo europeo di sviluppo regionale rt4sq 26 Le opportunità non hanno confini swisstrains.ch FESR Fondo europeo di s v i l uSeptember p p o r e g i o n a l2008 e Informatica08 – Atelier 2 27 Le opportunità non hanno confini FESR Fondo europeo di sviluppo regionale local.ch 28 Le opportunità non hanno confini FESR Fondo europeo di sviluppo regionale ineedabike.gmapify.fr 29 Le opportunità non hanno confini Esempi • • • • • • weatherbonk.com woozor.com doggdot.us flashearth.com wikimapia.org netvibes.com FESR Fondo europeo di sviluppo regionale • • • • • immo.search.ch swisstrains.ch ineedabike.gmapify.fr rt4sq.zaubersoftware.com local.ch Le opportunità non hanno confini Sfide Tecnologiche • • • • • • Composizione/Integrazione Estrazione Dati (Pull/Push/Scraping) Eterogeneitá Qualitá delle fonti/servizi Gestione eccezioni Evoluzione FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Aspetti Legali • Anche se tecnicamente é diventato facile riusare il software per comporre mashups, rimangono aperti alcuni problemi legali: • Quali sono i “Terms of Use” delle API? • Fair-Use: esiste un “Right to Remix”? • Security/Privacy – Affidereste la vostra chiave d’accesso ad un mashup sconosciuto? FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Conclusioni • Grazie a standard tecnologici emergenti i costi di integrazione di dati e applicazioni sul Web si sono ridotti moltissimo • É diventato quindi possibile costruire Mashups un nuovo tipo di applicazioni Web che compongono in maniera leggera Web services API e fonti di dati Web FESR Fondo europeo di sviluppo regionale Le opportunità non hanno confini Riferimenti • http://www.programmableweb.com/ • Mashups'10 - 4th International Workshop on Web APIs and Services Mashups @ ECOWS http://mashup.inf.unisi.ch/mashups2010/ • Shuli Yu and C. Jason Woodard, Innovation in the Programmable Web: Characterizing the Mashup Ecosystem, ICSOC Workshops, LNCS 5472, 136-147, 2008 • C. Cappiello, F. Daniel, M. Matera, C. Pautasso, Information Quality in Mashups, IEEE Internet Computing, vol. 14, no. 4, pp. 14-22, Jul/Aug 2010 • C. Pautasso, Composing RESTful Services with JOpera, In: Proc. of the International Conference on Software Composition (SC2009), July 2009, Zurich, Switzerland. FESR Fondo europeo di sviluppo regionale