24
Team, Rohit Mullangi Krishna Gollapudi

Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Embed Size (px)

Citation preview

Page 1: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Team,Rohit Mullangi

Krishna Gollapudi

Page 2: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Mashup: Web mashups are web applications generated by combining content, presentation or application functionality from different web sources.Web Feed : A Web feed (or news feed) is a data format used for providing users with frequently updated content . Rss and Atom are two popular formats of web feeds.Unix Pipeline : A Set of processes chained by their standard streams, so that the output of each process (stdout) feeds directly as input (stdin) of the next one.Component Models: DA type , AI type and GUI type.DA type: It is a type of component which provides the data for the mashup . Examples are rss feeds, Comma separated Value (CSV) files ., etc.AI type: It is a type of component which provides the application logic necessary to complete the mashup. For example webservices or javascript objects can be dealt as AI type components.GUI type: It is a type of component which provides the necessary graphical user interface for the mashup. For example components with html components can be considered as a GUI type component.

Page 3: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality
Page 4: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality
Page 5: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Editor Pane Editor PaneProjects and samples

Page 6: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Output from GME can be viewed in user- specific GUI

Page 7: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality
Page 8: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality
Page 9: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

The Google mashup editor invokes a short java script to perform the geo

lookup using Google Maps JavaScript API.

Content enricher aspect of the solution is thus tightly coupled.

Each pattern is implemented as its own and solution is composed

from the individual pieces in yahoo pipes.

Content enricher aspect of the solution is thus loosely coupled.

Page 10: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

GME provides a template based environment for mashup development. At run time the user defined templates present the data as a webpage. -Result example

Yahoo pipes doesn’t allow any templates for mashup development.

At run time the result of the mashup is provided in a standard template to the user. -Result example

- Template example

Page 11: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Sort and filter operations are implemented effectively in yahoo pipes. -Sort example - Filter example

gm:filter is a tag used for filteringin-built user feeds but not external feeds. gm:sort is also not effectively implemented. -Sort example

Page 12: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Example 1: gm:list gm:map gm:handleevent gm:pager

Example 2: gm:editbuttons gm:create Example 3: gm:tabs gm:section gm:container

Fetch Site Feed Fetch Data Fetch CSV Fetch Auto -Discovery Flickr Note: Annotation of feeds is done to provide a well formed solution to a mashup. For example ,Flickr can be searched by the tags filtered from a different rss feed.

Page 13: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Yahoo Pipes has a wide variety of output formats. - RSS - JSON - Email Alert - Mobile Alert - KML - PHP

Yahoo Pipes give an option to create a badge from the mashup and add it as a gadget to Type Pad, Blogger, iGoogle, Word Press and also embed into any application.

In the other hand, Google Mashup editor is away from these advantages. The only output format that comes out of it is as a “.com” web application. The resulting mashup is available for Google reader and igoogle only.

Page 14: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Google Mashup Editor:All feeds are converted to Atom format before parsing the

information.All gm tags have a “ref “ attribute which uses Xpath query to fetch the data from the feed.Mashups are cached in the backend. Experiments conveyed that Google hits the source approximately in every 10 minute durations.

Yahoo Pipes:All feeds are used in the same format as they come in.Mashups are cached in the backend. Even though you hit the mashup frequently, original source is hit only in and about 3 to 17 minute durations.

Page 15: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Cross Browser compatibility

CRUD operations on Data feeds.

Debugger

IE & Firefox

Yes, JavaScript API provides direct access to the DOM and also allows to perform CRUD operations (create, read, update, delete) on data feeds.

No inbuilt debugger, need to install firebug and should use Firefox for this facility.

IE7&firefox

No, feed is retrieved but CRUD options cannot be performed.

Yes, Inbuilt debugger is present and is very useful to compile each module and correct the errors.

Page 16: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Component models

Interfaces with the component models.

Yahoo Pipes supports DA and AL componentsthrough operators that provide access toRSS/Atom feeds and external Webservices. All are fixed.DA components have a read-only interface, and external Web services have a Restful interfacebased on JavaScript Object Notation (JSON) or RSS.

GME supports DA, AL, and UI components. Al l are flexible.

DA components are typically interfaced viamarkup, AL components via JavaScript, and UIcomponents via both markup and JavaScript.

Page 17: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Output Type

Orchestration Style

Support to Exception handling and transactions.

DA type outputs are provided .

Flow-based style, defines orchestration assequencing or partial order among tasks orcomponents and are expressed through flowchart-like formalisms.

NO

GME produces UI output.

Event-based approaches use publish–subscribemodels. They’re particularly powerfulfor maintaining synchronized behavioramong components. Yes

Page 18: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Development Software

Browser Requirements

Run Time Requirements

Yahoo Pipes provides a pure visual dragand-drop Ajax editor targeted at users with basic programming skills.

Web browser with support for theXMLHttpRequest JavaScript object.

computes and assemblespipes at the server side.

GME’s browser-based textual Ajax editorwith syntax highlighting and automatic tagcompletion is targeted at programmers.Can be fully executed in a standard Web browser.

Mashups are executed at the server side andhave no particular system requirements.

Page 19: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Start up To get a higher level view of the tool and to build a small application.

Transition To understand all the features provided by the tool

Build application using most of the feature set

Time taken while building a mashup.

1 1/2 hr

3 hrs

3hrs Depends on the number of modules

Slow, Canvas takes time for the pipes to connect. Sometimes it is frustrating to wait on each action.

2 hrs

depends on the application. Easily takes about 5-6 hours

4 hrs Debugging is done using firebug.

Fast, Once the program is written it is compiled.

Page 20: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

S E C S

Compile time comparison on three mashups with both tools

Page 21: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Amazon: yahoo pipe: http://pipes.yahoo.com/pipes/pipe.info?_id=b92ae575fa91bb19a938380de2ccb0fe GME : http://amazon.googlemashups.com Deals: yahoo Pipe:http://pipes.yahoo.com/pipes/pipe.info?_id=592e5271d8ffe23733cd3c1ccffbcdaf GME: http://dealsfordemo.googlemashups.comNews: yahoo pipe: http://pipes.yahoo.com/pipes/pipe.info?_id=88f607f0a211ce9a807304f5e9e86262 GME: http://gnews.googlemashups.com

Page 22: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Which tool users have to prefer?1.Is the expectation that you will quickly have a mashup?

Sol: Yahoo Pipes

Reason: Gui of pipes is easier to understand for startup mashups. Toughness of

mashup is not considered here.( user is layman with no skill set)

2.Does this need to be behind the firewall? Sol: Google Mashup Editor

Reason: GME gives user access to DOM object which makes easier to apply security.

3.Do you need guaranteed uptime?

Sol: Google Mashup Editor

Reason: In our experience, we understood that Google’s network handling mechanism is better

than yahoo. If you can ignore this minor problem, then both tools offer guaranteed

uptime.

4.Do you need the mashup to be hosted in different applications?

Sol: Yahoo Pipes

Reason: Pipes let you add your mashup to many other applications like Type Pad, Blogger,

iGoogle, Word Press.

5.Do you want the output in different data formats or maps?

Sol: Yahoo Pipes

Reason: Pipes let you have the output in different data formats like Rss, JSON, KML, PHP.

Page 23: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Which tool users have to prefer?

6.What types of inputs do you need to pull?

Sol: Depends.

Reason: If your are working on data feeds, both tools can handle. But if you are considering to

give user specific inputs then GME has an upper hand due to it’s CRUD (create, read ,

update, delete) feature on any file.

7.Does the user has good programming skills?

Sol: Google Mash Up editor

Reason: If the user has good programming skills, he/she would prefer to code than to use time

consuming GUI to build a mashup. It means that if the user has no programming skills,

he/she will be confined with Yahoo Pipes (even though time consuming, does the job

perfectly without having to learn new programming language)

8.Need good documentation to learn the skill set of the tool?

Sol: Google Mashup Editor

Reason: GME has better documentation when compared to Yahoo Pipes. Each concept is clearly

explained. In Yahoo Pipes many features are left unexplained to the user. For example:

There are four flags shown as radio buttons attached to each rule in REGEX module.

These flags are unexplained.

Page 24: Team, Rohit Mullangi Krishna Gollapudi. Mashup : Web mashups are web applications generated by combining content, presentation or application functionality

Yahoo Pipes and Google Mashup editor are two different but most popular tools to create mashups. They have known differences and known advantages to disadvantages. Choice can be made by your application and one tool can be selected from the options provided in the last two slides.