Samiullah Khan
itssamialig.bsky.social
Samiullah Khan
@itssamialig.bsky.social
Transformative Digital Disruptor | Negotiations Champion | BRM SME for XaaS
There are 2 types of plugins in batch pipeline:

Data Plugins represented as DAT_XXX

Functional Plugins represented as FCT_XXX
November 8, 2023 at 3:46 AM
Key BRM acronyms:

CM - Connection Manager
DM - Data Manager
FM - Facility Module
EM - External Manager
UEL - Universal Event Loader
REL - Rated Event Loader
etc.
November 8, 2023 at 3:42 AM
To customise BRM, we customise Policy FMs.

To customise Batch Pipeline, we customise iScripts and/or iRules.

BRM is opcode driven whereas Pipeline is plug-in driven.
November 8, 2023 at 2:41 AM
Testnap script example:

$ vi Khan.nap <enter>

r << Samiullah 1
0 PIN_FLD_POID POID [0] 0.0.0.1 /account 583917402 1
Samiullah
xop PCM_OP_READ_OBJ 0 1
<esc>:wq!

$ ./testnap Khan.nap <enter>

Output

0 PIN_FLD_POID POID [0] 0.0.0.1 /account 583917402 1

.
.
.
November 8, 2023 at 2:10 AM
BRM opcode:

in C policy file is executed through:

PCM_OP (conn, opcode, flag, ifl, ofl, error_buffer)

in testnap, through:

xop PCM_OP_READ_OBJ 0 1

in Developer Center, through:

Opcode Workbench
November 8, 2023 at 1:59 AM
BRM opcodes are of the following types:

Base opcode
Example:
PCM_OP_SEARCH

Standard/System opcode
Example:
PCM_OP_AR_REVERSE_WRITEOFF

Policy opcode
Example:

PCM_OP_AR_POL_REVERSE_WRITEOFF
November 8, 2023 at 1:42 AM
BRM opcode is a C function implemented as a C macro.

PCM_OP_CREATE_OBJ

Output = Create_Obj (Input)

Here

Output = POID = 0.0.01 /account 12345 0

Input = POID = 0.0.0.1 /account -1 0

Create_Obj = PCM_OP_CREATE_OBJ
November 8, 2023 at 1:20 AM
BRM Flist is a field-value pair.

Example:

PIN_FLD_NAME “Samiullah Khan”

Here field name is PIN_FLD_NAME, field type is string and the field value is “Samiullah Khan”.
November 8, 2023 at 1:05 AM
Data flows in BRM in terms of flists only.
November 8, 2023 at 1:00 AM
You name any big CSP/Telco Operator in the world they must be using BRM. Such is the Powerful Reach of BRM.
November 8, 2023 at 12:58 AM
BRM is an opcode driven application.
November 8, 2023 at 12:52 AM
To become expert in BRM, one should master the following:

Data Structures and Algorithms
C, C++, Java, and Python
Unix and Unix Shell Script
Perl Script
HTML and XML
Oracle, SQL, and PL/SQL
Git and GitHub
SVN and CVS
Application Server and Web Server
SOAP/REST
DevOps
MS Office
MS Visio
November 8, 2023 at 12:22 AM
The heart of BRM was written in C which got modified into C++ and Java and recently into Python. However, C is still there.
November 8, 2023 at 12:12 AM
BRM supports:

Oracle DB
IBM DB2
Microsoft SQL Server
November 8, 2023 at 12:09 AM
BRM is supported on:

Windows
Unix
Linux
Solaris
AIX
November 8, 2023 at 12:06 AM
BRM supports seamless integration with both Upstream and Downstream systems through:

1. Custom DM
2. Web Service (REST API)
3. Custom EM
November 8, 2023 at 12:02 AM
BRM CN 12 Architecture
November 7, 2023 at 11:55 PM
Competitors to Oracle’s BRM are:

1. Amdocs
2. CSG
3. Convergys
4. Chargebee
5. Netcracker
6. Huawei
7. Recvue
8. Tecnotree
9. Cerillion
10. Onebill
11. Optiva etc.
November 7, 2023 at 11:53 PM
BRM System Architecture
November 7, 2023 at 11:47 PM
Oracle’s other applications that support and complement BRM are as under:

CRM
AIA
OSM
ASAP
UIM
November 7, 2023 at 11:45 PM
BRM CN 12.0 has:

rre
PDC
ECE
OCOMC
BCUI
BOC
November 7, 2023 at 11:42 PM
BRM 7.5 has:

Pricing Design Center (PDC)
Elastic Charging Engine (ECE)
Billing Care UI (BCUI)
Business Operations Center (BOC)
rre
rtp
bre
November 7, 2023 at 11:40 PM
Some of the prominent versions of BRM are:

BRM 7.3.1, BRM 7.4, BRM 7.5, and BRM CN 12.0
November 7, 2023 at 11:36 PM
BRM has undergone major change since its origin.

The latest/current version of BRM is 12. It’s also called as Cloud Native BRM 12 i.e. BRM CN 12.0
November 7, 2023 at 11:20 PM
BRM is divided into 3 parts:

1. Real-time rating engine (rre/brm)
2. Real-time discounting pipeline (rtp)
3. Batch/Pipeline rating engine (bre/pre) or batch pipeline
November 7, 2023 at 11:17 PM