Information Technology Reference
In-Depth Information
This rule is very simple, but in an environment where many rules exist, each rule distin-
guishes a very specific decision of the business logic. Together, very complex decisions
can be made using highly decoupled rules. The rule engine will be in charge of matching
all of these rules against the current state of the world in the most efficient way possible.
Rule engines were specially designed to evaluate a huge number of rules at the same time
without any impact on performance.
BPM systems have an intimate relationship with business rule engines to determine de-
cisions at specific points of process executions and to govern process executions them-
selves. In the following section, we'll see different ways in which BPM systems and rule
engines integrate.
Classic BPM system and rule engine integration
BPM systems rely on rule engines to take complex decisions based on business logic ex-
pressed in a declarative way. For most BPM systems, this rule engine execution was
handled through external calls to the rule engine that resided outside the BPM systems
(sometimes in a completely different server). Doing it like that involved a lot of work.
BPM systems had to gather information to send to the rule engine and prepare it for trans-
mission.
Then, when the rule engines were executed, the results would have to be retransmitted to
the BPM system as well. This could become more complicated if you also wanted to in-
voke your BPM system from inside your business rules. This is because in that case, you
would also have to implement external calls to the BPM system from inside the rule en-
gine. The more the communication between components, the higher the risk of commu-
nication problems between runtimes.
Due to this communication overload, just a small percentage of the rule engine's capabilit-
ies were usually used. Most interactions were intended to be stateless to facilitate testing,
and therefore only small, well-scoped problems were solved at a time by the rule engine.
Search WWH ::




Custom Search