peudom: a mashup platform for end user development of common information spaces

1
POLITECNICO DI MILANO Dipartimento di Elettronica, Informazione e Bioingegneria PEUDOM: a Mashup Platform for the End User Development of Common Information Spaces INTRODUCTION Mashups have been conceived so far as Personal Information Spaces (PISs). Such applications, however, have a great potential in accommodating the sharing and co-creation of knowledge. The co-creation of web-based Common Information Spaces (CISs), especially by means of web mashups approaches, is still scarcely explored. Recent works highlight the need for collaboration for the creation of web-based artifacts, but the proposed solutions only cover specific aspects (e.g., awareness in synchronous editing), while they do not offer comprehensive approaches ranging different forms of synchronous and asynchronous collaboration. COMPONENT EDITOR PEUDOM provides a web environment for the creation of compo- nents, the Component Editor, which offers support for querying REST services, displaying the retrieved results in a visual format, and visually defining selection and projection queries over such results. A visual mapping process allows the user to select data attributes and associate them to user interface elements playing the role of data collectors. The association of data from multiple services to a same UI data collector also defines integration queries [1]. A Visual Mapping Manager translates the visual actions into an XML-based component schema. The execution of the so created component is then possible within the Mashup Dashboard, as well as standalone apps on different devices where execution engines, coded according to the target technology, interpret and instantiate the component schema [1, 2]. The coupling of components within an integrated workspace is based on the subscription of operations, which become listeners, for events exposed by other components. Subscriptions are expressed in a composition schema specified through an XML-based domain specific language [3], which is then used to govern the execution of the PIS. The Mashup Dashboard enables the creation of PIS schemas. An Event Handler on the client-side intercepts the visual composition ac- tions executed by the end-user, and automatically translates them into listeners and property values of the PIS schema. Based on the so created schema, the Mashup Engine acts as an event bus: it listens to and handles the events raised by the interac- tion with each single components, and activates the subscribed op- erations as prescribed by the listeners in the composition schema. MASHUP DASHBOARD FROM PISs TO CISs REFERENCES [1] Cappiello, C., Matera, M., Picozzi, M., Caio, A., Guevara, M.T., MobiMash: end user development for mobile mashups, Proceedings of the 21st World Wide Web Conference, WWW 2012, Lyon, France, April 16-20, 2012 (Companion Volume). [2] Cappiello, C., Matera, M., Picozzi, M., End-User Development of Mobile Mashups, 15th International Conference on Human-Computer Interaction, 21-26 July 2013, Mirage Hotel, Las Vegas, Nevada, USA, HCI International 2013. [3] Cappiello, C., Matera, M., Picozzi, M., Sprega, G., Barbagallo, D., Francalanci, C., DashMash: a Mashup Environment for End User De- velopment, 11th International Conference, ICWE 2011, Paphos, Cyprus, June 20-24, 2011. Event Bus Event Operation Binding Publishers Subscribers Component 1 Component 2 Component 3 Matteo Picozzi Politecnico di Milano Italy [email protected] Maristella Matera Politecnico di Milano Italy [email protected] Michele Pini Politecnico di Milano Italy [email protected] Marco Tonazzo Politecnico di Milano Italy [email protected] Mashup Dashboard Component Editor Service Manager Visual Mapping Manager Component Execution Engine Web Services and APIs Repository Server Service Descriptor Repository Component Schema Repository Composition Schema Repository Service descriptor Component schema Visual Templates Mashup Engine Event Handler Collaboration Layer Live Editing Server Editing Action Queue Sharing Server Communication Server Versioning System User/Group Manager Notification Server Chat Server Annotation Server Client Server Live Editing Client Communication Client Component schema Composition schema

Upload: matteo-picozzi

Post on 15-Jul-2015

158 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: PEUDOM: a Mashup Platform for End User Development of Common Information Spaces

POLITECNICO DI MILANO Dipartimento di Elettronica,Informazione e Bioingegneria

PEUDOM:a Mashup Platform for the End User Developmentof Common Information Spaces

INTRODUCTIONINTRODUCTIONMashups have been conceived so far as Personal Information Spaces (PISs). Such applications, however, have a great potential in accommodating the sharing and co-creation of knowledge. The co-creation of web-based Common Information Spaces (CISs), especially by means of web mashups approaches, is still scarcely explored. Recent works highlight the need for collaboration for the creation of web-based artifacts, but the proposed solutions only cover specific aspects (e.g., awareness in synchronous editing), while they do not offer comprehensive approaches ranging different forms of synchronous and asynchronous collaboration.

COMPONENT EDITORPEUDOM provides a web environment for the creation of compo-nents, the Component Editor, which offers support for querying REST services, displaying the retrieved results in a visual format, and visually defining selection and projection queries over such results.A visual mapping process allows the user to select data attributes and associate them to user interface elements playing the role of data collectors. The association of data from multiple services to a same UI data collector also defines integration queries [1]. A Visual Mapping Manager translates the visual actions into an XML-based component schema. The execution of the so created component is then possible within the Mashup Dashboard, as well as standalone apps on different devices where execution engines, coded according to the target technology, interpret and instantiate the component schema [1, 2].

The coupling of components within an integrated workspace is based on the subscription of operations, which become listeners, for events exposed by other components. Subscriptions are expressed in a composition schema specified through an XML-based domain specific language [3], which is then used to govern the execution of the PIS. The Mashup Dashboard enables the creation of PIS schemas. An Event Handler on the client-side intercepts the visual composition ac-tions executed by the end-user, and automatically translates them into listeners and property values of the PIS schema.

Based on the so created schema, the Mashup Engine acts as an event bus: it listens to and handles the events raised by the interac-tion with each single components, and activates the subscribed op-erations as prescribed by the listeners in the composition schema.

MASHUP DASHBOARD

FROM PISs TO CISs

REFERENCES[1] Cappiello, C., Matera, M., Picozzi, M., Caio, A., Guevara, M.T., MobiMash: end user development for mobile mashups, Proceedings of the 21st World Wide Web Conference, WWW 2012, Lyon, France, April 16-20, 2012 (Companion Volume).[2] Cappiello, C., Matera, M., Picozzi, M., End-User Development of Mobile Mashups, 15th International Conference on Human-Computer Interaction, 21-26 July 2013, Mirage Hotel, Las Vegas, Nevada, USA, HCI International 2013.[3] Cappiello, C., Matera, M., Picozzi, M., Sprega, G., Barbagallo, D., Francalanci, C., DashMash: a Mashup Environment for End User De-velopment, 11th International Conference, ICWE 2011, Paphos, Cyprus, June 20-24, 2011.

Event Bus

Event

Operation

Binding

Publishers

Subscribers

Component 1

Component 2Component 3

Matteo Picozzi

Politecnico di MilanoItaly

[email protected] Matera

Politecnico di MilanoItaly

[email protected] Pini

Politecnico di MilanoItaly

[email protected] Tonazzo

Politecnico di MilanoItaly

[email protected]

Mashup DashboardComponent Editor

Service Manager Visual Mapping Manager

Component Execution Engine

Web Servicesand APIs

Repository Server

Service DescriptorRepository

Component SchemaRepository

Composition SchemaRepository

Service descriptor

Component schema

Visual Templates

Mashup EngineEvent Handler

Collaboration Layer

Live Editing Server

Editing Action Queue

Sharing Server Communication Server

Versioning System

User/Group Manager

Notification Server

Chat Server

Annotation Server

ClientServer

Live Editing Client

Communication Client

Component schema

Composition schema