Gartner recently published new BI Magic Quadrant

The Analyst at Gartner who evaluate the Business Intelligence Market recently published a new Analyst Report on Business Intelligence. It is Important to note that this Analyst Report only evaluates the Vendor Capabilities within this Market. Related Markets or Vendor Capabilities in are not considered within this Analysis. Thus, the capabilities of a Vendor to Offer e.g. Big Data Solutions will not be mentioned within this Report. From an Oracle perspective the Solution just manages to be within the leader Quadrant, but slightly behind the major Competition of SAP, SAS, Mircrosoft, IBM and MicroStrategy. Leaders by far are Tableau.

The Leader Position for Tableau is justified by the fact that this Vendor has changed the customer expectation of what is possible within the BI and especially Data Discovery “with a focus on helping people see and understand their data. In particular, analytic dashboards, free-form exploration, business-user data mashup and cloud deployment are platform strengths.” Additionally the easy and direct access to Structured Data in Form on SQL, Mutidimensional Data with MDX and unstructured data on Hadoop has been noted. As limitation Tableau has a very limited set of Advanced Analytics Capabilities and only just recently support for R Integration was added. Some other very Interesting Aspects of the Report was in Terms of actual use of the Software. Noting that: “Customers of IT-centric platforms that have a broad range of BI platform capabilities report using them narrowly, most often for production reporting. On the other hand, business-centric platforms such as Tableau, Qlik […] have a more narrow set of capabilities, but are used more broadly for a range of BI and analytics functions.” This very Interesting Observation can be found throughout the Report. Even though the Report notes that the set of Capabilities is lower compared to other Vendors the Use Case of Tableau/QlikView are actually broader, due to the focus on the Business User (rather than the IT Users). The more Business User and Data Discovery focused Vendors (such as Tableau/QlikView) manage to displace some incumbents particularly in SMB’s, but this has not yet happened on a wider Scale since “these platforms lack the necessary enterprise features in relation to governance, administration and scalability (among other things)”.

Gartner expects Customer currently to evaluate whether the traditional BI Vendors which are currently mostly used for their system-of-record Reporting will add the business User oriented capabilities for Data Discovery to their Product Suite or if they should replace their current system with a Data Discovery Pattern in mind from the beginning. Hence, Gartner pretty much sees two Sub-Markets within Business Intelligence: traditional KPI/Metric Reporting for reliable Business Information and a new Data Discovery Market which unveils new Insight and Value within the Data.

From an Oracle Perspective the advantages for the BI Suite remains being the Pre-built Data Models and Adapters of the Oracle BI Application Suite for a wide range of Horizontal and Vertical Oracle Applications.

Providing BI within the Cloud is also mentioned within the Report, where Saleforce is seen with a promising Offer compared to the other Startup competitors who are currently the Market Incumbents. Oracles cloud Offering hasn’t been mentioned within the Report even though its BI Cloud Service launched at roughly the same time last Year.

As Always the criteria’s for this Evaluation are documented too, within Note 2 and Note 3 of the Report.

The full Report can be read at: http://www.gartner.com/technology/reprints.do?id=1-2ACLP1P&ct=150220&st=sb

Thoughts on Customizing BI Applications

For Transactional Commercial of the Shelf (COTS) Product the recommended path is to (re)use as much as Possible of the Out-of-the-box Logic in order to minimize the Customization Effort.

For Analytical Systems this is also possible, however creating new Objects and Leaving the Standard Completely separate has Advantages during Upgrades since only the new created Objects for the previous release might just be copied and pasted to the new Release.

Hence, there are two aspects associated with this Question:

Does the Customer want to:

  • Optimize the First Implementation effort by re using the Analytics Object, too.
  • Optimize the ongoing Effort by separating the OOTB Logic and the Customized Logic.

This Question should always be asked at the beginning of a new Greenfield Project since it will steer the Implementation in either direction.

Primary Position/Owner based Security

Oracle BI Applications allow using the same Visibility Concept like Siebel. The following possibilities are supported within the Standard:

  • Primary Position/Owner Security
  • Organisation Security

The following Article focuses on the First Option “Primary Position/Owner Security”. It’s Important to understand a few Basics about Siebel:

  1. A Position defines a specific job Slot within a Company and usually starts with the Position of the CEO, having the CIO,CFO, CTO etc. reporting to him. The next Position e.g. Vice President Sales then Reports to the CFO.
  2. A Position can have a particular Incumbent (or Employee). E.g. “John Smith” is the current Incumbent of the Position Sales Manger West for Automotive. There might be other employees before “John Smith” how aren’t active in this Position anymore
  3. Most Objects in Siebel like Opportunities, Marketing Campaigns etc. are associated to a Position and not the Employee. However, a few Objects which are shorter lasting like Activities, Service Request etc. are associated to an Employee directly.

It is Important to note that the Concept is called Primary Position/Owner based Security. Thus, there is no either or. Depending on the Object either the Position linkeage or the Owner Linkeage will be used and the Position Hierarchy will always be respected even if Objects are linked to Owners. It’s also possible to have two Employees sharing a Position at the same Point in Time, but only the Primary Employee will be able to see the data within the Analytical Application (BI Apps). This is because the Position Hierarchy (W_POSITION_DH) will be used to limit the Visible data based on the Position within the Hierarchy and the Primary Employee is an Attribute of that Position. Thus, it’s not possible to have a many to one Relationship in this Hierarchy, but only one Employee (the Primary) as a Descriptive Attribute of the Position Hierarchy.

E.g. the West Rep1 Position does only have the Primary Incumbent in the Position as a descriptive Attribute to the Position.

This is stored in the W_INT_ORG_DH in the following way:

To Configure the Security correctly one needs to administer the Incumbents within a Position in the following Screens in Siebel CRM:

The following is the Administration Screen to select an Employee within a Position:

The Child Position needs to be configured accordingly:

After setting up the Position Hierarchy and Incumbents in Siebel the Hierarchy will be loaded into the BI Applications data model. Based on the Hierarchy the BI Server will create a Query like the following:

The above Query is for the Position that is located at the top of the Hierarchy. Note that the Login is used to compare to the login, thus the Position Incumbent. Hence, if multiple Employees share the same position only the login (Employee) that is the Primary Employee will have access to the data. Other Employee’s won’t have any!

For the Position that is located below the following Query will be created:

And for the Position below:

And for the Position that is located at the very bottom, the Base Position will be used:

All of this is steered through the Position Security Hierarchy within the Business Model Layer of the BI Admin Tool (.rpd) using the INDEXCOL Function on the “Dim – Position Security” Dimension.

INDEXCOL( VALUEOF(NQ_SESSION."HIER_LEVEL"), 
"Core"."Dim - Position Security"."Current Base Level Login", 
"Core"."Dim - Position Security"."Current Level 1 Login", 
"Core"."Dim - Position Security"."Current Level 2 Login", 
"Core"."Dim - Position Security"."Current Level 3 Login", 
"Core"."Dim - Position Security"."Current Level 4 Login", 
"Core"."Dim - Position Security"."Current Level 5 Login", 
"Core"."Dim - Position Security"."Current Level 6 Login", 
"Core"."Dim - Position Security"."Current Level 7 Login", 
"Core"."Dim - Position Security"."Current Level 8 Login", 
"Core"."Dim - Position Security"."Current Level 9 Login", 
"Core"."Dim - Position Security"."Current Level 10 Login", 
"Core"."Dim - Position Security"."Current Level 11 Login", 
"Core"."Dim - Position Security"."Current Level 12 Login", 
"Core"."Dim - Position Security"."Current Level 13 Login", 
"Core"."Dim - Position Security"."Current Level 14 Login", 
"Core"."Dim - Position Security"."Current Level 15 Login", 
"Core"."Dim - Position Security"."Current Level 16 Login", 
"Core"."Dim - Position Security"."Current Top Level Login")

This Function uses the Session Variable “HIER_LEVEL” which determines the Level one Particular Employees is in to steer the correct Data Visibility. This Session Variable is Initialized using the following Authorization Block:

This means that one Employee can see always “his” correct data even for Objects which are linked to positions e.g. like Opportunities.

The correct Java Connection String

It’s often required to use JDBC Connection to the Oracle Database. In BI Apps it’s possible to Connect from the BI Server to the Database and from Informatica to the Database. Please find below examples of the correct JDBC Connection String:

From Oracle BI Server to the Datbase:

jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
(HOST=hostname)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=servicename.local)))

And from Informatica to the Database via a JDBC Connection:

jdbc:informatica:oracle://hostname:port;ServiceName=servicename.domain.de