Search code examples
business-intelligence

How exactly is the separation of business logic handling code from normal, operation handling code, called?


I know this is not perhaps the best place to ask this, but here it goes: what is the (formal?) name given to the separation of business-logic handling code, and the rest of the code in an application?

Note that here I am not talking about using polymorphism or design patterns that aim to reduce conditional complexity. I am talking about, for example, using a rules engine (such as Drools) to handle business code, in a way that users can alter the behavior of the application without incurring in a redeployment of the entire code.

I want to do some research on the topic, and would like to start by "properly" calling it by its "academic" definition, if any exists.

Googling throws terms such as "autonomic computing" or "policy-driven systems", but I'd like to check this out with you guys.


Solution

  • Drools is a Business Rule Management System AKA Rule Engine, similar to JESS.