Link for the presentation

advertisement
Team,
Rohit Mullangi
Krishna Gollapudi
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.
Editor Pane
Projects
and
samples
Output from GME can be viewed in user- specific GUI
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.
GME provides a template based
environment for mashup development.
- Template example
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
Sort and filter operations
are implemented effectively in
yahoo pipes.
-Sort example
- Filter example
gm:filter is a tag used for filtering
in-built user feeds but not external
feeds. gm:sort is also not
effectively implemented.
-Sort example
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.
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.
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.
Cross Browser
compatibility
IE & Firefox
CRUD operations on Data Yes, JavaScript API
feeds.
provides direct access to
the DOM and also allows
to perform CRUD
operations (create, read,
update, delete) on data
feeds.
Debugger
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.
Component models
Interfaces with the
component models.
Yahoo Pipes supports
DA and AL components
through operators that
provide access to
RSS/Atom feeds and
external Webservices.
All are fixed.
DA components have a
read-only interface, and
external Web services
have a Restful interface
based on JavaScript
Object Notation (JSON)
or RSS.
GME supports DA, AL,
and UI components. Al l
are flexible.
DA components are
typically interfaced via
markup, AL components
via JavaScript, and UI
components via both
markup and JavaScript.
Output Type
DA type outputs are
provided .
Orchestration Style
Flow-based style, defines
orchestration as
sequencing or partial
order among tasks or
components and are
expressed through flow
chart-like formalisms.
Support to Exception
handling and
transactions.
GME produces UI
output.
Event-based approaches
use publish–subscribe
models. They’re
particularly powerful
for maintaining
synchronized behavior
among components.
NO
Yes
Development Software
Yahoo Pipes provides a
pure visual draganddrop Ajax editor
targeted at users with
basic programming
skills.
Browser Requirements
Web browser with
support for the
XMLHttpRequest
JavaScript object.
Run Time
Requirements
computes and
assembles
pipes at the server side.
GME’s browser-based
textual Ajax editor
with syntax highlighting
and automatic tag
completion is targeted
at programmers.
Can be fully executed in
a standard Web browser.
Mashups are executed at
the server side and
have no particular
system requirements.
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
1 1/2 hr
3 hrs
2 hrs
depends on the application.
Easily takes about 5-6 hours
Build application using most
of the feature set
3hrs
Depends on the number of
modules
4 hrs
Debugging is done using
firebug.
Time taken while building a
mashup.
Slow, Canvas takes
time for the pipes to connect.
Sometimes it is frustrating to
wait on each action.
Fast, Once the program is
written it is compiled.
Compile time comparison on three
mashups with both tools
S
E
C
S
Amazon:
yahoo pipe:
http://pipes.yahoo.com/pipes/pipe.info?_id=b92ae575fa91bb19a938380de2ccb0
fe
GME : http://amazon.googlemashups.com
Deals:
yahoo Pipe:
http://pipes.yahoo.com/pipes/pipe.info?_id=592e5271d8ffe23733cd3c1ccffbcdaf
GME: http://dealsfordemo.googlemashups.com
News:
yahoo pipe:
http://pipes.yahoo.com/pipes/pipe.info?_id=88f607f0a211ce9a807304f5e9e8626
2
GME: http://gnews.googlemashups.com
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.
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.
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.
Download