Tuesday, January 29, 2013

How do we develop entry level OBIEE resources?


Oracle Business Intelligence Enterprise Edition  (OBIEE) is a business intelligence (BI) software platform sold by Oracle Corporation to large customers around the world.  The software allows developers to build analytical dashboards and reports using a variety of data sources.    Oracle also sells packaged business solutions built on top of the OBIEE platform for Financial, Human Resource, Supply Chain, and many other applications.   In a typical environment, a customer will purchase the OBIEE platform and OBIEE Applications package and then contract with a consulting organization to implement and customize the software over a period of several months.  These projects normally involve anywhere from two to ten resources working on various IT and business related tasks.   

What is the challenge?
 
Finding resources, especially junior level OBIEE  consultants, who can be productive while billable at competitive rates is not an easy task. 

We have devised a plan for developing entry level OBIEE resources in 12 weeks.
Click Here to view the OBIEE Intern Development proposal document (Word format) 

Here are some highlights from the program:


The proposed plan to address the development of OBIEE consulting resources is centered on a twelve week training plan that exposes the participants to the entire OBIEE and OBIA technology platforms as well as developing basic consulting “soft skills”.  The program would be very rigorous with a high level of expectation in terms of the commitment by the trainees and an aggressive schedule akin to a “boot camp” experience.


Upon completion of the twelve week program, there should be sufficient evidence of the capabilities of the participants to make a hiring decision or to recommend placement in other areas of the organization where the person’s skills may be better utilized.  The participants will have an opportunity to attain two or three Oracle certifications - Oracle Database SQL Expert, Oracle Business Intelligence Foundation Suite 11g Essentials, and possibly t Oracle Business Intelligence Applications for ERP.

These books will be used as instructional materials for the program.



 The planned curriculum:


Week
Technical Focus Area
Consulting Skills Focus Area
1
-          Introduction to OBIEE and OBIA platforms
-          Dimensional modeling
-          SQL (Oracle SQL certification exam by the end of week 8)
-          Overview of Soft Skills
2
-          OBIEE Overview
-          OBIEE Dashboards & Analyses
-          General Dashboard Design Principles
-          Presentation Skills
3
-          Peoplesoft Applications Overview
-          OBIEE Dashboards Continued
-          OBIEE RPD Metadata Development
-          Problem Solving
4
Shadowing opportunity on an OBIEE project

5
-          OBIEE RPD Metadata Development Continued
-          Introduction to OBIA applications
-          Peoplesoft  HR Introduction
-          Presentation Skills
6
-          OBIA HR Application Configuration for Peoplesoft
-          Introduction to Informatica
-          Introduction to DAC (Data Warehouse Admin Console)
-          Effective Listening
7
-          Informatica Continued
-          Advanced Topics in OBIEE RPD
-          Execution of Data Warehouse Load for HR data
-          Presentation Skills
8
-          OBIA DAC Overview
-          Introduction to Customization of OBIA Applications
-          Informatica Continued
-          Team Building
9
Shadowing opportunity on an OBIEE project

10
-          Peoplesoft Finance Introduction
-          OBIA Financials Application Configuration for Peoplesoft
-          Presentation Skills
11
-          Execution of Data Warehouse Load for Financials data
-          Customization of OBIA Applications Continued
-          Conflict Resolution
12
-          OBIEE System Management
-          OBIEE Security
-          Individuals deliver a presentation to senior managers demonstrating a particular area of expertise acquired during the program

National ID/SSN columns HR Analytics W_EMPLOYEE_D dimension

By default, the Oracle BI Applications do not expose the columns for National Id/Social Security Number on the Employee dimension (W_EMPLOYEE_D).     Typically, there are policies in place within most organizations to closely control access to that information.

The physical columns W_EMPLOYEE_D are NATNL_ID_NUM, NATNL_ID_TYPE_CODE, NATNL_ID_TYPE_NAME.


They are exposed under the Dim - Employee logical table in the RPD but are not exposed at the presentation layer.


Those columns would have to be moved to a Presentation Subject area in order to make them available for reporting.   If necessary, separate security configuration may need to be applied to the column with application roles granting visibility.

The ETL mapping that  used to extract the National Id columns from Peoplesoft is:  SDE_PSFT_EmployeeDimension_Biography2, specifically in mapplet mplt_BC_PSFT_EmployeeDimension_Biography2.    It loads a table called W_PSFT_EMPLOYEE_D_BIO_2_TMP which is then loaded into the W_EMPLOYEE_DS staging table in the mapping SDE_PSFT_EmployeeDimension.

NOTE: Out of the box, the mapping only pulls the National Id's of employees with Work Permits.   It does not pull all Employee SSN's.     See below for a customization to bring in all SSN's.

The flow of the mapplet is from PS_PERS_NID to W_PSFT_EMPLOYEE_D_BIO_2_TMP for the National ID columns.



The SQL in the Source Qualifier in the mapplet can be modified to the following if all SSN/National Id values are required for all Employees versus just those on Work Permit:  (modified code in RED - just comment out the filter conditions).

SELECT
NID.EMPLID ,
CITIZENSHIP.COUNTRY,
NID.COUNTRY,
NID.NATIONAL_ID_TYPE ,
NID.NATIONAL_ID ,
CITIZENSHIP.CITIZENSHIP_STATUS,
VISA.COUNTRY,
VISA.VISA_PERMIT_TYPE,
VISA.DT_ISSUED,
VISA.EXPIRATN_DT,
'0' AS X_CUSTOM

FROM
PS_PERS_NID NID
LEFT OUTER JOIN
    (SELECT A.EMPLID, B.COUNTRY, C.CITIZENSHIP_STATUS
     FROM
     PS_CITIZENSHIP A, (SELECT EMPLID, MAX(COUNTRY) COUNTRY FROM
PS_CITIZENSHIP
                        WHERE (DEPENDENT_ID = ' ' )
                        GROUP BY EMPLID) B,
                        (SELECT EMPLID, COUNTRY, MAX(CITIZENSHIP_STATUS)
CITIZENSHIP_STATUS FROM PS_CITIZENSHIP
                        WHERE (DEPENDENT_ID = ' ' )
                        GROUP BY EMPLID, COUNTRY) C
     WHERE
     A.EMPLID = B.EMPLID
     AND A.COUNTRY = B.COUNTRY
     AND A.CITIZENSHIP_STATUS = C.CITIZENSHIP_STATUS
     AND B.EMPLID = C.EMPLID
     AND B.COUNTRY = C.COUNTRY
     AND (A.DEPENDENT_ID = ' ' )
    ) CITIZENSHIP ON
NID.EMPLID = CITIZENSHIP.EMPLID
LEFT OUTER JOIN PS_VISA_PMT_DATA VISA ON
NID.EMPLID=VISA.EMPLID
--AND NID.COUNTRY<>VISA.COUNTRY
WHERE
NID.PRIMARY_NID = 'Y'
--AND VISA.VISA_WRKPMT_STATUS in ('A','G')
--AND  (VISA.DEPENDENT_ID = ' ' OR
--LTRIM(RTRIM(VISA.DEPENDENT_ID)) IS NULL)
--AND (VISA.EFFDT = (SELECT MAX(EFFDT) FROM PS_VISA_PMT_DATA MAXI
--                   WHERE MAXI.EMPLID=VISA.EMPLID and MAXI.VISA_WRKPMT_STATUS in ('A','G') GROUP BY EMPLID) OR
--VISA.EFFDT IS NULL)