IBM Operational Decision Management

Last updated

IBM Operational Decision Manager (ODM) is IBM's Business Rule Management System (BRMS). IBM ODM also incorporates IBM's implementation of business event processing (also called complex event processing) capabilities.

Contents

IBM ODM can be installed both independently and as an application running on WebSphere Application Server.

This software is currently in V8.11.0 (as of October 2022).

Business rules and events

Rules

A business rule is a statement of logic that is used for a business decision to be made. This statement of logic is generally part of a business policy. Rules processing involves a piece of software using this pre-defined rule to make a real-time decision.

Example

A policy states that a borrower's initial loan must not exceed 3 times their annual salary. The Business Rule would read:
if Loan > (Salary * 3) then disallow.

Events

A business event is a signal or collection of signals indicating that a change in state has occurred, and consists of a small message. Event processing involves using events to determine if an action needs to occur as a result, and carrying out that action.

Example

If a customer's withdrawal event on their account causes the balance to drop below zero, then an action is taken to notify that customer.

Artifacts of IBM ODM

IBM ODM is an implementation of a Business Rule Management System. It allows the creation, management, testing and governance of business rules and events and stores them in a central repository where they can be accessed by multiple individuals and software products. This central storage of the rules and events mean that they can be easily modified without having to rebuild software, and with a reduced testing cycle, and the different software products will pick up this change simultaneously.

Action rules

A basic rule expressed in a logical form, stating that if a condition occurs then an action should result. IBM ODM uses Business Action Language (BAL) to define such rules, allowing them to be viewed in a more 'natural' language.

Examples

If a credit card transaction occurs outside a customer's country, then that customer should be called to confirm the card is not being used fraudulently.
If Country of Card Usage is not equal to Customer's home country then trigger the sending of a message to call that customer.

At a bank some customers are not allowed to become overdrawn and some are:
If a customer tries to withdraw funds allowing their account to drop below $0 and they are allowed:

permit transaction

otherwise:

disallow transaction

Decision tables

Decision table

Example

A loan company determines the insurance rate of a loan depending on the amount, and the credit rating of the customer.

Amount Loan ($)
Credit Rating GroupMin / MaxInsurance Rate (%)
ALoan < 100,0000.001
100,000 <= Loan < 200,0000.002
200,000 <= Loan < 300,0000.003
300,000 <= Loan0.005
BLoan < 200,0000.001
200,000 <= Loan < 300,0000.002
300,000 <= Loan0.004

Presented with a customer in group B asking for a loan of $250,000, the rule would indicate the insurance rate should be 0.002%.

Rule flows

These indicate the order in which rules should be executed.

Example

An insurance company wants to establish whether a driver should be given a particular insurance policy. The decision depends on:

The age of the applicant
Whether their history indicates they are a high risk driver, based on speeding tickets and past accidents.
A profile score of that customer, based on how recently they have passed their test and other factors.

Whether a particular rule is run is dependent on answers to previous rules.

A rule flow is constructed, from a start node to the different rules that must be considered and finishing at the end node.


Score card

This is a statistical model that applies a numerical score to an object, such as a customer or an account. The same attributes are applied when calculating this score for each item.
An example of this is a Credit scorecards.

Example

A score is allocated to a borrower depending on their Age, Citizenship and Credit grade.

AttributeRangeScoreExpected ScoreReason code
Credit GradeAA10090
A9090
B7090
C4090CREDIT_C
CC1090CREDIT CC
Self EmployedYes1030Self-employed
No3030

Events

If a specific change in state occurs then a message is emitted causing an event to occur.

Example

At a bank some customers are not allowed to become overdrawn and some are. A customer who has tried to take out a loan is refused by the system because their credit rating is too low.
If customer is refused, emit an event causing a message to be sent to the user informing them that they have been refused in indicating the reason.

In summary

Combining Business Rules and Events within the same system brings together two complementary technologies to automate real-time decisions. An event may trigger a rule to be run, conversely the outcome of a decision made by a rule may emit an event.

Components

IBM ODM consists of the following parts:

Decision center

This provides a repository and management component for the creation and maintenance of decision logic, guiding the business system's behavior. It is the central hub for the coordination of the decision life cycle, covering both business rules and business events, and allowing editing of each.
It is presented in different ways depending on how the user is intended to view the system.
Business Console, for collaboratively working with business rules.
Enterprise Console.

Decision server

This consists of the runtime components for business rules and business events.

Decision server rules

This provides a group of tools for construction and running of rules and automated decisions. Various components give access for different types of users, allowing the design, authoring, review, testing and running of business rules. This includes the Rules Designer, an Eclipse-based application for developing applications in Decision Server Rules.

Decision server events

This provides an integrated set of components for running events. Various components give access for different types of users, allowing the design, development, testing, deployment and maintenance of business events. This includes the Events Designer, an Eclipse-based application for developing applications in Decision Server Events.

Connection between parts

Rules can be defined in the Decision Center and can also be updated there, using a variety of interfaces, including the Enterprise Console, Business Console. Rules are then stored in a Repository which manages the Decision Artifacts, access and control and versioning. From here the rules are deployed to the Decision Server, which executes these rules, and provides monitoring and measuring facilities. Rules can also be deployed direct to the Decision Server using the Rule Designer or Event Designer.

Requirements

Decision Server Rules can run on distributed systems:
On WebSphere Application Server
WebSphere Application Server ND
On WebSphere Application Server Express
On Tomcat
On JBoss application server
On JBoss Enterprise Application Platform
On WebLogic Server
As a shared or scoped Java EE application

Decision Server Rules can run on the z/OS mainframe:
Standalone (as Rule Execution Server for z/OS)
On WebSphere Application Server for z/OS
On WebSphere Application Server ND for z/OS

Decision Server Events and Decision Center can run on
WebSphere Application Server for z/OS
WebSphere Application Server ND for z/OS

Rules Designer is run in Eclipse, or an Eclipse-based product

Supported platforms

Hardware and software requirements

Version history

Prior to its release at V7.5, the parts of ODM were available as separate products:

VersionGeneral AvailabilityComments
11996First version of JRules
3.5May 2001Re-architected to be based on XML. [1]
4.0March 2002
4.5late 2002Introduced decision tables, rule flow editor.
5.02005
5.1June 2005 [2]
6.0early 2006Introduced Rule Studio (Eclipse-based editor and flat files) and Rule Team Server (web app and repository), which replace Rule Builder (custom app and repository).
6.1late 2006
6.5January 2007Introduced Transparent Decision Services, semantic queries. [3]
6.6July 2007 [4]
6.7February 2008 [5]
7.0July 2009Introduced Decision Validation Services (DVS), which replaces Rule Scenario Manager (RSM). [6]
7.1June 2010 [7]
7.5December 2011The first release of ODM as a combined package, released for distributed and z/OS systems.
8.0June 2012This version introduced the Business Console, providing an interface to the product more closely mirroring the social media style.
8.0.1December 2012Included Byte code generation for Java, a REST API for Rules Execution Server, and a new high performance engine for z/OS. [8]
8.5June 2013New Decision Governance Framework; Further integration options. [9]
8.6June 2014Improvements to the Business Console. [10]
8.7December 2014Improved Business Console, restructured product packaging. [11]
8.8November 2015Improved Business Console, improved cross version compatibility. [12]
8.9.0March 2017Improved Business Console, improved DevOps automation, and improved integration with API management products. [13]
8.9.1November 2017Enhanced Business Console. More detailed error messages at compilation and execution. Docker support. [14]
8.9.2March 2018Support for IBM Cloud Private. Simplified product structure, including ODM for developers that is available at no charge for development and evaluation purposes. [15]
8.10.0December 2018New decision modeling capability in Decision Center. Rule Designer based on Eclipse 4.7.3. Trial version for developers. [16]
8.10.1March 2019Various enhancements in Decision Center. [17]
8.10.2June 2019Various enhancements in Decision Center. Can test from Rule Designer. [18]
8.10.3December 2019Support for OpenId Connect authentication. Improved performance in Decision Center. [19]
8.10.4June 2020Improved incremental migration. Decision Center: Session timeout settings, Creating branches from snapshots. Improvements on Certified Kubernetes. [20]
8.10.5December 2020Decision Center configuration improvements and REST API. RES configure maxRunningTime and supports OPEN API. Improvements on Certified Kubernetes. [21]
8.11.0June 2022Release note [22]

Websites claiming or suggesting that ODM is a notable piece of software

Technology Blog
James Taylor on Everything Decision Management

Related Research Articles

<span class="mw-page-title-main">IBM AIX</span> Series of Unix operating systems from IBM

AIX is a series of proprietary Unix operating systems developed and sold by IBM since 1986. The name stands for "Advanced Interactive eXecutive". Current versions are designed to work with Power ISA based server and workstation computers such as IBM's Power line.

<span class="mw-page-title-main">MVS</span> Operating system for IBM mainframes

Multiple Virtual Storage, more commonly called MVS, is the most commonly used operating system on the System/370, System/390 and IBM Z IBM mainframe computers. IBM developed MVS, along with OS/VS1 and SVS, as a successor to OS/360. It is unrelated to IBM's other mainframe operating system lines, e.g., VSE, VM, TPF.

z/OS 64-bit operating system for IBM mainframes

z/OS is a 64-bit operating system for IBM z/Architecture mainframes, introduced by IBM in October 2000. It derives from and is the successor to OS/390, which in turn was preceded by a string of MVS versions. Like OS/390, z/OS combines a number of formerly separate, related products, some of which are still optional. z/OS has the attributes of modern operating systems but also retains much of the older functionality that originated in the 1960s and is still in regular use—z/OS is designed for backward compatibility.

<span class="mw-page-title-main">HCL Notes</span> Collaborative software platform

HCL Notes is a proprietary collaborative software platform for Unix (AIX), IBM i, Windows, Linux, and macOS, sold by HCLTech. The client application is called Notes while the server component is branded HCL Domino.

<span class="mw-page-title-main">IBM Db2</span> Relational model database server

Db2 is a family of data management products, including database servers, developed by IBM. It initially supported the relational model, but was extended to support object–relational features and non-relational structures like JSON and XML. The brand name was originally styled as DB2 until 2017, when it changed to its present form. In the early days, it was sometimes wrongly styled as DB/2 in a false derivation from the operating system OS/2.

<span class="mw-page-title-main">CICS</span> IBM mainframe transaction monitor

IBM CICS is a family of mixed-language application servers that provide online transaction management and connectivity for applications on IBM mainframe systems under z/OS and z/VSE.

HCL Sametime Premium is a client–server application and middleware platform that provides real-time, unified communications and collaboration for enterprises. Those capabilities include presence information, enterprise instant messaging, web conferencing, community collaboration, and telephony capabilities and integration. Currently it is developed and sold by HCL Software, a division of Indian company HCL Technologies, until 2019 by the Lotus Software division of IBM.

IBM MQ is a family of message-oriented middleware products that IBM launched in December 1993. It was originally called MQSeries, and was renamed WebSphere MQ in 2002 to join the suite of WebSphere products. In April 2014, it was renamed IBM MQ. The products that are included in the MQ family are IBM MQ, IBM MQ Advanced, IBM MQ Appliance, IBM MQ for z/OS, and IBM MQ on IBM Cloud. IBM MQ also has containerised deployment options.

EGL, originally developed by IBM and now available as the EDT open source project under the Eclipse Public License (EPL), is a programming technology designed to meet the challenges of modern, multi-platform application development by providing a common language and programming model across languages, frameworks, and runtime platforms.

The IBM System z Application Assist Processor (zAAP), previously known as the zSeries Application Assist Processor, is a mainframe processor introduced by IBM in 2004. zAAP engines are dedicated to running specific Java and XML workloads under z/OS, accelerating performance. zAAPs are available for zSeries 990 and 890 servers and later zSeries and zEnterprise models. Beginning with the IBM z13, the zAAP functionality is integrated with zIIP processors.

WebSphere Application Server (WAS) is a software product that performs the role of a web application server. More specifically, it is a software framework and middleware that hosts Java-based web applications. It is the flagship product within IBM's WebSphere software suite. It was initially created by Donald F. Ferguson, who later became CTO of Software for Dell. The first version was launched in 1998. This project was an offshoot from IBM HTTP Server team starting with the Domino Go web server.

In computing, a Parallel Sysplex is a cluster of IBM mainframes acting together as a single system image with z/OS. Used for disaster recovery, Parallel Sysplex combines data sharing and parallel computing to allow a cluster of up to 32 systems to share a workload for high performance and high availability.

<span class="mw-page-title-main">IBM System z9</span> Line of mainframe computers

IBM System z9 is a line of IBM mainframe computers. The first models were available on September 16, 2005. The System z9 also marks the end of the previously used eServer zSeries naming convention. It was also the last mainframe computer that NASA ever used.

WebSphere Application Server Community Edition (WASCE) was a free-of-charge, certified Java EE 6 application server for building and managing Java applications. Until September 30, 2016, it was IBM's supported distribution of Apache Geronimo that usee Tomcat for servlet container and Axis 2 for web services. Another difference from Apache Geronimo is that WASCE came with Db2 and Informix database drivers, better XML parser libraries and contained the latest patches from unreleased upstream versions. Over 30 WASCE developers were committers in the Apache Geronimo project.

IBM App Connect Enterprise (abbreviated as IBM ACE, formerly known as IBM Integration Bus, WebSphere Message Broker, WebSphere Business Integration Message Broker, WebSphere MQSeries Integrator and started life as MQSeries Systems Integrator. App Connect IBM's integration software offering, allowing business information to flow between disparate applications across multiple hardware and software platforms. Rules can be applied to the data flowing through user-authored integrations to route and transform the information. The product can be used as an Enterprise Service Bus supplying a communication channel between applications and services in a service-oriented architecture. App Connect from V11 supports container native deployments with highly optimised container start-up times.

<span class="mw-page-title-main">IBM TXSeries</span>

IBM TXSeries for Multiplatforms is a distributed CICS online transaction processing (OLTP) environment for mixed language applications.

IBM Lotus Expeditor is a software framework by IBM's Lotus Software division for the construction, integration, and deployment of "managed client applications", which are client applications that are deployed from, configured, and managed onto a desktop, usually by a remote server. The goal is to allow developers to create applications that take advantage of running on a local client, while having the same ease of maintenance as web-based applications.

<span class="mw-page-title-main">ILOG</span> Software company that makes products including JRules

ILOG S.A. was an international software company purchased and incorporated into IBM announced in January, 2009. It created enterprise software products for supply chain, business rule management, visualization and optimization. The main product line for Business Rules Management Systems (BRMS) has been rebranded as IBM Operational Decision Management. Many of the related components retain the ILOG brand as a part of their name.

HCL Commerce Cloud is a proven e-commerce solution designed to support extremely high transaction and site traffic volumes on a single deployed instance and supports all business models including B2C, B2B, B2B2C, D2C and MarketPlaces. HCL Commerce Cloud is built on the Java - Java EE platform using open standards, such as XML, and Web services. Formerly a product of IBM, the product was sold to HCL Technologies in July 2019.

HCL Digital Experience is an enterprise software used to build and manage web portals. It provides access to web content and applications, while delivering personalized experiences for users.

References

IBM Websphere Business Events
IBM WebSphere
WebSphere Application Server
WebSphere Application Server for z/OS