Wednesday, July 30, 2014

#4 BPM 12c New Features - Business Architecture Modeling

With 12c we have a new look and feel to Process Composer .

All work takes place within a Space -

Within the Space, I can create a new Project

Here I can create Enterprise Maps, Strategy Models and Value Chain Models.

To quote the official ORCL docs -

Business Architecture is a methodology for performing high-level analysis of the business processes within your organization. These processes can be high-level processes that span an entire organization or specific, low-level processes performed within a specific group.

Business Architecture uses a top-down approach that allows for discovery of your organization's processes. You can define and evaluate high-level goals and map them to specific strategies for achieving them. You can also run reports on Business Architecture components to evaluate performance

Enterprise Maps

Enterprise Maps provide a bird's eye view of your organization. They are models that show key process areas that reflect key business functions or services. The Enterprise Map is the entry point for process decomposition. Generally, there is only one Enterprise Map for the entire organization.This level defines the top-level business functions or process areas of the enterprise such as Marketing, Sales, Human Resources, and so on. Each top-level business further navigates down to a Value Chain Model into the next level

Here is an example for my whiskey distillery -

We see 3 lanes, by default -

Core: here we see the essential processes to the organization. For my distillery, they are the sourcing of the finest grains and the best sherry oloroso casks, the distilling of the finest Irish whiskey, its storage and then sales.

Management: backend management functions such as HR, Finance and Marketing.

Support: processes that "enhance" the Core and Mgt processes.

You can add your own additional lanes, if necessary.

Value Chain Model

This model allows us to go into more detail on our processes.

To quote the doc:

Value Chain Model is a series of activities within an organization that perform a specific task. Value Chain Models contain a series of value chain steps, which represent different stages of the process.

Here is an example for the Marketing process

Each value chain step corresponds to a more detailed process performed by a smaller group. Each value chain step can be broken down into a separate Value Chain Model, creating a hierarchical group of value chain models. Alternatively, a sub-step can be linked to a BPMN process. BPMN processes define process flows that outline the IT requirements for implementing a process.

Now we link the Marketing process to this Value Chain Model -

Another value add, is the ability to define KPIs at value chain model level.

Value chain models can also be linked to BPM processes within the same space.
Here is a sample BPM process for sending the monthly whiskey-a-go-go newsletter.

The link is created...

Strategy Models

Strategy Models help to define the corporate objectives and goals of an organization and create a strategy for achieving them. Strategy Models allow you to break a goal down into a series of actionable steps. They allow you to map high-level goals down to low-level business processes and tasks performed and implemented by an IT organization.

The following widgets are available in this model -

Goal: the target end result - e.g. grow customer base by 20% annually.

Objective: An objective is a specific and measureable milestone that must be achieved in order to reach a goal. E.g. Increase number of email contacts. 

Strategy:Defines the plan to achieve the said objective (s).

Strategies can also be linked to value chain models -which, in turn, define how the strategy is implemented.

Process Composer also lets us generate BA reports, based on our model.
These reports are BAM based. So you need to have your BAM server installed and configured accordingly.

When you publish your project, the KPIs are stored within the Oracle Business Activity Monitoring (Oracle BAM) repository along with other components of the BA project. After publishing, the KPI is available within BA reports and Oracle BAM dashboards.

Monday, July 21, 2014

# 331 - OEP 12c leveraging EDN Lab

Here is a simple lab that shows OEP and EDN in action.

With 12c, OEP now includes EDN adapters.

My simple scenario -

A SOA composite receives messages of type MyCCTx. It then publishes an EDN event, NewCreditCardTXEvent. OEP has an EDN inbound adapter subscribing to this event. It then processes the event, applying the following rules –

·         Individual transactions must be under €1000.
o   Those over €1000 will be highlighted as fraud.
·         During a ten minute time range, the total transaction values must be under €1500.
o   i.e. 2 transactions, on the same card, for 800€ and 900€ occurring within ten minutes of each other will be highlighted as fraud.

For each event, OEP will publish an EDN event – CreditCardTxCheckedEvent.

The SOA composite also subscribes to the CreditCardTxCheckedEvent event, published by OEP. It writes all results to a file.

My XSD is as follows -

Here is the SOA Composite - it includes 2 Mediators

The OEP EPN is as follows -

The inbound EDN adapter subscribes to the NewCreditCardTXEvent.
The outbound EDN adapter publishes the event CreditCardTXCheckedEvent.

Full lab doc here

Friday, July 18, 2014

# 330 BAM 12c first impressions...and my first 12c Data Object / BAM Dashboard

I just installed BAM 12c and am now kicking the tyres -

login url is http://localhost:port/bam/composer

Looks excellent -

We have 3 main roles - Viewer, Admin and Designer


Here is what our admin manages -

So now some basic 12c concepts - (text taken from the BAM docs)

What does BAM 12c give us?

Event Stream Analytics and Alerts
Oracle BAM provides real-time pattern matching, trend analysis, rolling-window 
computations, and both static and dynamic thresholds. The built-in Continuous Query 
Language (CQL) engine evaluates incoming event streams against business 
requirements and data patterns of interest. You can define these patterns with 
easy-to-use business query and Key Performance Indicator (KPI) templates, insulated 
from the underlying CQL. Furthermore, you can archive the event streams for fuller 
analysis later.

Based on these data patterns, you can implement a wide variety of alerts and actions, 
such as emailing particular users, recording data, or launching a web service. You can 
even daisy-chain alerts and define custom actions.

Process Analytics and Dashboards

Oracle BAM provides a rich set of ready-to-use dashboards for all major components 
of Oracle Business Process Management (BPM) and Oracle Service-Oriented 
Architecture (SOA) Suite. These dashboards include metrics such as task queue depth 
and bottleneck analysis of business processes.

Business Friendly Charts

With the adoption of Oracle Application Development Framework (ADF) Data 
Visualization Tool (DVT) components, Oracle BAM offers a wide range of intuitive 
visualizations that you can include in dashboards, including treemaps, scatter charts, 
bubble charts, and KPI watchlists.


So now to a simple example - 

Creating Data Objects 

Types -

Simple -

A simple data object is used as is. It can contain indexes and hierarchies, but no 
other column additions or modifications. It corresponds to a database view in the 
BAM database. Other data objects can use or refer to simple data objects.
Administrators create simple data objects for very basic data.

Derived -

extends a simple data object or another derived data object. It 
inherits the columns and hierarchies of the parent data object and adds its own 
columns. Administrators create derived data objects if additional columns are needed.

External -

An external data object references data that is persisted outside of Oracle BAM. 
When a connection to the external data object is configured in Oracle WebLogic 
Server, Oracle BAM can access it. The external data object name may be changed 
from the actual table name, but the column names are unchanged. Some columns 
may not be selected for visibility in BAM.

Logical -

A logical data object references data in other archived relation data objects. Unlike 
a derived data object, it is read-only and not a physical data object. However, it can 
do more than add columns. It can rename or hide columns, or add calculated 
columns. It can also join two or more simple or derived data objects. Typically, in 
compliance with process star schema standards, one source data object is a fact 
table consisting of measures, while the others are dimension tables.
Administrators create logical data objects to modify columns or to enable queries 
of data from two or more data objects.

Simple, derived, and external data objects are physical data objects, which can be 
modified and are mapped to database tables. A logical data object is read-only, is not 
persisted, references data in other data objects, and is most commonly used to join 
other data objects.

Before you can use a data object with other BAM entities such as queries and 
dashboards, you must create a project. A project references one or more data objects 
and contains entities based on these data objects.

Continuous Query Type - 

Stream or Relation - I choose relation as this is a simple example.

Specify maximum numbers of columns with different data types - I just accept the defaults here.

Now I add a couple of columns - these 3 are pre-seeded.

attribute - A data field that can be used for filtering or references

dimension -A data field that provides a type of grouping on which aggregation is performed, used 
for drilling. For example, order dimensions might be supplier and product.

measure - A numeric data field that can be measured and used in comparisons to evaluate 
business processes e.g. orderValue.

I now add some demo data


Designing a basic Dashboard

I now go to the Designer Tab - and create a new project -

btw. Create BPM Example — Creates a project with data objects for Oracle 
Business Process Management (BPM) processes.

I click Create

Now, I add my data object to the project.

I now add a business query - SupplierQuery

I now create a Dashboard

I add a pie chart to the dashboard.

I link it to the business query.

Click Apply and it's done!

I add two more views -

In order to set the threshold, I clicked on the business view editor icon - that is the one in the middle

Click on Display Properties

I change a couple of things and save the dashboard


The viewer clicks on the Home link
Here I open my recently created project and then the dashboard