Many years ago, I had a customer who was a non-profit organization run by a religious order of monks. They prided themselves on being quite self-sufficient for their IT needs that were handled by some of the monks themselves. However, we supported the operating system and software that they used so they would call us for help from time to time.
One day they called to ask if we could perform an assessment of their main application as the monk, who had created and maintained it, had sadly passed away (he was in his 80’s).
We happily obliged but the senior consultant I assigned to do the assessment called me up on the second day in a panic. He explained that the application was not using the file access system delivered with the software. The old monk had apparently decided to write his own file access system and use that instead. In addition, there appeared to be no source code for this custom file access system and nobody had any idea where the old monk had kept it!
Basically, the organization had 2 choices. Have somebody attempt to modify the existing application (they did have the source code for that) to use the file access system of the software they ran on or completely replace the application. Both options would be expensive, but the first choice less so. We ended up doing a 6-month project with a couple of monks to modify the application to use the standard file access system.
I have seen too many similar situations like this over my career and, unfortunately, they continue.
In the world of BusinessObjects, I have seen universes and reports filled with custom code to the point of being both performance nightmares and unmaintainable.
Often these issues occur due to the developer not knowing the BI tools and sometimes, not having enough time to learn them along with the pressure from the business to deliver something quickly.
Of course, BI tools like BusinessObjects were created specifically for Business users to build their own reports – you drag and drop objects on your screen and the SQL is automatically generated for you and mapped back to your data sources through the magic of the universe and the semantic layer.
However, the reality for many organizations has been to use programmers or developers to create these reports and BI applications.
A very wise BI guru that I worked with many decades ago taught me a very valuable lesson that applies here: “If the only tool you have is a hammer, then every problem becomes a nail”.
Programmers and developers today know a variety of coding tools and programming languages, but they are usually not familiar with the popular BI tools. In addition, they don’t want tools that do all the hard work for you; they far prefer writing their own unique scripts and code that often nobody else can maintain. Now, with AI that is starting to change but that will bring its own challenges too.
The other major issue outside of learning the BI tools is applying best practices when designing and developing your BI solutions.
Today we have so many database and data repository choices and the ability to create models in them that will meet our standard reporting, ad-hoc BI, predictive analysis, and AI needs. In addition, BI tools include semantic layers and the ability to build views specific for our different groups of business users.
The sad thing is that this is often bypassed in the rush to get out a report or dashboard for a business user resulting in creating a hodgepodge of disparate files (many often Excel) to create the datasets need and adding tons of complex logic and calculations in the report or dashboard itself.
The result of this behavior is the creation of incredibly complex and poor performing Bi reports, dashboards and applications that can only be maintained by 1 or 2 people who, if they left or died, would leave the organization in a similar situation to the monks at the beginning of this blog.
As BusinessObjects is so mature and most people who work on it have a wealth of experience, I am seeing less of this behavior recently in that world. Unfortunately, I am seeing a frightening increase of this behavior with the new BI tools like PowerBI.
Most organizations invest a lot of money in their BI and reporting solutions, but they don’t always invest it in the right places. If you invest in training and best practices on an on-going basis, you are less likely to end up in a nightmare situation.