46 www.computer.org/internet/ IEEE INTERNET COMPUTING
Tool-Assisted Mashup Development
To speed the overall mashup development proc-ess, but also to enable even inexperienced endusers to mash up their own Web applications,numerous mashup-specic development toolsand rameworks have recently emerged. Theseinstruments typically come with a varietyo eatures and a mixture o composition ap-proaches. A close look at them lets us identiythe open issues and research challenges charac-terizing the mashup phenomenon.For presentation purposes, we selected themost popular or representative approaches o end-user mashup tools and show how they cansupport the HousingMaps application’s devel-opment. We discuss a ew alternative or com-plimentary approaches in the “Related Work inReusable Components” sidebar.
Yahoo Pipes (http://pipes.yahoo.com) lets you mix popular data eeds to createdata mashups via a visual editor. A pipe is a data-processing pipeline consisting o one or more datasources (or example, RSS/Atom eeds or XMLsources) and a set o interconnecting operators,each o which perorms a specic task. It includesoperators or manipulating data eeds (or exam-ple, sorting or ltering) and operators or eaturessuch as looping, regular expressions, or counting.It also supports more advanced eatures, such aslocation extraction (or example, geocoordinatesidentied and converted rom location inorma-tion ound in text ragments) or term extraction(or example, keywords). Yahoo Pipes aims to letusers design data-processing pipelines that lter,transorm, enrich, and combine data eeds andare again exposed as RSS eeds.Consider how Yahoo Pipes could aid thedevelopment o the HousingMaps example.Because Pipes doesn’t provide user interaces— that is, it outputs an RSS eed — we can’timplement the user interace shown in Figure1. Instead, we could use Pipes to process theCraigslist eed and identiy location inorma-tion (geocodes) by leveraging the pipes’ locationextractor. We could use the identied locationinormation to augment the Craigslist eed witha link that lets users display the property’s ad-dress on the map by passing the geocodes toGoogle Maps.
Google Mashup Editor.
GME (http://editor.googlemashups.com) provides a template-based envi-ronment or mashup development. It oers aset o standard modules that lets users encap-sulate and lay out external data. For example,the
module represents an RSS/Atom eedas a list, whereas the
Popfy (www.popfy.ms) o-ers a component-based, visual environment or developing mashups. In Popfy, reusable com-ponents, or
, can act as middlemen be-tween externally provisioned services, such as Web services,