Chapter 8 Tool-Aided Mashup Development. Figures. Florian Daniel Maristella Matera. Concepts, Models and Architectures. Mashups

Similar documents
MarcoFlow: Modeling, Deploying, and Running Distributed User Interface Orchestrations

Conceptual Development of Custom, Domain-Specific Mashup Platforms

Mixup: a Development and Runtime Environment for Integration at the Presentation Layer

Oracle APEX 18.1 New Features

Operations Orchestration 10.x Flow Authoring (OO220)

A UI-Centric Approach for the End-User Development of Multidevice Mashups

Chapter 5: From Mashup Technologies to Universal Integration: Search Computing the Imperative Way

IBM Rational Developer for System z Version 7.5

Developing Mashup Tools for End-Users: On the Importance of the Application Domain

Course Details. Skills Gained. Who Can Benefit. Prerequisites. View Online URL:

IBM Research Report. A Web-Services-Based Deployment Framework in Grid Computing Environment

Information Systems ] (]]]]) ]]] ]]] Contents lists available at SciVerse ScienceDirect. Information Systems

What's New in ActiveVOS 7.1 Includes ActiveVOS 7.1.1

IBM Case Manager Client

Description-Based Mashup of Web Applications

Previewing Semantic Web Pipes

Leveraging the Social Web for Situational Application Development and Business Mashups

All About Open & Sharing

Professional Developer

SERVICE-ORIENTED COMPUTING

Front End Nanodegree Syllabus

A Component-based Approach for Engineering Enterprise Mashups

AT&T Flow Designer. Current Environment

Introduction to Web Services & SOA

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints

BEAWebLogic. Portal. Overview

uick Start Guide 1. Install Oracle Java SE Development Kit (JDK) version or later or 1.7.* and set the JAVA_HOME environment variable.

Recommendation and Weaving of Reusable Mashup Model Patterns for Assisted Development

Use Case: Publishing an orchestration as a REST API

Semantic Integration Platform for Web Widgets Communication

Building Database-Centric Web Applications Using. Oracle HTML DB

Dashboards. Overview. Overview, page 1 Dashboard Actions, page 2 Add Widgets to Dashboard, page 4 Run a Report from the Dashboard, page 6

E-Commerce Integration Meta-Framework General Methodology (ECIMF-GM) CEN/ISSS/WS-EC/ECIMF. Draft, version 0.2 July 11, 2001

Professional SharePoint 2010 Development

WebCenter Interaction 10gR3 Overview

(9A05803) WEB SERVICES (ELECTIVE - III)

MarkLogic Server. Reference Application Architecture Guide. MarkLogic 9 May, Copyright 2017 MarkLogic Corporation. All rights reserved.

Software Architecture

HTML Mashups A mashup that embeds an HTML or JavaScript based Web page directly on a screen.

Getting started with Convertigo Mobilizer

Mashup Technology for Research and Education

Semantic Web Services for Ocean Knowledge Management

ThingWorx Open Street Map Extension User Guide. Open Street Map Extension User Guide Version 1.0

IoT Mashups with the WoTKit

An Evaluation of Mashup Tools Based on Support for Heterogeneous Mashup Components

Composer Guide for JavaScript Development

Stable currents. Nick Veenstra. Developing against the Pure API

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

describe the functions of Windows Communication Foundation describe the features of the Windows Workflow Foundation solution

Business Data Catalog (BDC), 11, 21 business intelligence, 11 buttons adding to Ribbon interface, 37 making context-sensitive, 126

Toward a Distributed Data Flow Platform for the Web of Things

04 Webservices. Web APIs REST Coulouris. Roy Fielding, Aphrodite, chp.9. Chp 5/6

Introduction to Web Services & SOA

Oracle SOA Suite 10g: Services Orchestration

iway Integration Tools Getting Started Guide Version 8.0 and Higher

Lab 1: Getting Started with IBM Worklight Lab Exercise

ACM Technical Solution Architecture - Development and Deployment of ACM Solutions- ECM Fast Start Workshop 1Q2011

ActiveVOS Technologies

RESTful Web service composition with BPEL for REST

Distributed Orchestration of User Interfaces

ArcGIS for Developers: An Introduction. Moey Min Ken

Tools to Develop New Linux Applications

Manipulating Database Objects

End-User Development of Mobile Mashups Maristella Matera, Matteo Picozzi, Cinzia Cappiello

We recommend you review this before taking an ActiveVOS course or before you use ActiveVOS Designer.

New Face of z/os Communications Server: V2R1 Configuration Assistant

Oracle Service Cloud Integration for Developers Ed 1

Hosting RESTful APIs. Key Terms:

Regular Forum of Lreis. Speechmaker: Gao Ang

Model Driven Development of Graphical User Interfaces - Experience, Lessons Learnt and a Way Forward

Modelling the Reactive Behaviour of Scoped User Interfaces with Hierarchically-linked Statecharts

IBM Research Report. WebRB: A Different Way to Write Web-Applications

A Framework for Rapid Integration of Presentation Components

Lupin: from Web Services to Web-based Problem Solving Environments

A Grid-Enabled Component Container for CORBA Lightweight Components

SciX Open, self organising repository for scientific information exchange. D15: Value Added Publications IST

IBM WebSphere Application Server 8. Java EE 6 Feature Packs

This presentation is a primer on WSDL Bindings. It s part of our series to help prepare you for creating BPEL projects. We recommend you review this

JBoss SOAP Web Services User Guide. Version: M5

Node-RED dashboard User Manual Getting started

Skyway Builder 6.3 Reference

Rob Weir, IBM 1 ODF and Web Mashups

TeamSite Component Development

Oracle Service Cloud Integration for Develope

1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE.

The Now Platform Reference Guide

Oracle WebCenter Interaction: Roadmap for BEA AquaLogic User Interaction. Ajay Gandhi Sr. Director of Product Management Enterprise 2.

B. By not making any configuration changes because, by default, the adapter reads input files in ascending order of their lastmodifiedtime.

JSON is a light-weight alternative to XML for data-interchange JSON = JavaScript Object Notation

Web Front Technology: Interstage Interaction Manager

Learning vrealize Orchestrator in action V M U G L A B

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP

Solving Mobile App Development Challenges. Andrew Leggett & Abram Darnutzer CM First

Get Started on SOA. People Entry Point Interaction and Collaboration Services. Case for an SOA Portal

Web Robots Platform. Web Robots Chrome Extension. Web Robots Portal. Web Robots Cloud

There are a few important ways that Smalltalk is different then other languages:

ECLIPSE MODELING PROJECT

Curriculum Guide. ThingWorx

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management

Fundamentals: Managing and Extending Microsoft Office & SharePoint with EMC Documentum

Transcription:

Data-Centric Systems and Applications Florian Daniel Maristella Matera Mashups Concepts, Models and Architectures Chapter 8 Tool-Aided Mashup Development Figures

JSON formatted data Locally installed and running Data formatted as structured parameters HTTP calls REST wrapper UI wrapper UI widget Common component model, access mechanism/ protocol, data format RESTful Web service Running remotely JavaScript events SOAP wrapper SOAP messages XML payload SOAP Web service Fig. 8. Wrapping components into a unified view on native component models.

Simple Parameter Value mashart component User interface Type Binding URL Event is of type Parameter output input.. Value.. isoptional.. Operation Reference Constructor Fig. 8.2 Unified component model of mashart components for SOAP/RESTful web services, UI components and RSS/Atom feeds [90].

RSS feed URL M2 A data flow connector exactly one and one. A mashup must contain exactly one sink. Data flow connector Sink..N Filter Union Filter condition Fig. 8.3 Metamodel (M2) of a very simple data flow mashup language: it supports fetching di erent RSS feeds from the Web, computing their union and/or filtering them, and publishing the result again as an RSS feed on the Web (the sink). A data flow connector must always have exactly one and one.

NY Times : R: RSS feed DF : Data flow connector M http://rss. nytimes.com/... : URL DF2 : Data flow connector U : Union DF3 : Data flow connector BBC News : R2: RSS feed http://feeds.bbci. co.uk/news/rss.xml : URL F : Filter title contains 'IT' : Filter condition DF4 : Data flow connector S : Sink Fig. 8.4 Asimpledataflowmodel(M)complyingwiththemetamodelofFigure 8.3 expressed in an abstract syntax, i.e., a UML object diagram.

of the feed RSS feed: New York Times Connector Data flow connector Connector URL: "http://rss.nytimes.com/..." Union Filter Sink RSS feed: BBC News Condition: "title contains 'IT'" URL: "http://feeds.bbci.co.uk/news/rss.xml" URL attribute Filter condition Fig. 8.5 The simple data flow model (M) of Figure 8.4 expressed in a concrete syntax that highlights the semantics of the constructs and eases readability.

Fig. 8.6 AsimplepipethatenrichesanRSSfeedwithgeographicallocationinformation and plots it on a map (the Location Extractor component).

URL Builder Fetch Feed Filter Location Extractor Pipe Output M2 Value Component Parameter Data flow connector A pipe must contain exactly one pipe output component, which cannot be the of a data flow connector. XOR Config. par. Input par. Fig. 8.7 AsimplifiedmetamodelofYahoo!PipesforthepipeinFigure8.6.

Service component Data flow connector UI component Events and operations Component browser Composition canvas Fig. 8.8 AmashupmodeledinmashArt[90]. The model represents a simple application for the monitoring of compliance.

Parameter Type Value Static par. produces Dynamic par. consumes from to Constructor parameter Type Event Operation produces Parameter mapping Component Type renders Data flow connector Template contains..n M2 Placeholder Parameter mappings of a connector refer only to the parameters of the connectors's event and operation. Fig. 8.9 Metamodel of the mashart modeling notation based on the unified component model of Figure 8.2.

Fig. 8.0 A screenshot of Presto Wires for data mashups serialized in EMML.

Fig. 8. AscreenshotoftheApacheRavemashupenvironmentextendedbythe EU FP7 project OMELETTE to import/export OMDL-compliant workspaces [262].

Custom composition language supports based on Custom component description language supports Composition feature..n..n constrains Feature constraint implemented as..n Component feature Control flow feature Data passing feature Presentation feature Collaboration feature derives from..n Feature reference specification..n derives from Generic composition language meta-model integrates Generic component descriptor meta-model Fig. 8.2 Conceptual approach to developing custom mashup languages [254].

Control flow..n Join..N Split CfConnector..N Component Type Binding Endpoint Class SupportRefere ncepassing Syntax Operation Type Reference Data Type Definition Input Parameter ManualInput Optional Output Parameter Condition Expression Language DfConnector Global Variable Type DefaultValue Mashup Collaboration User Role Page URL belongsto Configuration Parameter feeds feeds Constant Value..N Viewport Component Data passing Presentation displays Fig. 8.3 The generic mashup language model bringing together the most common mashup features [253].

Selected language features 4 5 9 8 2 3 4 data_flow service_component REST_for_service data_component RSS_for_data atom_for_data min operation_per_component max operation_per_component request_response 3 6 6 5 6 min output_param_per_operation max output_param_per_operation min intput_param_per_operation max_n_intput_param_per_operation 2 7 7 8 9 manual_input configuration_param branch Fig. 8.4 Yahoo! Pipes example composition and set of respective language features

Mashup editor Mashup metamodel Mashup language Design canvas Help res Front-end Mashup execution dashboard Instantiation UI/API Runtime monitor Developer community Mashup mgmt. dashbaord User mgmt. Access rights mgmt. SLAs mgmt. Mashup lifecycle mgmt. Mashup runtime environment Code generator Interpreter Back-end Component runtime environment Authentication and security module Web server Invocation module Web server Debugger Test environment Comp. container Internet Data store Component registry Mashup repository Execution log User/AR registry SLA repository Fig. 8.5 Conceptual reference architecture of a mashup platform articulated into front-end, back-end and persistent data store.

Fig. 8.6 Screen shot of Yahoo! Pipes with the debugging tab open (bottom). The content of the tab is the output of the Fetch Feed component selected in the canvas.

Fig. 8.7 Screen shot of the JackBe Presto developer community website.

Application Application model Configuration files Repetitive code uses Individual code Generative architecture Generation templates Code generator Platform Infrastructure components Infrastructure components Infrastructure components Fig. 8.8 Code generation in architecture-centric MDSD. The generative architecture corresponds to the runtime environment in Figure 8.5.