Situation Applications and Mashups
Another item at the heart of Web 2.0 is the concept of situational applications or a mashup. These are not the same thing exactly, but they are very closely related. The idea is that end users want to take control, to combine data and data displays to build new views that show information in new ways. Putting the user in control can drive many new ideas for how information can be delivered and used within your website. We typically think of situational applications as a short-term integration that will enable some growth or new understanding by the users.
There are several types of situational applications. IBM's WebSphere Portal comes to mind as a leader in this type of approach by building on the idea of composite applications. Composite applications are one of the core benefits that a portal can bring to an organization. The ability to combine portlets on a page displaying complementary data can allow you to provide a huge benefit to the end user. Composite applications can often be taken a step further and be combined with a business process engine to enable a workflow-type process around the use of these portlets.
Mashups are similar to composite applications, where data from multiple sources is combined into an integrated view. The most common example of this that you might find is data that is displayed on a map view, showing location information about a particular data set. These common types of mashups generally consist of a couple of views: one to help choose a particular item from the data set and a second view or section that actually plots the chosen data on the map. One example of this might be plotting customer locations, or sales reps, into a map of a specific area. You often see websites that display the closest store locations within a specific area, such as a ZIP code, or close to a specific address (see Figure 1.6).
Figure 1.6 Using mashups
Mashups can take several forms. Mostly the difference is around who actually creates the mashup. The enterprise can provide specific mashups to end users by combining business data from different sources into a unified interface. This type of mashup can also include data sources from external or public sources or APIs. Additional end users or consumers design their own mashups based on information of interest to them. From a business perspective, the idea of allowing end users to build their own mashups can be a powerful force. Technically, there are still governance, performance, and security issues to consider when allowing end users control to mash company data.
One of the key components in mashups is the idea that the user interface is separated from the data or service itself. This is what makes this type of situation application reusable, allowing fine-grained access to data through these reusable services. The idea is that reusability makes the business more agile and capable of building situation applications as required to respond to business criteria or questions.
We have to take some care when enabling end users to create situational applications or create their own mashups. Again, security, performance, and manageability concerns come to mind as end users take more control over how resources are used within the website. From an IT perspective that is responsible for the reliability of the site, it is important that these items not be compromised while trying to deliver new capability.