Composite applications: mashups

Over the years, the dominant application platform has evolved. Today, the network itself is the application development platform. In earlier Web applications, the user (client) retrieved information from a single Web server. Soon people began developing applications that would present information from more than one source.

For example, UPS allowed Amazon and other customers to retrieve information from the UPS database and present it on their Web sites. You might think of this as a client-multiple server as opposed to a client-server application.

This service was available only to large UPS customers and they had to learn the UPS proprietary application programming interface (API) to use it.

As time went on, others wanted to do similar things, so Microsoft and others developed standards and development tools to simplify the creation of Web services for sharing database access and data processing.

Today, companies realize they cannot develop all of the possible applications that could use their databases and services, so they expose them by publishing APIs for accessing them. This short recording presents several examples of mashups. Google Maps was one of the first services to expose their APIs to the public. I was able to build the following applications very simply by calling functions provided by Google.

Web services allow developers to add capability with little effort. In these examples, a few lines of code creates an application with access to a massive database and operations like scrolling, zooming, adding notes, etc. These are simple demonstrations of the concept, but a mashup can involve more than one service and be quite useful. For example

One may wonder what motivates Google to expose the Map API even though they must pay for server space and bandwidth to deliver maps. They hope to encourage thousands of creative developers to build applications for Google Maps, far exceeding what they could do on their own (like the Wikipedia). This enhances Google's brand and some applications will involve links to advertisements. They can also add premium APIs for a charge at a later date.

Although this is a free service to developers today, they should be cautious since Google could change their API, begin charging for access, or even go out of business. Developers of mission-critical applications will wish to enter into contractual business relationships with service providers.

Selected articles on Web services:

Mashup directories:


Disclaimer: The views and opinions expressed on unofficial pages of California State University, Dominguez Hills faculty, staff or students are strictly those of the page authors. The content of these pages has not been reviewed or approved by California State University, Dominguez Hills.