Friday, 23 November 2012

Oracle Business Intelligence Application 7.9.6.3 and Google Views – Real Value Addition – Heat Map

Google charts would be very useful to enhance the Oracle BI Application deliverables. The Google Visualization API allows developer to create charts and reporting applications over structured data and helps integrate these directly into your website or on a Gadget. You can find more information on Google chart by using following link
One of the important charts which would be useful for BI Apps Spend and Procurement to demonstrate analysis is ‘Heat Map’; it is a perfect representation of using size (Invoice Amount) and color ( Invoice Count) variations. This blog is an attempt to demonstrate how Google Organization charts can be embedded into an OBIEE analysis.
Report






Narrative View

Prefix
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
if(document.URL.indexOf("saw.dll?Answers") == -1) {
      google.load("visualization", "1", {packages:["treemap"]});
      google.setOnLoadCallback(drawHMChart);
}
      function drawHMChart() {
if(document.URL.indexOf("saw.dll?Answers") == -1) {
          // Create and populate the data table.
          var data = new google.visualization.DataTable();
          data.addColumn('string', 'Quarter');
          data.addColumn('string', 'Parent');
          data.addColumn('number', 'InvoiceAmt');
          data.addColumn('number', 'InvoiceNum');
          myHMArray=[];
          myHMArray.push(["All Quarter",null,0,0]);
}
Narrative
myHMArray.push(["@1","All Quarter",@2,@3]);
Row separator
Nil
Rows to display
Nil
Postfix
if(document.URL.indexOf("saw.dll?Answers") == -1) {  
                data.addRows(myHMArray);

          // Create and draw the visualization.
          var tree = new google.visualization.TreeMap(document.getElementById('div_Heatmap'));
          tree.draw(data, {
            minColor: '#f00',
            midColor: '#ddd',
            maxColor: '#0d0',
            headerHeight: 15,
            fontColor: 'black',
            showScale: true});
      }

   }
</script>
<b>Note: Invoice Amount represented by size and Invoice Count  represented by color</b>
    <div id="div_Heatmap" style="width: 700px; height: 350px;"></div>
Narrative View

Heat Map

Thursday, 22 November 2012

Oracle Business Intelligence Application 7.9.6.3 and Google Views – Real Value Addition - HR Organization Chart

Google charts would be very useful to enhance the Oracle BI Application deliverables. The Google Visualization API allows developer to create charts and reporting applications over structured data and helps integrate these directly into your website or on a Gadget. You can find more information on Google chart by using following link
One of the important charts which would be useful for BI Apps HR Profile to demonstrate employee -supervisor relation is ‘organization chart’.  This blog is an attempt to demonstrate how Google Organization charts can be embedded into an OBIEE analysis.
Report
Contruct a report - Supervisor , Employee Attribute and Employee Organisation from workforce profile.




Narative View

Google API’s -  Prefix , Narrative and Postfix to generate the graph
Prefix
  <script type='text/javascript' src='https://www.google.com/jsapi'></script>
    <script type='text/javascript'>
if(document.URL.indexOf("saw.dll?Answers") == -1) {
      google.load('visualization', '1', {packages:['orgchart']});
      google.setOnLoadCallback(drawOrgChart);
}
      function drawOrgChart() {
if(document.URL.indexOf("saw.dll?Answers") == -1) { 
      var data = new google.visualization.DataTable();
        data.addColumn('string', 'Name');
        data.addColumn('string', 'Manager');
        data.addColumn('string', 'ToolTip');
        var myOrgArray=[];
        var tempStr = "";
Narrative
myOrgArray.push([{v:"@2".replace("  "," "), f:"@2<br/><font color=red><i>@3<i></font>".replace("  "," ")}, "@1".replace("--",""), "@3"]);
Row separator
Nil
Rows to display
Nil
Postfix
        data.addRows(myOrgArray);
        var chart = new google.visualization.OrgChart(document.getElementById('div_orgchart'));
        chart.draw(data, {allowHtml:true});
}
      }
    </script>
    <div id='div_orgchart'></div>


Narrative View

Organization Chart View
Org Chart - User would love this ..


Friday, 16 November 2012

Oracle BI 11g – Port Numbers and staticports.ini


Which default ports OBIEE 11g standard installation uses ? What is the option if one would like to change the default ports ?

This blog is an attempt to list down default port and along with the description about how to other ports can be assigned than the defaults.


Default Port Numbers

By default Oracle BI 11g uses the following default ports for the communication between clients

WebLogic Server
Domain Port No = 7001
Oracle WLS BIEE Managed Server Port No = 9704
Oracle WLS BIEE Managed Server SSL Port No = 9804

OPMN Process Control
Oracle Process Manager Local Port No = 6100
Oracle Process Manager Remote Port No = 6200
Oracle Process Manager Request Port No = 6003

BI 11g BI-Foundation
Oracle BI Server Port No = 9703
Oracle BI Server Monitor Port No = 9701
Oracle BI Presentation Services Port No = 9710
Oracle BI Scheduler Port No = 9705
Oracle BI Scheduler Monitor Port No = 9708
Oracle BI Scheduler Script RPC Port No = 9707
Oracle BI ClusterController Port No = 9706
Oracle BI ClusterController Monitor Port No = 9700
Oracle BI JavaHost Port No = 9810

Defining other ports than the defaults

During the installation other ports can be assigned than the defaults. To do that a file “staticports.ini” must be used. You need to supply this in the following format:

staticports.ini

01
[WEBLOGIC]
02
03
#The Domain port no. This is the listen port of Weblogic Adminserver for the domain.
04
Domain Port No = 7001
05
06
# The "content" port for the BIEE apps. This is the Weblogic Managed Server port on which BIEE applications are deployed.
07
Oracle WLS BIEE Managed Server Port No = 9704
08
09
#The SSL port for the Weblogic Managed Server
10
Oracle WLS BIEE Managed Server SSL Port No = 9804
11
12
[OPMN]
13
14 #Process Manager Local port no
15
Oracle Process Manager Local Port No = 6700
16
17
#Process Manager Remote port no
18
Oracle Process Manager Remote Port No = 6701
19
20
#Process Manager Request port no
21
Oracle Process Manager Request Port No = 6702
22
23
[BIFOUNDATION]
24
25
#The listen port for OracleBIServer component
26
Oracle BI Server Port No = 9703
27
28
#The monitor port for OracleBIServer component
29
Oracle BI Server Monitor Port No = 9701
30
31
#The listen port for OracleBIPresentationServices component
32
Oracle BI Presentation Services Port No = 9710
33
34
#The listen port for OracleBIScheduler component
35
Oracle BI Scheduler Port No = 9705
36
37
#The monitor port for OracleBIScheduler component
38
Oracle BI Scheduler Monitor Port No = 9708
39
40
#The script RPC port for OracleBIScheduler component
41 Oracle BI Scheduler Script RPC Port No = 9707
42
43
# The listen port for OracleBIClusterController component
44 Oracle BI ClusterController Port No = 9706
45
46
# The monitor port for OracleBIClusterController component
47 Oracle BI ClusterController Monitor Port No = 9700
48
49
# The listen port for OracleBIJavaHost component
50 Oracle BI JavaHost Port No = 9810

OBIEE 64 bit or 32 bit Admin Tool and ODBC BI Server Connections

Oracle Business Intelligence Developer Client Tools Installer (11.1.1.6.0) is available for 32 bit and 64 bit mode. The installable can be found on oracle TechNet.


This is an attempt to explain which ODBC Administrator on Windows 64 bit operating system and when while defining BI Server ODBC connection.

On a Windows 7x64 operating system Microsoft delivers two tools for ODBC Administration - one for 32-bit ODBC connections, one for 64-bit ODBC connections.

You will have to use two different links to administer the ODBC connections:

64-bit ODBC: C:\Windows\System32\odbcad32.exe
32-bit ODBC: C:\Windows\SysWOW64\odbcad32.exe

When installing BI Admin tool this will install the ODBC driver as well which is by default is a 32 bit with standard installation of OBIEE 11g. As client is 32 bit you will see this in the 32 bit ODBC administration. If you install 64-bit Admin client the driver will show up in 64-bit administration.

I would recommend if you have 64-bit environment go with 64-bit version of Admin tool.

I have been working on a migration project from OBIEE 10g to 11g, one of the interesting things which I have found out is that excel ODBC connection which uses BI Server ODBC does not work anymore with OBIEE 11g … there is a work around which I would discuss in next blog.

Saturday, 10 November 2012

Oracle Unified Method (OUM) Overview

During last 20 odd years I have came across various software project implementation/management methods such as Unified Process (UP), AIM, CDMFT, Data Warehouse Method Fast Track (DWM FT) and Dynamic Systems Development Method (DSDM) , Oracle Unified Method ( OUM) which is derived from UP seems to be a way forward for software projects in general and oracle software/application projects in particular.
This blog is an attempt to provide an overview of Oracle Unified Method (OUM), which can support the entire Enterprise IT lifecycle, including support for the successful implementation of all most every Oracle product applications, middleware and database. I don’t see any reason why this method can’t be used for non-oracle product sets.
I would recommend that one should use OUM as a guideline for performing technology projects, but keep in mind that every project is different and one need to adjust project activities according to each situation. Feel free to add, remove, or rearrange tasks by keeping in mind that these changes should be reflected in overall estimates and risk management planning.
OUM …?
OUM provides support for Application Implementation projects, Software Upgrade projects, and the complete range of technology projects including initial support for Business Intelligence and Enterprise Performance Management and deep support for Service-Oriented Architecture (SOA), Enterprise Integration, and Custom Software.
OUM includes following three focus area
 Manage Focus Area provides a framework in which all types of projects can be planned, estimated, controlled, and completed in a consistent manner.
Envision Focus Area deals with development and maintenance of enterprise level IT strategy, architecture, and governance. Envision also assists in the transition from enterprise-level planning and strategy activities to the identification and initiation of specific projects.
Implement Focus Area provides a framework to develop and implement Oracle-based business solutions with precise development and rapid deployment.
The diagram below shows how the Envision, Manage, and Implement focus areas fit together to form OUM:

OUM Properties
OUM provides collection of best practices organized as a series of processes or workflows that can be assembled and scaled to achieve various information technology related business objectives. OUM also leverages Oracle’s intellectual capital by reusing processes, tasks, and templates from Oracle's complete portfolio of existing methods.
OUM possesses the following properties:
  • Focuses on the business to assure stakeholder acceptance and delivery of the development effort's values, goals, and objectives
  • Centers on architecture to provide a clear perspective of the whole system.
  • During Inception and Elaboration, the objective is to define an executable architecture before committing resources to a full-scale development and implementation effort.
  • Encourages adaptability and balance for scalable delivery across small and large projects possessing disparate resources and skill levels while assuring repeatable results.
  • Provides rapid implementation techniques that enable building business solutions in short time frames.
  • Uses non-proprietary and referential standards, such as the Unified Modeling Language (UML) and de facto standards like the Unified Software Development Process
OUM Approaches
OUM is built on five main principles derived from the Unified Process, the Dynamic Systems Development Method,8 and Oracle's existing methods. Those are:
  • Iterative and Incremental
  • Business Process and Use Case-Driven
  • Architecture-Centric
  • Fit-for-Purpose
  • Risk-Focused
Iterative and Incremental
OUM, like the Unified Process (UP) from which it has been derived, employs an iterative and incremental approach to implementing software systems.
  • An increment is the difference between the release of one iteration and the release of the next iteration.
  • An iteration is a distinct set of activities conducted according to a devoted (iteration) plan and evaluation criteria that results in a release, either internal or external.
Rather than breaking the software implementation process into steps such as requirements, analysis, design, implement, and test; the OUM Implement focus area breaks the process into major milestones called the Lifecycle milestones.
Each OUM Implement phase may also be broken down into several iterations. These iterations represent the minor milestones of the project. OUM suggests nominal iteration counts for each phase, but the project team must develop the actual iteration plan based upon the project's characteristics. The total number of iterations in a project may range from as few as 4 to more than 12, but are generally in the range of 4 to 10.
Business Process and Use Case-Driven
Business processes and use cases are used as the primary artifacts for establishing the desired behavior of the system and for communicating this behavior among the stakeholders. Business processes modeling helps stakeholders and implementers to understand the business processes of an organization, and look at the business requirements that are satisfied by a particular business process. 
Use cases models and use cases may be used to complement business processes to
  • Provide a consistent mechanism to link system requirements to design and test tasks
  • Bridge the gap between business modeling, business processes, and software system functionality
  • Provide a consistent thread through OUM – use cases help amplify and consolidate the many other benefits of the method
  • Identify implicit or unstated requirements
  • Manage traceability of requirements through testing
Architecture-Centric
Architecture-centric means that the system’s architecture is used as a primary artifact for conceptualizing, constructing, managing and evolving the system that is being implemented.
The architecture is the collection of models that describe the system. It contains the most significant static and dynamic aspects, and an executable architecture is the product of successive refinements. This is usually accomplished in the form of a models and prototypes, and is developed before full-scale development starts. It contains the organization of the software system to build with structural elements and interfaces, and their behavior.
OUM is architecture-centric from the beginning of the project. An architectural baseline is defined in the initial phases and expanded in the subsequent phases to produce high quality software systems in a cost effective way. The architectural baseline provides an infrastructure, often a framework that supports continuously adding or replacing components through the iterations to minimize the effect on the rest of the application.
Fit-for-Purpose
It refers to the focus on delivering necessary functionality within a required timebox. The solution can be more rigorously engineered later, if such an approach is acceptable. Traditionally, projects have been focused on satisfying the contents of a requirements document or rigorously conforming to an existing set of work products. Often, especially where iterative and incremental techniques have not been employed, these requirements may be inaccurate, the previous deliverables may be flawed, or the business needs may have changed since the start of the project. Our collective experience shows that applying fit-for-purpose criteria, rather than tight adherence to requirements specifications, results in an information system that more closely meets the needs of the business.
Risk-Focused
A key focus of each iteration in OUM is to attack and reduce the most significant project risks. This helps ensure that the project team addresses the most critical risks as early as possible in the project lifecycle.
OUM Key Concepts
Iterations/Increments/Releases - Projects based on OUM are carried out in an iterative fashion. Each iteration is concluded by the release of an executable product which is no necessarily a complete product but can be one step along the way
Activities - Tasks are grouped into Activities.  An activity groups “cross view” tasks together. Generally, activities do not cross phases.
Work Products – The output of a task or activity is called a work product to eliminate the risk of having method deliverables confused with contractual deliverables. Contractual deliverables are specifically referenced in the contract and often have a payment schedule associated with their acceptance.
Why Use OUM …?
More Focused Effort – OUM enables projects to clearly define business scope as well as the need to create enterprise business process models. This planning results in tighter scope control, more accurate business understanding, and a firm foundation for client acceptance.
Built-In Flexibility -By combining activities and tasks in different ways, OUM can be applied to many types of information technology software development and implementation projects.
Saves Time -Seasoned information technology practitioners representing years of experience have contributed their knowledge to OUM. Project teams can take advantage of this experience by leveraging these leading practices along with industry standards.
Higher Quality -OUM subscribes to an iterative approach that incorporates testing and validation throughout the lifecycle, rather than testing for quality only at the end of the project.
More Cost Effective -OUM facilitates improved control of project expenses by using a flexible work breakdown structure that allows you to perform only necessary tasks.
Reduce Project Risk - Implementing an iterative, broadly applicable method mitigates requirements mismatch. A key focus of each iteration in OUM is to identify and reduce the most significant project risks. This ensures that the most critical risks are addressed as early as possible in the project lifecycle, which results in a measurable reduction of schedule and budget risks.
Critical Success Factors
Critical success factors may affect the selection of a project service. The following are typical critical success factors and their impact on the success of the implementation
Project Size: OUM projects are most ideal for projects of less than 900 man-days. It is not a problem that the project is larger, but then you should consider partitioning the project into smaller projects each of less than 900 man-days.
Project Duration: OUM is built for rapid delivery of business benefits. Therefore, it is recommended that OUM projects have duration of less than nine months. Ideally, projects that initially need a longer duration for completion should be partitioned into a sequence of projects each of less than nine months duration.
Type of Organization: The organization culture can be of vital importance to the success of the project. Organizations with a lot of bureaucratic procedures and work methods may not be able to participate and work using a OUM approach. 
Time-Critical Development: OUM is well suited for time critical development. However, if the end date easily can change, then many of the benefits of OUM will be lost, in short time bound end date project option is more beneficial.
Baseline High-Level Requirements: OUM recognizes that requirements will change throughout the process, however, to be able to determine a well-defined scope for the project, you need to be able to baseline the requirements on a high-level.
Prioritizing of Requirements: To be able to deliver the most critical requirements first and to steer the development effort throughout the project, you need to prioritize the requirements.
Availability and Commitment of Ambassador Users: OUM uses iterations as a basic principle of development and implementation; the ambassador users provide input for determining the requirements as well as for verifying the end result of each iteration. Well-skilled ambassador users availability is the key.
Skilled Development Team: OUM is an approach with short delivery timescales where there is little time for learning on the job. Therefore, the project is more dependent on the current skills of the team. If there is a lack of appropriate skills in the development team, at least one skilled resource should be included to support the team. This resource time and effort must then be planned and estimated accordingly.
Visible User Interface: It is easier for the users to validate the result from the iterations through a user interface like a page or a screen. If the system being developed does not have a visible user interface that covers a large portion of the software system, if will be necessary to find other means to validate the system (for example, by showing flow diagrams, creating simulations of integration, etc.).
OUM is evolving … more to come.
The vision is to support the entire Enterprise IT lifecycle, including support for the successful implementation of every Oracle product – applications, middleware, and database.Upcoming releases of OUM will provide enhanced support for Oracle's full complement of Enterprise Application suites including: product-suite specific materials and guidance for tailoring OUM to support various engagement types. Watch this space for more..