Do you have your own web-based application and are looking to add business intelligence (BI) capabilities to it? If so, there are a lot of technical points you need to keep in mind. Let me help you make it easier, by outlining 9 criteria that you need to consider when choosing an embeddable analytics platform.
 What will it ultimately look like?
The first and most important question is – what it looks like to embed content in your own pages. When embedding, you want to make sure that options can be disabled as you don’t want it to appear like one application is simply hosting another. You need to make sure that you are showing content directly in your application as if the content was part of your application.
Try it yourself - https://www.w3schools.com/code/tryit.asp?filename=FF1RATN7X4RS
Note: This script is looking for three important inputs.
- The address of your Dundas BI server, which is usually installed at your corporate location or hosted by something like Amazon.
- The type of content to be embedded. In our case, a Dashboard.
- The ID of the dashboard to be embedded
Every single business intelligence vendor that you speak to, is going to tell you that their platform is flexible. When you remove the sales people from the equation and take an honest look at the platforms themselves, there are night and day differences between the least flexible platforms and the most flexible ones. Flexibility is especially important for embedded situations as you typically have a changing landscape. Once the first version of your application is launched and user feedback is collected, many changes and features will get requested in the short term. You should never pick a tool that barely meets your minimum initial requirements. If you do choose a tool that only needs the minimum initial requirements, you are going to find yourself either starting over with the correct platform or completely stuck due to budgets and contracts.
Dundas BI is the most flexible business intelligence platform available today and every aspect of the application can be customized. From data to visualization, everything works the way you want it to, and everything can be changed.
 User Security and Single Sign-On
The most commonly requested type of security is typically Single Sign-On (SSO). SSO is an authentication process that allows multiple applications to be accessed by using a single set of login credentials. If you have two applications, one embedded within another, it would look silly to the user if they must enter their user name and password twice when they try to go into the reporting section of your application. SSO allows you to have user accounts and logins that are taking place in your own tool/application, which will also grant automatic access to your embedded tool.
In Dundas BI, SSO is supported using several different technologies, one of the most common being SAML 2.0 and the process to login would look something like the following (which would all happen automatically without any actual intervention from a user):
- User requests access to content in Dundas BI
- User is sent to a third party to perform the login (if they’re already logged into the third party, they can skip this step)
- User is given a set of ‘claims’ which can be used to allow entry into Dundas BI
For those curious in specifics, other protocols are also supported:
- SAML 2.0
- OpenId Connect
- Azure Active Directory
- Microsoft Account
If you need to use a protocol that isn’t directly supported above, you can also utilize the Dundas BI open API, allowing a developer to create their own SSO to any other system. Additionally, you could handle the entire login process through the API and programmatically log your users into Dundas BI on their behalf ensuring that they don’t need to see a login screen.
 User or Row-Level Security
Another form of security that is very popular, is the concept of User Security or Row-Level Security. The idea is that you can have content that needs to change based on different users logging in. If you had dashboards for a chain of Pizza Restaurants, for example, each manager of each chain should be able to open the same dashboard but only see their own data. Here is another example where users see the same dashboard but only for their own country.
Example 1 – User logging in from Africa
Example 2 – User logging in from Asia
Some Business Intelligence tools will force you to create a separate dashboard for each of the different users in the system. This is a lot of overhead that you just don’t need.
Be sure to think about the self-service experience that you want to give your users and make sure that you choose a tool that can meet your self-service needs. From simple to complex, there is a large spread in terms of how much self-service you might want to offer. In a simple embedded case, you may only need to provide users with filters, drill-downs and some sorting capabilities. In a more advanced case, you may wish to give users full development rights, so that they can connect to their own data and build their own dashboards from scratch. When considering self-service, you need to challenge the vendor to meet the type of self-service that you require since many will only offer you a single option.
In Dundas BI, you can customize the type of experience that makes sense for your users. Providing too many or too little capabilities can have a negative impact on your users, so you need to make sure you’re well aligned.
 Data Governance
If you’re thinking of any sort of self-service, the concept of data governance needs to be on your mind. Data governance is the management of data regarding usability, integrity and security. If you have any thoughts of letting users perform their own data activities, data governance needs to be top of mind. You need to control the data that is exposed to your users to ensure that it is correct and to make sure they are not gaining access to sensitive information.
Many business intelligence tools offer self-service, but few give you any control to set up the data property for them. The last thing you want to do is give less technical users full access to an entire database so that they can:
- Create incorrect queries and make decisions based on incorrect information
- Cause performance strain on your production database, affecting other processes
- See data that is beyond their security level
In Dundas BI, you can create something called a Data Cube, which is a pre-created view of the data you wish to provide. A developer creates a view ensuring the results are correct, the performance isn’t impacting your core systems, and the content is properly secured based on the user accessing the content.
 While Labeling
You've already got your own application and own branding. When it comes time to start meshing them together as a single application, you don't want to have dashboards and reports that are going to look completely different to your users. How many tools have you seen when you click on something like the ‘accounting module’ and it looks and feels like another application? It feels like another application because it is, and it’s not been white labeled!
Dundas BI allows you to white label the application so that you can 100% match the branding of any other application. Here is an example where the login screen is changed from the default to meet the style of another application.
*The above example is a superficial change and it is up to your imagination to decide how far you want to go with white labeling!
 API Support
Similar to white labelling but not from a cosmetic sense, having a robust API is paramount to having multiple applications work together. You may have cases where you need to automate operations such as the creation of data connections or even user administration. API support gives you the ability to code a connection between application to make your embedding seamless. Additionally, you may have something about your application that gives you a reason to want to extend a business intelligence tool. For example, if you offer an accounting package with the intent to add business intelligence capabilities, you may want to embed a set of formulas not offered typically offered in BI tool. A robust API would allow you to add these extensions to better help your users.
Dundas BI offers APIs in many areas of the application
- Account/Administration APIs
- Content Delivery APIs
- Data Connection APIs
- Data Retrieval and Writeback APIs
- Data Visualization APIs
- Export API
- Formula API
And many, many more…
 Flexible Licensing
Licensing is a soft requirement rather than a pure technical problem, but a poor licensing model can completely derail your plan for an embedded application. As an example, if you have ten thousand users that you need to push content out to – do you need to buy ten thousand licenses? For many business intelligence tools, the answer is yes!
Dundas BI has multiple and flexible licensing models that can help keep your costs under control for many different scenarios. Options are available for seat licenses in cases where you have a small deployment and want to keep costs down. For largest deployments you can use concurrent licenses to allow for the sharing of user accounts. In complex scenarios, you can combine the two to build something to help you balance the cost and flexibility of your users needs.
Choosing an embeddable tool is a big deal and with this checklist, you should at least cover the core criteria for an embeddable business intelligence tool. Happy Hunting.
About the Author
Jeff Hainsworth is a Senior Solutions Architect at Dundas Data Visualization with over a decade and a half of experience in Business Intelligence. He has a passion for building, coding and everything visual – you know, shiny things! Check out "Off the Charts... with Jeff", his platform for great content on all things analytics, data visualizations, dashboards, and business intelligence. There’s something for everyone!More Content by Jeff Hainsworth