Advertisment

Tech Sizzlers: Mix n Match

author-image
CIOL Bureau
Updated On
New Update

NEW DELHI, INDIA: Originally referred to as a practice in pop music of producing a new song by mixing two or more existing pieces, mashups have gradually found a way in technology. It is now defined as a web application that combines data from more than one source into a single integrated view/screen..

Advertisment

For instance a sales company might want to use a CRM tool for maintaining its customer records, Google Maps to pinpoint customer location and an SAP ERP system to get details of transaction made for a particular customer. Merging all this data into a single view is the basic functionality of mashups.

The content used in mashups is typically sourced from third party sources via public interface or API (web services), though some believe that cases where private interfaces are used should not be counted as mashups.

Three major flavors available are Consumer Mashups (that combine visual and data elements from two or more sources); Data Mashups (combine multiple data sources into a single source) and Business Mashups (solve business problems typically business-driven and allow combining visual and data elements from multiple sources within a process-driven framework).

Advertisment

However Mashups should be differentiated from simple embedding of data from another site to form compound documents. A site that allows a user to embed a YouTube video for instance is not a Mashup site.

Architecture of Mashups

According to IBM, a mashup is architecturally comprised of three different participants that are logically and physically disjoint: API/content providers; the Mashup site; and client Web browser.

Advertisment

The API/content providers provide content to be mashed. Mashups that extract content from sites like Wikipedia, TV Guide, and virtually all government and public domain websites do so by a technique known as screen scraping. In this context, screen scraping connotes the process by which a tool attempts to extract information from the content provider by attempting to parse the provider's web pages, which were originally intended for human consumption.

The Mashup site is the place where the Mashup is hosted. Interestingly enough, just because this is where the Mashup logic resides, it is not necessarily where it is executed. While Mashups can be implemented similarly to traditional web applications using server-side dynamic content generation technologies like Java Servlets, CGI, PHP or ASP, mashed content can also be generated directly within the client's browser through client-side scripting (that is, JavaScript) or applets.

Often Mashups use a combination of both server and client-side logic to achieve their data aggregation. Many Mashup applications use data that is supplied directly to them by their user base, making (at least) one of the data sets local.

Advertisment

The client's Web browser is where the application is rendered graphically and where user interaction takes place. Mashups often use client-side logic to assemble and compose the mashed content. The other important component of Mashup architecture is Ajax that is a web application model rather than a specific technology and includes several technologies focused around the asynchronous loading and presentation of content:

Challenges

While data Integration is the number one concern for any enterprise IT, mashup developers also face the analogous challenge of deriving shared semantic meaning between heterogeneous data sets.

Advertisment

In addition to missing data or incomplete mappings, the Mashup designer might discover that the data they wish to integrate is not suitable for machine automation and it needs cleansing.

Moreover the Mashup developers also have to face the problem between intellectual property protection and consumer privacy. Unwitting content providers (targets of screen scraping), and even content providers who expose APIs to facilitate data retrieval might determine that their content is being used in a manner that they do not approve of.

With web application still in the infancy stage, and with developers producing Mashups in their spare time, they might not also be aware of security issues.

Advertisment

Mashups in India

With Mashup platforms market ready now, an entire ecosystem of Mashup technology and data providers is emerging now to complement these platforms. However adoption is still not very high in India; barring a handful of SMBs especially the ones with less than 500 employees.

Mashups have originated and remained very popular in the public/consumer portals like Facebook, Yahoo, Google etc and in India too, the trend remains the same.

But before Mashups can make the transition from being cool toys to sophisticated applications, a lot of work needs to be done to implement robust standards, protocols, models and toolkits.

And for this to become a possibility, software development companies, content providers and other stakeholders would have to see value in Mashups and create viable business models.

tech-news