With the Web 2.0 revolution, new technologies, new standards and new application models have been introduced in the Web scenario. The Web has become more mature and full of potentialities as a platform for the development of interactive rich applications. The use of client-side scripting languages, the diffusion of Web Services and public APIs, and the always increasing basic skills of laypeople in the development of Web applications shaped up a scenario in which a new class of web applications, the mashups, was born. Mashups integrate, at different levels of the application stack, data, functionality and user interfaces from different resources such as Web Services, public APIs or enterprise databases. Mashups emerged in response to the need of users, not necessarily experts of technology, to quickly assemble Web resources to create new Web applications solving their situational needs. One characterizing feature of these applications is that they are very often developed by the end users, i.e., people who actually need the final application. To accommodate this practice, which can be fruitful in several situations where the possibility of constructing applications satisfying specific needs is required, in the last years different tools, conceived to offer intuitive composition languages, have been proposed. Unfortunately, most of such tools, after a couple of years of activity, were dismissed. My PhD thesis aims at investigating and defining a framework that includes models, composition paradigms and tools for the End-User Development (EUD) of mashups. Two main reasons for the failure of the mashup tools so far proposed are indeed their incompleteness with respect to the users needs and their difficulty of use. The framework defined in this thesis aims therefore at covering the most salient activities in a mashup life cycle, and proposes a new composition paradigm based on abstractions that try as much as possible to hide technical details. The end users are enabled to integrate data of diverse resources, to create components that could be used in a mashup composition, to generate mashups that can be deployed on different kinds of devices (e.g., mobile devices or multitouch screens). We have also investigated collaboration mechanisms to allow groups of users to share resources and co-create applications. This last feature is particularly fruitful to promote the potential of mashup composition as a paradigm for knowledge sharing and creation.

La rivoluzione del Web 2.0 ha introdotto, tra le altre cose, nuove tecnologie, nuovi standard e nuovi modelli che consentono di sviluppare applicazioni più ricche ed interattive. L’utilizzo massiccio di linguaggi di scripting client-side, la diffusione dei web services e di API pubbliche e la sempre maggiore diffusione di conoscenze basilari di tecnologie per lo sviluppo di applicazioni Web, hanno delineato lo scenario in cui sono nati i mashup. I mashup sono applicazioni che integrano, a diversi livelli dello stack applicativo, dati, funzionalità e interfacce fornite da risorse differenti, come web service, API pubbliche o database aziendali. I mashup sono emersi per rispondere alle reali esigenze degli utenti, non necessariamente esperti di tecnologia, che avevano bisogno di integrare velocemente risorse Web e creare nuove applicazioni. Una peculiarità dei mashup è che spesso sono sviluppati dalle stesse persone che ne hanno bisogno e che ne faranno uso. Queste caratteristiche possono essere molto vantaggiose laddove vi sia la necessità di sviluppare in modo flessibile applicazioni specifiche. A tal scopo, negli scorsi anni sono stati proposti numerosi tool di composizione che fanno uso di linguaggi intuitivi. Purtroppo, molti di questi tool, dopo qualche anno di attività sono stati dismessi. Il lavoro illustrato in questa tesi di dottorato si è concentrato sulla definizione di un ecosistema di modelli, paradigmi, tecniche e strumenti che consentano lo sviluppo di mashup da parte degli utenti finali (l’end-user development di mashup). L’inadeguatezza rispetto ai veri bisogni degli utenti e la loro difficoltà di utilizzo sono state alcune delle cause del fallimento di molti mashup tool. Il nostro ecosistema si pone l’obiettivo di coprire tutte le fasi del ciclo di vita di un mashup e comprende un paradigma di composizione nuovo e semplificato, basato su astrazioni che nascondano il più possibile i dettagli tecnici agli utenti. Le astrazioni che abbiamo definito consentono di integrare dati forniti da diverse sorgenti presenti sul web, di creare componenti che possano essere usati per comporre mashup e di generare mashup che possano essere utilizzati su dispositivi di diverso tipo come dispositivi mobili o schermi multi-touch. Ci siamo anche concentrati su meccanismi di collaborazione che consentano a gruppi di utenti di condividere risorse e co-creare applicazioni. Ciò è particolarmente utile per valorizzare il potenziale della composizione di mashup come paradigma per la creazione e condivisione di conoscenza.

End user develompent of mashups : models, composition paradigms and tools

PICOZZI, MATTEO

Abstract

With the Web 2.0 revolution, new technologies, new standards and new application models have been introduced in the Web scenario. The Web has become more mature and full of potentialities as a platform for the development of interactive rich applications. The use of client-side scripting languages, the diffusion of Web Services and public APIs, and the always increasing basic skills of laypeople in the development of Web applications shaped up a scenario in which a new class of web applications, the mashups, was born. Mashups integrate, at different levels of the application stack, data, functionality and user interfaces from different resources such as Web Services, public APIs or enterprise databases. Mashups emerged in response to the need of users, not necessarily experts of technology, to quickly assemble Web resources to create new Web applications solving their situational needs. One characterizing feature of these applications is that they are very often developed by the end users, i.e., people who actually need the final application. To accommodate this practice, which can be fruitful in several situations where the possibility of constructing applications satisfying specific needs is required, in the last years different tools, conceived to offer intuitive composition languages, have been proposed. Unfortunately, most of such tools, after a couple of years of activity, were dismissed. My PhD thesis aims at investigating and defining a framework that includes models, composition paradigms and tools for the End-User Development (EUD) of mashups. Two main reasons for the failure of the mashup tools so far proposed are indeed their incompleteness with respect to the users needs and their difficulty of use. The framework defined in this thesis aims therefore at covering the most salient activities in a mashup life cycle, and proposes a new composition paradigm based on abstractions that try as much as possible to hide technical details. The end users are enabled to integrate data of diverse resources, to create components that could be used in a mashup composition, to generate mashups that can be deployed on different kinds of devices (e.g., mobile devices or multitouch screens). We have also investigated collaboration mechanisms to allow groups of users to share resources and co-create applications. This last feature is particularly fruitful to promote the potential of mashup composition as a paradigm for knowledge sharing and creation.
FIORINI, CARLO ETTORE
TANCA, LETIZIA
20-mar-2014
La rivoluzione del Web 2.0 ha introdotto, tra le altre cose, nuove tecnologie, nuovi standard e nuovi modelli che consentono di sviluppare applicazioni più ricche ed interattive. L’utilizzo massiccio di linguaggi di scripting client-side, la diffusione dei web services e di API pubbliche e la sempre maggiore diffusione di conoscenze basilari di tecnologie per lo sviluppo di applicazioni Web, hanno delineato lo scenario in cui sono nati i mashup. I mashup sono applicazioni che integrano, a diversi livelli dello stack applicativo, dati, funzionalità e interfacce fornite da risorse differenti, come web service, API pubbliche o database aziendali. I mashup sono emersi per rispondere alle reali esigenze degli utenti, non necessariamente esperti di tecnologia, che avevano bisogno di integrare velocemente risorse Web e creare nuove applicazioni. Una peculiarità dei mashup è che spesso sono sviluppati dalle stesse persone che ne hanno bisogno e che ne faranno uso. Queste caratteristiche possono essere molto vantaggiose laddove vi sia la necessità di sviluppare in modo flessibile applicazioni specifiche. A tal scopo, negli scorsi anni sono stati proposti numerosi tool di composizione che fanno uso di linguaggi intuitivi. Purtroppo, molti di questi tool, dopo qualche anno di attività sono stati dismessi. Il lavoro illustrato in questa tesi di dottorato si è concentrato sulla definizione di un ecosistema di modelli, paradigmi, tecniche e strumenti che consentano lo sviluppo di mashup da parte degli utenti finali (l’end-user development di mashup). L’inadeguatezza rispetto ai veri bisogni degli utenti e la loro difficoltà di utilizzo sono state alcune delle cause del fallimento di molti mashup tool. Il nostro ecosistema si pone l’obiettivo di coprire tutte le fasi del ciclo di vita di un mashup e comprende un paradigma di composizione nuovo e semplificato, basato su astrazioni che nascondano il più possibile i dettagli tecnici agli utenti. Le astrazioni che abbiamo definito consentono di integrare dati forniti da diverse sorgenti presenti sul web, di creare componenti che possano essere usati per comporre mashup e di generare mashup che possano essere utilizzati su dispositivi di diverso tipo come dispositivi mobili o schermi multi-touch. Ci siamo anche concentrati su meccanismi di collaborazione che consentano a gruppi di utenti di condividere risorse e co-creare applicazioni. Ciò è particolarmente utile per valorizzare il potenziale della composizione di mashup come paradigma per la creazione e condivisione di conoscenza.
Tesi di dottorato
File allegati
File Dimensione Formato  
2014_03_PhD_Picozzi.pdf

accessibile in internet per tutti

Descrizione: Testo della tesi
Dimensione 19.25 MB
Formato Adobe PDF
19.25 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/89786