Web 2.0 and Business Intelligence – How Do They Fit Together? Part 4

Originally published 2 April 2008

Declaration of Independence
Within this article, I will occasionally refer to products and use screenshot examples of various products as an aid to communicating specific points. These examples are chosen at random and in no way represent any endorsement on behalf of the author to any product in the marketplace.
End of Declaration
 
In my first article of this series, I highlighted several Web 2.0 technologies. These include:

  • RSS and ATOM feeds

  • Web services

  • JavaScript and AJAX

  • PHP/Pearl/Python scripting

  • JSON

  • Programming Frameworks e.g. Adobe Flex, DOJO, Ruby on Rails, OpenLaszlo and many others.

  • Folksonomies

  • Mashups

  • Blogs

  • Wikis

So far, we have discussed all of these with the exception of one. In this fourth and final article in my series on Web 2.0 and business intelligence (BI), I will address this last Web 2.0 technology. This is the issue of mashups.

The whole idea about Web 2.0 is to use the web itself as a development platform. What does that mean? Well, if you take a step back and look at the forces at work here, we are seeing a number of things emerging. These include:

  • External web services are rapidly becoming available on the web as businesses try to set up standard ways to integrate business-to-business processes. They are also appearing under the banner of software as a service (SaaS). These external web services are available to application developers within the enterprise that want to enrich and add value to applications. Examples of external services include services available from popular sites like Yahoo!, Google, Amazon and Flickr, from commercial companies such as banks, airlines and retailers, as well as from hosted application vendors such as SalesForce.com and BI vendors offering hosted BI services -- e.g., SAP (Business Objects), IBM (Cognos) and Oracle.

  • Internal web services are gradually appearing within the enterprise, offering up transaction processing services, analytical services, collaborative services, content services and data integration services on-demand.

  • Service-oriented development offers up a new way to build applications. This new way is based on incremental application development where applications can be built up gradually offering more and more functionality.

  • REST offers an easier way to invoke web services either within the enterprise or on the Internet.

  • A new generation of rapid development tools based on programming frameworks are making it much easier to build web applications and therefore fuelling the rise of the individual business developer (not IT developer) who can do a lot on his/her own.

  • New rich interactive applications can be built with these rapid development tools that make use of AJAX, Flash and other similar technologies to offer a much more natural browsing experience.

  • Development is now becoming browser agnostic (i.e., works on any browser) and is starting to become device independent (i.e., works on any device).

  • Last but not least is that all these services offer up data that can be combined or “mashed up” in order to offer even greater business value.

What Is a Mashup?

The last question remaining in this Web 2.0 series is: What is a mashup and how does it relate to business intelligence?

The idea of mashups is very simple. Combine data from multiple services to provide more valuable information. Figure 1 shows a retail example of a BI mashup that combines geographic map information with business intelligence on particular retail stores. In this case, the user can see inventory and order value for each store in the San Francisco geographic area. Each store location is visible on the map, and as the user rolls his/her mouse over the store, the business intelligence is displayed in a simple concise graph to show the required information.


alt

So how does this work? This kind of visual output can be served up by a custom built mashup server or by a purchased mashup server. Either way, the mashup server can take data feeds from multiple services and combine them. If you wanted to build a custom mashup yourself, an example architecture that might be considered is shown in Figure 2.

alt 

I have taken one of my charts from Part 2 of this series and adapted it to mashups in Figure 2. Here, we see a web page is requested that has JavaScript in it. The JavaScript then executes and calls a proxy requester in the mashup server that in turn accesses map information (e.g., Google Maps) via a SOAP or (preferred) a REST request. XML data is returned from this service, and then a remote BI service is also invoked using the same mechanism. Business intelligence is returned in the form of XML data, and then integration logic can combine the data (mash it up) before sending it back to the browser. At the browser, JavaScript and XSLT transform the data into XHTML before displaying the mashup in the browser in a form that would look something like Figure 1. All this happens without refreshing the whole screen. Note that the data from the services could be filtered during mashup.
 
The other way to create mashups is the buy option (i.e., to buy a mashup server from vendors like Kapow and IBM). Other mashup editors include Microsoft PopFly, Yahoo Pipes and Google Mashup Editor. Also, EII vendors such as Denodo are also pushing into this space. Figure 3 shows an example of the IBM Mashup Hub. This server takes data feeds and mashes them together to provide richer information. Note here that mashups separate the mashing of data from the presentation of data. Therefore, the data can be presented using a variety of mechanisms once it has been mashed. In the case of the IBM Mashup Server shown in Figure 3, the data is presented to the user using a presentation component called QEDWiki. When I first looked at this product all I could think about was that it looked similar to ETL workflows. Essentially, data such as RSS feeds and XML data from remote web services is taken in by the mashup server, any necessary filters applied, and the ‘mashed’ output made available for presentation.

alt 

Various output formats can be rendered by a mashup server (e.g., RSS, ATOM or even XML, which can be passed to browser side JavaScript and XSLT). I see no reason why this output could not be made available to portals, Office applications (e.g., Microsoft Outlook 2007 RSS feeds), wikis and other applications. Therefore, this means that business intelligence can be combined with other information without any programming and made available on-demand to offer up even more valuable information.

This completes my four-part series on Web 2.0 and business intelligence. I would be most grateful for you feedback as to how you are using Web 2.0 and business intelligence in your organisations – and for what business gain (mferguson@intelligentbusiness.biz).

Recent articles by Mike Ferguson

 

Comments

Want to post a comment? Login or become a member today!

Be the first to comment!