We use cookies and other similar technologies (Cookies) to enhance your experience and to provide you with relevant content and ads. By using our website, you are agreeing to the use of Cookies. You can change your settings at any time. Cookie Policy.

Blog: Wayne Eckerson Subscribe to this blog's RSS feed!

Wayne Eckerson

Welcome to Wayne's World, my blog that illuminates the latest thinking about how to deliver insights from business data and celebrates out-of-the-box thinkers and doers in the business intelligence (BI), performance management and data warehousing (DW) fields. Tune in here if you want to keep abreast of the latest trends, techniques, and technologies in this dynamic industry.

About the author >

Wayne has been a thought leader in the business intelligence field since the early 1990s. He has conducted numerous research studies and is a noted speaker, blogger, and consultant. He is the author of two widely read books: Performance Dashboards: Measuring, Monitoring, and Managing Your Business (2005, 2010) and The Secrets of Analytical Leaders: Insights from Information Insiders (2012).

Wayne is founder and principal consultant at Eckerson Group,a research and consulting company focused on business intelligence, analytics and big data.

Suppose you are an applications developer who wants to include reports or dashboards in your final product or perhaps give users the ability to explore data visually without boundaries, which is the current rage in this era of "big data." Do you build the BI functionality yourself or do you buy it from a reputable business intelligence (BI) vendor and then embed it into your application?

There are pros and cons to both options, but since BI tools have matured significantly in the past 20 years and now run on modern hardware, software, and internet platforms, it's likely that you'll opt to embed an existing BI product rather than invest the time and resources required to build your own BI capabilities.

Why Build?

Nonetheless, there are reasons why you might want to roll your own BI functionality. Control is perhaps the biggest factor. When you build your own BI functionality, you get just want you want and nothing more or less. When you tightly integrate BI functionality into your application, you can deliver an exquisite experience for users. Users can flow seamlessly from one set of functionality to another without having to launch a separate application with its own look and feel. This degree of integration might be particularly important if analytics is one of the primary features of the overall product.

But there are other reasons as well. Building your own capabilities might make sense if BI tools don't support the functionality you need. Or, perhaps it's quicker to build your own capabilities than integrate a commercial BI tool with your application. And finally, you avoid licensing and royalty costs when you build your own BI functionality and you don't have to worry about handing off support calls to a third party.

However, most application developers simply slip into becoming BI developers when they decide to add a chart or table to their application. They mostly use open source libraries to keep costs low. But over time they create more and more BI content, which they have to maintain and enhance. In essence, they end up creating a BI platform, which becomes a huge time sink. Although they don't know it, these developers need access to a low-cost BI platform which looks and feels like low-cost charting libraries but supports the full life cycle of BI development.

Why Buy and Embed?

Despite these benefits, more companies choose to embed third party BI software into their products or applications rather than build their own BI. The primary reason is that for many developers, BI is not a core competency and they don't want to divert precious time and resources into building, maintaining, and extending a BI tool. It's much simpler to outsource these capabilities to a trusted third party who lives and breathes BI for a living and can keep up with all the latest developments. Embedding commercial BI tools into your application enables your development team to focus on what it does best: building the features and functions of the core application.

Moreover, embedding third party software instantly enhances your application or product with best-of-breed BI capabilities. This makes your application more appealing and desirable. In addition, the third party invests its own resources to enhance the product on a continuous basis, ensuring your application always contains the most modern and up-to-date BI functionality. And embedding a third party product accelerates your time to market. Rather than building BI functionality from scratch, you simply integrate your application with a third party BI program using a high-level API, which are increasingly Web-based and easy to learn. Finally, the right BI vendor can work on your behalf, promoting your (commercial) product in the marketplace and serving as a channel for additional sales.

Things to Consider

If these benefits compel seem worthwhile, and you decide to embed a commercial BI product in your application, you should consider a few things.

BI functionality. First, not all BI products are alike. You need to find a product that supports the BI functionality you need. And that depends on the types of users who will be using your product and how they want and need to access and analyze information. For example, casual users like executives and managers usually simply need to monitor key business processes. As such, they generally need simple, interactive dashboards that consolidate information, display visual metrics, and let users click to drill down to more detailed information. Power users, on the other hand, such as business analysts will want to explore data, add dimensions, create calculated fields and custom groups, and author their own reports and dashboards. Most BI tools are either better suited to casual users or power users, but usually not both.

Rich API. Second, you'll need to evaluate the depth, breadth, and accessibility of the application programming interface (API) that enables you to plug the BI tool into your application. Ideally, you want to be able to access the full range of functionality offered by the BI tool, as well as create a custom look and feel that matches your application's graphical interface (i.e., "white labeling").

A prior generation of BI tools required you to interleave BI code with your own application code. (See "Evolution of Embedded BI"). Today, BI vendors who seriously pursue the embedded BI market offer simple Web-based APIs (e.g. REST) with Javascript that interact with a BI engine running on a separate server from your application. This means that the embedded BI application imposes a light footprint on your application: it can be upgraded separately and can run on a separate physical server to optimize performance and scalability.

Time and effort. Although embedding a commercial BI product saves time, don't underestimate the effort required to integrate the tool into your application. You still need to configure the graphical interface, create metrics and populate them with data, establish dimensional hierarchies and drill paths, create analytical workflows that update application content or trigger alerts, and pass through security tokens to ensure users only see authorized reports and data. Often, commercial BI tools lack a critical piece of functionality that an application requires, and either the BI vendor or the application developer or both working together must build it from scratch. All this takes time and effort; embedding is never as quick and easy as most developers expect.

Authoring environments. The best BI tools for embedding offer a simple but powerful authoring interface that makes it easy for developers to create custom reports and dashboards and plug them into their applications. The last thing developers want to do is learn a new development environment so the simpler the better.

And to be honest, some developers would rather not learn a new authoring environment at all; they would prefer to access BI components within their own Java or .NET development environments. And if they develop cloud-based applications, they would rather provision BI services from their platform-as-a-service provider (e.g. Amazon Web Services) and use the same utility- or subscription-based licensing scheme (e.g. hourly usage rate or monthly user subscriptions.) These are the developers I mentioned above who inadvertently slip into building a BI platform.


A few BI vendors, such as Jaspersoft, Logi Analytics, Pentaho, and Actuate, have positioned their products to appeal to software developers who want to embed BI into their applications. These vendors tip the "build versus buy" scale in favor of embedding third party BI functionality. They offer rich modern APIs, simple yet powerful authoring environments, cloud-friendly server-based processing, and generous licensing terms. Many also have created forums where developers can share ideas, troubleshoot issues, and, in some cases, market their applications and functionality.

Posted June 4, 2013 6:58 AM
Permalink | No Comments |

Leave a comment

Search this blog
Categories ›
Archives ›
Recent Entries ›