BRMS
Encyclopedia
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.
The top benefits of a BRMS include:
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.
|
, 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.
for rule engines JSR-94
.
Other standards (under development) include:
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.
RuleML
provides a (mostly academic) family of mark-up languages that could be used in a BRMS, but are usually used for research purposes.
Computer software
Computer software, or just software, is a collection of computer programs and related data that provide the instructions for telling a computer what to do and how to do it....
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
Business rule
A Business rule is a statement that defines or constrains some aspect of the business and always resolves to either true or false. Business rules are intended to assert business structure or to control or influence the behavior of the business. Business rules describe the operations, definitions...
, 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:- 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 engineBusiness rules engineA business rules engine is a software system that executes one or more business rules in a runtime production environment. The rules might come from legal regulation , company policy , or other sources...
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
Most BRMS vendors have evolved from rule engine
Business rules engine
A business rules engine is a software system that executes one or more business rules in a runtime production environment. The rules might come from legal regulation , company policy , or other sources...
vendors to provide business-usable software development lifecycle
Software development process
A software development process, also known as a software development life cycle , is a structure imposed on the development of a software product. Similar terms include software life cycle and software process. It is often considered a subset of systems development life cycle...
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
Service-oriented architecture
In software engineering, a Service-Oriented Architecture is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functionalities that are built as software components that can be reused for...
, Web Services
Web service
A Web service is a method of communication between two electronic devices over the web.The W3C defines a "Web service" as "a software system designed to support interoperable machine-to-machine interaction over a network". It has an interface described in a machine-processable format...
, 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 engineeringModel-driven engineering
Model-driven engineering is a software development methodology which focuses on creating and exploiting domain models , rather than on the computing concepts...
, such as the Model Driven Architecture (MDA) of the Object Management Group
Object Management Group
Object Management Group is a consortium, originally aimed at setting standards for distributed object-oriented systems, and is now focused on modeling and model-based standards.- Overview :...
(OMG). It is no coincidence that many of the related standards come under the OMG banner.
Associated standards
There is no current implementation standard for business rules defined within a BRMS, although there is a standard for a Java Runtime APIApplication programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...
for rule engines JSR-94
JSR-94
JSR-94 is the Java Specification Request for a Java Rules Engine API. The specification for the Java Rule Engine API , developed through the Java Community Process program, defines a Java runtime API for rule engines by providing a simple API to access a rule engine from a Java Platform, Standard...
.
Other standards (under development) include:
- OMG Business Motivation ModelBusiness Motivation ModelThe Business Motivation Model in enterprise architecture provides a scheme and structure for developing, communicating, and managing business plans in an organized manner...
(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 RepresentationProduction Rule RepresentationThe Production Rule Representation is a proposed standard of the Object Management Group to provide a vendor-neutral rule-model representation in UML for production rules as used in forward-chaining rule engines.- History :...
(PRR): Represents rules for production rule systemProduction systemA production system is a computer program typically used to provide some form of artificial intelligence, which consists primarily of a set of rules about behavior. These rules, termed productions, are a basic representation found useful in automated planning, expert systems and action selection...
s that make up most BRMS' execution targets - W3C RIFRule Interchange FormatThe Rule Interchange Format is a W3C Recommendation. RIF is part of the infrastructure for the semantic web, along with SPARQL, RDF and OWL...
: A family of related rule languages for rule interchange
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.
RuleML
RuleML
The Rule Markup Language is a markup language developed to express both forward and backward rules in XML for deduction, rewriting, and further inferential-transformational tasks...
provides a (mostly academic) family of mark-up languages that could be used in a BRMS, but are usually used for research purposes.
Products and vendors
- Microgen Aptitude
- JBoss Enterprise BRMS (open source)
- OpenL Tablets BRMS (open source)
- Be Informed BRMS, BRE and BPMBusiness process managementBusiness process management is a holistic management approach focused on aligning all aspects of an organization with the wants and needs of clients. It promotes business effectiveness and efficiency while striving for innovation, flexibility, and integration with technology. BPM attempts to...
- WebSphereWebSphereIBM WebSphere refers to a brand of computer software products in the genre of enterprise software known as "application and integration middleware". These software products are used by end-users to create applications and integrate applications with other applications...
ILOGILOGILOG is an international software company owned by IBM. It creates enterprise software products for supply chain, business rule management, visualization and optimization....
BRMS: IBM WebSphere ILOG JRules - Bosch Software Innovations
- FICOFicoFico may refer to:* Fair Isaac Corporation , an American company* FICO score, a credit score developed by Fair Isaac Corporation * Hurricane Fico, a hurricane in the 1978 Pacific hurricane season...
- InRule Technology
- OpenRules
- PegasystemsPegasystemsPegasystems Inc. is a provider of Business Process Management software solutions and a Business rules Platform based in Cambridge, Massachusetts.-History:Pegasystems was founded in 1983 by Alan Trefler...
- Sparkling Logic SMARTS(tm) next generation collaborative decision management system and BRMS
- Sapiens International CorporationSapiens International CorporationSapiens International Corporation is a publicly traded company, headquartered in Israel, that develops computer software solutions for the insurance industry...
eMerge Platform
See also
- BPMS
- DBMS
- RDMS
- Business rules
- Business rules approachBusiness rules approachBusiness rules are abstractions of the policies and practices of a business organization. The Business Rules Approach is a development methodology where rules are in a form that is used by, but does not have to be embedded in, business process management systems.The Business Rules Approach...
- Business rules engineBusiness rules engineA business rules engine is a software system that executes one or more business rules in a runtime production environment. The rules might come from legal regulation , company policy , or other sources...