I have not seen much on this topic. Folks probably don't think they are getting into each others way. In the traditional OO world, don't we encapsulate the rules within the corresponding object itself, so that it is truly abstracted from the rest of the world. Do rule engines violate that in anyway. May be or may be not. I think may be not. But some thought on that might bring more clarity on how we should use rule engines correctly.