Sunday, 6 November 2011

What is Business Intelligence?

Back in 2008, one of my friends had the following conversation with me in a BBQ party:
"So you work in an IT company, what specific area?" He asked.
"BI - Business Intelligence" I said.
"That sounds pretty cool. Do you spend a lot of time with things like Robots?" He asked again.

According to Merriam-Webster Dictionary, the definition of "Intelligence" is
A) The ability to learn or understand or to deal with new or trying situations: REASON: also: the skilled use of reason
B) News or information concerning an enemy or possible enemy or an area; also : an agency engaged in obtaining such information.

In BI, the letter "I" means "Intelligence" as of "Central Intelligence Agency", but not "Intelligence" as of "Artificial Intelligence". Therefore, the definition of Business Intelligence can be simply put as "getting information of Business for having a better business". Logically, a few questions will rise: What information do I need to collect? How should I manage the information? In which ways I can digest the information?

Let's start with the first question: what information do I need to collect? My answer would be: Any information as long as it can help your business. It can be the operational information that you collect at the point of sale. It can be the historical information that you have been accumulating for decades. It can even be the "big data" that is being generated every second by millions of social network users. In order to make quicker and better decisions, people want to have answers to all kinds of questions related with their business. What other things my customers normally buy when they refill their car at our fuel stations? What is the trend of my in-store sale VS online sale in the last 10 years? What are people talking about online after the launch of my new product? Nowadays, business information has already been widely recognized as an important enterprise asset. As the person who runs the business, you should carefully collect relevant information and maximize the return on this invaluable asset.
Information Asset

Here comes the second set of questions: How do I collect the information? How do I manage the information so that it can give business insight to the end users? The answer in my mind is ETL (data Extraction, Transformation and Loading) and DW (Data Warehouse). It's not unusual that one business has data scattered in multiple heterogeneous data storage. With a proper ETL tool, data from different sources can be extracted, transformed accordingly and loaded into the repository for analysis purpose. A mature ERP or CRM system is normally the major source for ETL process as it records the most detail operational business activities such as transaction closed, customer acquired, product manufactured, etc. In addition, other complementary information such as Excel files exchanged between people, small Access databases created and managed by line of business, old but relevant data stored in legacy systems, may also need to be processed via ETL, so that a comprehensive intelligence storage can be build to cater for all kinds of business questions. The destination of ETL process is normally a data warehouse (or several data marts which is data warehouse with smaller controlled scope). Data Warehouse is the foundation of Business Intelligence. Unlike OLTP system which needs to insert/update/delete data in timely fashion, Data Warehouse needs to be optimized for performing data queries. Consequently, data in Data Warehouse is saved in denormalized form of database schemas. Typical database denormalization techniques include but not limited to: materialized views, star schemas or OLAP cubes. Each approach has its pros and cons but they all share the same objectives: speed up the query of business measures (e.g. sales revenue, call duration) by different business dimensions (e.g. time, location, line of business).
ETL and DW

So far, we've discussed two aspects: where is the information coming from, how to collect and stored it so that it can be ready for business questions. Now, let's have a look at the last one: With a Business Intelligence system, how can the business operators find and digest information effectively and efficiently? As far as I understand, a competent BI system should be able to expose information through three basic channels: periodic operational report, interactive dashboard, and ad-hoc analysis. Operational reporting is the entry level part of Business Intelligence. It periodically provides the updated snapshots of business from different aspects. Operational reporting normally consists of a set of pre-defined (both data query and layout) reports such as weekly inventory report, monthly salary expenditure report and so on. It helps people to record and monitor what happened with the business. Interactive dashboard is the way how variant reports can be organized together on one screen display. Without scrolling or switching the display, user should be able to see multiple related  reports at a glance. For example, a typical Financial Profitability analysis dashboard may have reports such as P&L Summary, Cost Breakdown, Product Gross Margin and Customer Gross Margin on one single page. In addition, Interactions such as filtering, drilling, layout personalization should also be available for users. With Interactive dashboard, people can focus on interested information in different forms, slice and dice, drill and filter to get a deeper business insight. Ad-hoc analysis means analyze data in a exploratory self-service approach. Business users should be able to find answers to their questions by defining criteria, customizing calculation formula, specifying conditional formatting and so on in a friendly graphical interface. When it's necessary, a BI environment should also allow users to quickly create tabulate or graphical reports from arbitrary data sources without going through a formal data modeling process. Ad-hoc analysis empowers business users to find answers to the specific questions which are not covered by canned dashboards and reports. Besides these three major intelligence delivery channels, a mature BI system will also provide Proactive alerting, Office integration, Mobile capability, etc.
Delivery Channels

In summary, Business Intelligence is a platform that helps people to collect, manage and convey information. By turning big volume of multifarious data into sensible abstract intelligence, BI helps people make business decisions in a more efficient and accurate way.

In my future blog entries, I will share with you what I've learnt about general Business Intelligence and Oracle Business Intelligence solution. 

No comments:

Post a Comment