Business Rules Engine as the / in the BV Layer?

Hey all,

Without wanting to get smacked down for over engineering a solution, and also understanding this isn’t strictly a DV2.0 question, I wanted to ask whether anyone out there in the community has implemented a home brew or off the shelf Business Rules Engine into their Business Vault layer? For example, something like this: GitHub - gorules/zen: Open-source Business Rules Engine for your Rust, NodeJS or Python applications.

Where the business has a series of complex rules - such as the customer hasn’t visited the site in n days, but then comes back and within x hours completes steps a, b, c then classify as 1, else … - and they may want to adjust these over time, it seems to make sense to pull the logic out of the code and keep it in yaml/toml/json, parsing it and using it as needed.

This is something that would happen after the raw vault layer, in the business vault layer, before the pit/bridge tables (I think). But is it done in practice?

Hi Andy,
Exactly, I have done this in practice a few times. I presented at 2017 WWDVC about a custom rules engine we built at a customer site. Our situation did not allow us to:
#1 spend software $$ on it, and
#2 use open source

Customers can be illogical at times :grinning:. Anyway, dm me if you want a copy of the presentation, i think DVA still has the video (for sale). When I was researching options, my choice at the time for open source would have been drools ( as it used Excel for rule expression and had a java based engine. We could not introduce java software into this organization, however. Just looking today at there site, it has progressed significantly which in my mind is a good thing. There are more options now though, so DYOR.

Hope that helps.

1 Like

That’s great, thank you for the feedback. Good to know there are organisations out there doing this sort of thing. I tend to have a habit of second guessing myself. I think of something that seems reasonable, but then think ‘so why aren’t people doing it? What am I missing?’.