Although most systems today have some form of business rules implemented within them, they are typically implemented in code by developers and therefore require development resources and testing whenever changes are necessary. In contrast, BizTalk Server 2004 introduced the Business Rules Engine (BRE) as a core and stand-alone piece of the BizTalk architecture.
The BRE enables you to abstract these business rules from your solution and allow the owners of such business rules to control them. This abstraction is analogous to BizTalk orchestration, in which we abstract the process flow away from the code and into a business process.
In general, rules engines are highly efficient and can process many hundreds or even thousands of rules in a matter of milliseconds, making them highly desirable for BizTalk-style solutions, which typically process many messages a second.
The mechanics that underpin the BRE are incredibly complex and come across as being pretty inaccessible to almost everyone! So that you don't avoid BRE completely, perhaps to the detriment of a solution, this chapter explains the fundamentals in a clear and concise way. The goal of this chapter is to demystify BRE's complexity and empower you to use the BRE within your solution without resorting to additional (and often inaccessible) reference material.