A business rules engine (BRE) is a software component that allows non-programmers to add or change business logic in a business process management (BPM) system. A business rule is a statement that describes a business policy or procedure. Business logic describes the sequence of operations that is associated with data in a database to carry out the rule.
A business rules engine works by separating execution code for business rules from the rest of the business process management system. This allows the end user to change business rules without having to ask a programmer for help. When a change is made, the engine will evaluate the change's effect on other rules in the system and flag the user if there is a conflict.
According to authors Alex Berson and Larry Dubov, a complete business rules engine will include the following:
- Business Rule Repository - A database for storing the business rules as defined by the business users.
- Business Rule Editor - An intuitive user interface that allows business users to define, design, document and edit business rules.
- Reporting Component - An intuitive user interface that allows business users to query and report existing rules.
- Rules Engine Execution Core - The actual programming code that enforces the rules.
"Master Data Management and Customer Data Integration for a Global Enterprise," by Alex Berson and Larry Dubov, has a chapter called Overview of Business Rules Engines.