Business rule management system (BRMS)

A BRMS or business rule management system is a software system used to define, deploy, execute, monitor and maintain the variety and complexity of decision logic that is used by operational systems within an organization or enterprise. This logic, also referred to as business rules, includes policies, requirements, and conditional statements that are used to determine the tactical actions that take place in applications and systems.

Overview

A BRMS includes, at minimum: This needs to be attributed:

  • A repository, allowing decision logic to be externalized from core application code
  • Tools, allowing both technical developers and business experts to define and manage decision logic
  • A runtime environment, allowing applications to invoke decision logic managed within the BRMS and execute it using a business rules engine

The top benefits of a BRMS include:

  • Reduced or removed reliance on IT departments for changes in live systems. Although, QA and Rules testing would still be needed in any enterprise system.
  • Increased control over implemented decision logic for compliance and better business management
  • The ability to express decision logic with increased precision, using a business vocabulary syntax and graphical rule representations (decision tables, trees, scorecards and flows)
  • Improved efficiency of processes through increased decision automation.

Some disadvantages of the BRMS include:<ref>Template:Cite web</ref>

  • Extensive subject matter expertise required for vendor specific products. In addition to Object Oriented Analysis and Design practices, technical developers must know how to write rules and integrate software with existing systems
  • Long development cycle due to rule harvesting, integration with existing systems, security constraints, rule migration and rule edit tracking. These offerings are never part of an out of the box vendor solution.
  • Reduced IT department reliance may never be a reality due to continued introduction to new business rule considerations or object model perturbations
  • The coupling of a BRMS vendor application to the business application may be too tight to replace with another BRMS vendor application. This can lead to cost to benefits issues.

Most BRMS vendors have evolved from rule engine vendors to provide business-usable software development lifecycle solutions, based on declarative definitions of business rules executed in their own rule engine.

However, some vendors come from a different approach (for example, they map decision trees or graphs to executable code). Rules in the repository are generally mapped to decision services that are naturally fully compliant with the latest SOA, Web Services, or other software architecture trends.


Related software approaches

In a BRMS, a representation of business rules maps to a software system for execution. A BRMS therefore relates to model-driven engineering, such as the model-driven architecture (MDA) of the Object Management Group (OMG). It is no coincidence that many of the related standards come under the OMG banner.

A BRMS is a critical component for Enterprise Decision Management as it allows for the transparent and agile management of the decision-making logic required in systems developed using this approach.


Associated standards

The OMG Decision Model and Notation standard is designed to standardize elements of business rules development, specially decision table representations. There is also a standard for a Java Runtime API for rule engines JSR-94.

Other standards include:

  • OMG Business Motivation Model (BMM): A model of how strategies, processes, rules, etc. fit together for business modeling
  • OMG SBVR: Targets business constraints as opposed to automating business behavior
  • OMG Production Rule Representation (PRR): Represents rules for production rule systems that make up most BRMS' execution targets
  • OMG Decision Model and Notation (DMN): Represents models of decisions, which are typically managed by a BRMS
  • RuleML provides a family of rule mark-up languages that could be used in a BRMS and with W3C RIF it provides a family of related rule languages for rule interchange in the W3C Semantic Web stack

Many standards, such as domain-specific languages, define their own representation of rules, requiring translations to generic rule engines or their own custom engines.

Other domains, such as PMML, also define rules.

BRMS Tools

Open Source Tools

Open source rule engines and rule management suites tend to be more developer focussed. Once the framework/architecture is built, these open source rule engines serve the purpose. But they lack in the advanced features provided by IBM, FICO, Progress, etc.

DROOLS

  • Red hat’s JBOSS is the commercial distribution of the open-source BRMS tool DROOLS.

OpenRules

  • OpenRules which is more simple and provides users to keep their Business rules in google docs or excel spreadsheets. This will be suitable for small business applications effectively.

JESS 7

  • JESS 7, is another open source rule engine which is suitable for the small scale business applications.


Strongest Standalone Products

The tools categorized in this category have the strong set of features and the well-built components that support more business by minimizing IT maintenance costs.

  • IBM’s BRMS, Operations Decision Manager (ODM) which is previously called as Ilog JRules has a very rich feature set and relatively high price tag. IBM ODM suits more for those who look for analytics and complex event processing.
  • FICO’s BRMS, Blaze Advisor also has the rich set of features with some decent pricing. As per some news, I gathered, some financial firms always favor FICO Blaze Advisor it seems.
  • Progress’s BRMS, Corticon have some well-built components at lower pricing than the ODM and Blaze.
  • The SMARTS Decision Manager and PENCIL Decision Modeler. One of the interesting aspect of these tools is that Charles Forgy, inventor of RETE Algorithm is the main Advisor for SMARTS. Forgy developed a new generation of the RETE Algorithm called RETE-NT, which was claimed that it is 500 times faster than the original RETE Algorithm and 10 times faster than its predecessor RETE II. RETE-NT is the inference engine of the SMARTS product.